From 8c7937f9a237d282140a2a2fcd13adfe26b3cff6 Mon Sep 17 00:00:00 2001 From: NULL511 Date: Fri, 1 Sep 2023 18:25:37 -0400 Subject: [PATCH] cleanup --- .../render/renderer/shaders/SSAORenderer.java | 16 +++++++++------- core/src/main/resources/shaders/ssao/ao.frag | 2 +- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/core/src/main/java/com/seibel/distanthorizons/core/render/renderer/shaders/SSAORenderer.java b/core/src/main/java/com/seibel/distanthorizons/core/render/renderer/shaders/SSAORenderer.java index 935112376..9d49ee098 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/render/renderer/shaders/SSAORenderer.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/render/renderer/shaders/SSAORenderer.java @@ -105,13 +105,13 @@ public class SSAORenderer private static float[] genKernel() { float[] kernel = new float[MAX_KERNEL_SIZE * 3]; + for (int i = 0; i < MAX_KERNEL_SIZE; i++) { - float sampleX = (float) (Math.random() * 2.0 - 1.0); - float sampleY = (float) (Math.random() * 2.0 - 1.0); - float sampleZ = (float) Math.random(); - - + float sampleX = (float)Math.random() * 2f - 1f; + float sampleY = (float)Math.random() * 2f - 1f; + float sampleZ = (float)Math.random() * 2f - 1f; + // Normalize float magnitude = (float) Math.sqrt(Math.pow(sampleX, 2) + Math.pow(sampleY, 2) + Math.pow(sampleZ, 2)); sampleX /= magnitude; @@ -119,15 +119,17 @@ public class SSAORenderer sampleZ /= magnitude; float scale = i / (float) MAX_KERNEL_SIZE; - float interpolatedScale = (float) (0.1 + (scale * scale) * (0.9)); + float interpolatedScale = (float) (0.1 + 0.9 * (scale * scale)); sampleX *= interpolatedScale; sampleY *= interpolatedScale; sampleZ *= interpolatedScale; - kernel[i * 3] = sampleX; + + kernel[i * 3 ] = sampleX; kernel[i * 3 + 1] = sampleY; kernel[i * 3 + 2] = sampleZ; } + return kernel; } diff --git a/core/src/main/resources/shaders/ssao/ao.frag b/core/src/main/resources/shaders/ssao/ao.frag index abd315fdb..f2677e86b 100644 --- a/core/src/main/resources/shaders/ssao/ao.frag +++ b/core/src/main/resources/shaders/ssao/ao.frag @@ -60,7 +60,7 @@ void main() { float occlusion_factor = 0.0; for (int i = 0; i < MAX_KERNEL_SIZE; i++) { vec3 samplePos = TBN * gKernel[i]; - //samplePos *= sign(dot(samplePos, viewNormal)); + samplePos *= sign(dot(samplePos, viewNormal)); samplePos = viewPos + samplePos * gSampleRad; vec4 sampleNdcPos = gProj * vec4(samplePos + viewPos, 1.0);