From 6bb832a48833f9fbbb90cb9765b223a9f15159da Mon Sep 17 00:00:00 2001 From: James Seibel Date: Fri, 12 Jul 2024 17:27:17 -0500 Subject: [PATCH] Add renderEventParam to generic rendering shader binding by IMS request --- .../override/rendering/IDhApiGenericObjectShaderProgram.java | 2 +- .../seibel/distanthorizons/core/api/internal/SharedApi.java | 3 ++- .../core/render/renderer/generic/GenericObjectRenderer.java | 2 +- .../render/renderer/generic/GenericObjectShaderProgram.java | 2 +- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/api/src/main/java/com/seibel/distanthorizons/api/interfaces/override/rendering/IDhApiGenericObjectShaderProgram.java b/api/src/main/java/com/seibel/distanthorizons/api/interfaces/override/rendering/IDhApiGenericObjectShaderProgram.java index b521345da..ce1d6fcde 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/interfaces/override/rendering/IDhApiGenericObjectShaderProgram.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/interfaces/override/rendering/IDhApiGenericObjectShaderProgram.java @@ -52,7 +52,7 @@ public interface IDhApiGenericObjectShaderProgram extends IDhApiOverrideable void free(); /** Runs any necessary binding this program needs so rendering can be done. */ - void bind(); + void bind(DhApiRenderParam renderEventParam); /** Runs any necessary unbinding this program needs so rendering can be done by another program. */ void unbind(); diff --git a/core/src/main/java/com/seibel/distanthorizons/core/api/internal/SharedApi.java b/core/src/main/java/com/seibel/distanthorizons/core/api/internal/SharedApi.java index 7e0f58aa8..f66c37501 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/api/internal/SharedApi.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/api/internal/SharedApi.java @@ -133,7 +133,8 @@ public class SharedApi * Used to prevent getting a full chunk from MC if it isn't necessary.
* This is important since asking MC for a chunk is slow and may block the render thread. */ - public static boolean isChunkAtBlockPosAlreadyUpdating(int blockPosX, int blockPosZ) { return UPDATING_CHUNK_POS_SET.contains(new DhChunkPos(new DhBlockPos2D(blockPosX, blockPosZ))); } + public static boolean isChunkAtBlockPosAlreadyUpdating(int blockPosX, int blockPosZ) + { return UPDATING_CHUNK_POS_SET.contains(new DhChunkPos(new DhBlockPos2D(blockPosX, blockPosZ))); } /** handles both block place and break events */ diff --git a/core/src/main/java/com/seibel/distanthorizons/core/render/renderer/generic/GenericObjectRenderer.java b/core/src/main/java/com/seibel/distanthorizons/core/render/renderer/generic/GenericObjectRenderer.java index 201eab388..b3768548d 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/render/renderer/generic/GenericObjectRenderer.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/render/renderer/generic/GenericObjectRenderer.java @@ -383,7 +383,7 @@ public class GenericObjectRenderer implements IDhApiCustomRenderRegister shaderProgram = shaderProgramOverride; } - shaderProgram.bind(); + shaderProgram.bind(renderEventParam); shaderProgram.bindVertexBuffer(this.boxVertexBuffer.getId()); this.boxIndexBuffer.bind(); diff --git a/core/src/main/java/com/seibel/distanthorizons/core/render/renderer/generic/GenericObjectShaderProgram.java b/core/src/main/java/com/seibel/distanthorizons/core/render/renderer/generic/GenericObjectShaderProgram.java index d51b2a647..d021d04e0 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/render/renderer/generic/GenericObjectShaderProgram.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/render/renderer/generic/GenericObjectShaderProgram.java @@ -92,7 +92,7 @@ public class GenericObjectShaderProgram extends ShaderProgram implements IDhApiG //=========// @Override - public void bind() + public void bind(DhApiRenderParam renderEventParam) { super.bind(); this.va.bind();