From d16e8e0bb22a897dd46cec8bd5ac36dd49a7f59b Mon Sep 17 00:00:00 2001 From: hodasemi Date: Wed, 12 Mar 2025 08:31:03 +0100 Subject: [PATCH] Fix miss behavior --- .../shaders/raytracing/hardware/default/closesthit.rchit | 4 ++++ .../rendering/shaders/raytracing/hardware/default/miss.rmiss | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/engine/src/scene/rendering/shaders/raytracing/hardware/default/closesthit.rchit b/engine/src/scene/rendering/shaders/raytracing/hardware/default/closesthit.rchit index ae8d8d5..44ddb77 100644 --- a/engine/src/scene/rendering/shaders/raytracing/hardware/default/closesthit.rchit +++ b/engine/src/scene/rendering/shaders/raytracing/hardware/default/closesthit.rchit @@ -165,6 +165,10 @@ void own_implementation() { pay_load.depth--; + if (pay_load.distance == -1.0) { + break; + } + object_color = mix(pay_load.color.xyz, object_color, alpha); alpha = pay_load.color.w; max_alpha = max(max_alpha, alpha); diff --git a/engine/src/scene/rendering/shaders/raytracing/hardware/default/miss.rmiss b/engine/src/scene/rendering/shaders/raytracing/hardware/default/miss.rmiss index ffdf986..0a119de 100644 --- a/engine/src/scene/rendering/shaders/raytracing/hardware/default/miss.rmiss +++ b/engine/src/scene/rendering/shaders/raytracing/hardware/default/miss.rmiss @@ -11,6 +11,6 @@ layout(location = 0) rayPayloadInEXT RayPayload pay_load; void main() { - pay_load.color = vec4(0.1, 0.1, 0.1, 1.0); + pay_load.color = vec4(0.1, 0.1, 0.1, 0.0); pay_load.distance = -1.0; } \ No newline at end of file