From 90b16a3d5c8d8a7bb7170909ae03075581666967 Mon Sep 17 00:00:00 2001
From: zomseffen <steffen@tom.bi>
Date: Fri, 14 Mar 2025 15:50:01 +0100
Subject: [PATCH] fixes edge see through

---
 shaders/compiled/frag_rt_quad.spv | Bin 48596 -> 48612 bytes
 shaders/rt_quad.frag              |  20 ++++++--------------
 2 files changed, 6 insertions(+), 14 deletions(-)

diff --git a/shaders/compiled/frag_rt_quad.spv b/shaders/compiled/frag_rt_quad.spv
index 4b2eb6120e53d5c44e487212b939a74748a04a6c..ae0bec75b7387cf3f481ffaf1844e89242299c6c 100644
GIT binary patch
delta 9285
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

delta 9256
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
KxPy<-HSvEKS20ik

diff --git a/shaders/rt_quad.frag b/shaders/rt_quad.frag
index 65f1bdd..17c3861 100644
--- a/shaders/rt_quad.frag
+++ b/shaders/rt_quad.frag
@@ -372,11 +372,6 @@ Tracing trace_ray(uint volume_start, vec3 starting_pos, vec3 start_direction, fl
             }
         }
     }
-    /*if (iteration_num == max_iterations) {
-        end_color_transparent = uvec4(0, 0, 255, 255);
-        result.end_color = uvec4(0, 0, 255, 255);
-        result.color_mul = vec3(0.0, 0.0, 1.0);
-    }*/
 
     result.end_factor = min(min(x_factor, y_factor), z_factor);
     result.end_cycle = iteration_num;
@@ -428,9 +423,6 @@ vec3 get_lighting_color(uint volume_start, vec3 starting_pos, vec4 orig_color_sa
         Tracing result = trace_ray(volume_start, starting_pos, light_direction, max_factor, false);
         // add result, if there is a hit the null vector will be added
         color_sum += float(!result.has_hit) * result.color_mul * max(dot(normal, normalize(light_direction)), 0.0) * (orig_color_sample.xyz * light_color) / (length(light_direction) * length(light_direction));
-        /*if (scene_info.infos[light_index] == 1) { 
-            color_sum = float(!result.has_hit) * result.color_mul;
-        }*/
 
         light_num += 1;
         if (light_num >= max_num_lights) {
@@ -473,13 +465,13 @@ vec3 clamp_to_volume(uint volume_start, vec3 position) {
     float volume_pos_z = uintBitsToFloat(scene_info.infos[volume_start + 2]); 
     float volume_scale = uintBitsToFloat(scene_info.infos[volume_start + array_descr_offset + color_array_offset - 1]);
 
-    float high_x_border = volume_pos_x + float(scene_info.infos[volume_start + 3]) * volume_scale - 0.5 * volume_scale;
-    float high_y_border = volume_pos_y + float(scene_info.infos[volume_start + 4]) * volume_scale - 0.5 * volume_scale;
-    float high_z_border = volume_pos_z + float(scene_info.infos[volume_start + 5]) * volume_scale - 0.5 * volume_scale;
+    float high_x_border = volume_pos_x + float(scene_info.infos[volume_start + 3]) * volume_scale - 0.501 * volume_scale;
+    float high_y_border = volume_pos_y + float(scene_info.infos[volume_start + 4]) * volume_scale - 0.501 * volume_scale;
+    float high_z_border = volume_pos_z + float(scene_info.infos[volume_start + 5]) * volume_scale - 0.501 * volume_scale;
 
-    float low_x_border = float(volume_pos_x) - 0.5 * volume_scale;
-    float low_y_border = float(volume_pos_y) - 0.5 * volume_scale;
-    float low_z_border = float(volume_pos_z) - 0.5 * volume_scale;
+    float low_x_border = float(volume_pos_x) - 0.501 * volume_scale;
+    float low_y_border = float(volume_pos_y) - 0.501 * volume_scale;
+    float low_z_border = float(volume_pos_z) - 0.501 * volume_scale;
 
     return vec3(min(max(position.x, low_x_border), high_x_border), min(max(position.y, low_y_border), high_y_border), min(max(position.z, low_z_border), high_z_border));
 }