diff --git a/src/main/java/me/cortex/voxy/client/core/VoxelCore.java b/src/main/java/me/cortex/voxy/client/core/VoxelCore.java index 9084370c..347eb54c 100644 --- a/src/main/java/me/cortex/voxy/client/core/VoxelCore.java +++ b/src/main/java/me/cortex/voxy/client/core/VoxelCore.java @@ -268,9 +268,9 @@ public class VoxelCore { private IRenderInterface createRenderBackend() { - if (true) { + if (false) { return new Gl46HierarchicalRenderer(this.modelManager); - } else if (true) { + } else if (false) { return new Gl46MeshletsFarWorldRenderer(this.modelManager, VoxyConfig.CONFIG.geometryBufferSize, VoxyConfig.CONFIG.maxSections); } else { if (VoxyConfig.CONFIG.useMeshShaders()) { diff --git a/src/main/resources/assets/voxy/shaders/lod/hierarchical/screenspace.glsl b/src/main/resources/assets/voxy/shaders/lod/hierarchical/screenspace.glsl index 674dc8a6..767088aa 100644 --- a/src/main/resources/assets/voxy/shaders/lod/hierarchical/screenspace.glsl +++ b/src/main/resources/assets/voxy/shaders/lod/hierarchical/screenspace.glsl @@ -54,6 +54,11 @@ void setupScreenspace(in UnpackedNode node) { minBB = min(minBB, point); maxBB = max(maxBB, point); } + + //TODO: MORE ACCURATLY DETERMIN SCREENSPACE AREA, this can be done by computing and adding + // the projected surface area of each face which winding order faces the camera + // (this is just the dot product of 2 projected vectors afaik) + //printf("Screenspace MIN: %f, %f, %f MAX: %f, %f, %f", minBB.x,minBB.y,minBB.z, maxBB.x,maxBB.y,maxBB.z); size = maxBB.xy - minBB.xy;