From f98ee30491ff00d24b79e3aca30f00d2663a8f2e Mon Sep 17 00:00:00 2001 From: mcrcortex <18544518+MCRcortex@users.noreply.github.com> Date: Sun, 13 Apr 2025 09:40:00 +1000 Subject: [PATCH] thingires --- .../hierachical/HierarchicalOcclusionTraverser.java | 2 +- .../client/core/rendering/hierachical/NodeCleaner.java | 5 +---- .../client/core/rendering/post/PostProcessing.java | 10 +++++----- 3 files changed, 7 insertions(+), 10 deletions(-) diff --git a/src/main/java/me/cortex/voxy/client/core/rendering/hierachical/HierarchicalOcclusionTraverser.java b/src/main/java/me/cortex/voxy/client/core/rendering/hierachical/HierarchicalOcclusionTraverser.java index a3133378..0c5743cb 100644 --- a/src/main/java/me/cortex/voxy/client/core/rendering/hierachical/HierarchicalOcclusionTraverser.java +++ b/src/main/java/me/cortex/voxy/client/core/rendering/hierachical/HierarchicalOcclusionTraverser.java @@ -96,7 +96,7 @@ public class HierarchicalOcclusionTraverser { this.nodeCleaner = nodeCleaner; this.nodeManager = nodeManager; this.requestBuffer = new GlBuffer(REQUEST_QUEUE_SIZE*8L+8).zero(); - this.nodeBuffer = new GlBuffer(nodeManager.maxNodeCount*16L).zero(); + this.nodeBuffer = new GlBuffer(nodeManager.maxNodeCount*16L).fill(-1); glSamplerParameteri(this.hizSampler, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_NEAREST); diff --git a/src/main/java/me/cortex/voxy/client/core/rendering/hierachical/NodeCleaner.java b/src/main/java/me/cortex/voxy/client/core/rendering/hierachical/NodeCleaner.java index 8303e56b..a90bc6f5 100644 --- a/src/main/java/me/cortex/voxy/client/core/rendering/hierachical/NodeCleaner.java +++ b/src/main/java/me/cortex/voxy/client/core/rendering/hierachical/NodeCleaner.java @@ -129,11 +129,9 @@ public class NodeCleaner { glMemoryBarrier(GL_SHADER_STORAGE_BARRIER_BIT); this.outputBuffer.fill(this.nodeManager.maxNodeCount - 2);//TODO: maybe dont set to zero?? - this.sorter.bind(); glBindBufferBase(GL_SHADER_STORAGE_BUFFER, 3, nodeDataBuffer.id); - //TODO: choose whether this is in nodeSpace or section/geometryId space // glDispatchCompute((this.nodeManager.getCurrentMaxNodeId() + (SORTING_WORKER_SIZE+WORK_PER_THREAD) - 1) / (SORTING_WORKER_SIZE+WORK_PER_THREAD), 1, 1); @@ -147,10 +145,9 @@ public class NodeCleaner { glUniform1ui(0, this.visibilityId); glDispatchCompute(1, 1, 1); - //glFinish(); + glMemoryBarrier(GL_SHADER_STORAGE_BARRIER_BIT); DownloadStream.INSTANCE.download(this.outputBuffer, 4 * OUTPUT_COUNT, 8 * OUTPUT_COUNT, this::onDownload); - //glFinish(); } } } diff --git a/src/main/java/me/cortex/voxy/client/core/rendering/post/PostProcessing.java b/src/main/java/me/cortex/voxy/client/core/rendering/post/PostProcessing.java index 0dcd894b..2872fdaa 100644 --- a/src/main/java/me/cortex/voxy/client/core/rendering/post/PostProcessing.java +++ b/src/main/java/me/cortex/voxy/client/core/rendering/post/PostProcessing.java @@ -180,11 +180,11 @@ public class PostProcessing { glUniformMatrix4fv(3, false, data);//tooProjection - glActiveTexture(GL_TEXTURE1); - GL11C.glBindTexture(GL_TEXTURE_2D, this.depthStencil.id); - glTexParameteri (GL_TEXTURE_2D, GL_DEPTH_STENCIL_TEXTURE_MODE, GL_DEPTH_COMPONENT); - glActiveTexture(GL_TEXTURE0); - glBindTexture(GL_TEXTURE_2D, this.didSSAO?this.colourSSAO.id:this.colour.id); + glBindTextureUnit(0, this.didSSAO?this.colourSSAO.id:this.colour.id); + + glBindTextureUnit(1, this.depthStencil.id); + //glTextureParameteri(this.depthStencil.id, GL_DEPTH_STENCIL_TEXTURE_MODE, GL_DEPTH_COMPONENT); + glEnable(GL_DEPTH_TEST); glDepthMask(true); this.blitTexture.blit();