@@ -76,6 +76,7 @@ void main() {
7676#version 460
7777#extension GL_EXT_ray_tracing : enable
7878#extension GL_EXT_ray_query : enable
79+
7980#include camera.glsl
8081#include light.glsl
8182#include scene.glsl
@@ -87,7 +88,7 @@ void main() {
8788#include IBL.glsl
8889#include reindhart.glsl
8990#include BRDFs/ schlick_smith_BRDF.glsl
90- #include raytraced_shadows .glsl
91+ #include raytracing .glsl
9192
9293// Input
9394layout (location = 0 ) in vec3 v_pos;
@@ -102,11 +103,11 @@ layout(location = 6) in mat3 v_TBN;
102103layout (location = 0 ) out vec4 outColor;
103104
104105
105- layout (set = 0 , binding = 2 ) uniform sampler2DArray shadowMap;
106- layout (set = 0 , binding = 4 ) uniform samplerCube irradianceMap ;
107- layout (set = 0 , binding = 5 ) uniform accelerationStructureEXT TLAS ;
108-
109-
106+ // Uniforms
107+ layout (set = 0 , binding = 2 ) uniform sampler2DArray shadowMap ;
108+ layout (set = 0 , binding = 4 ) uniform samplerCube irradianceMap ;
109+ layout (set = 0 , binding = 5 ) uniform accelerationStructureEXT TLAS;
110+ layout (set = 0 , binding = 6 ) uniform sampler2D blueNoiseMap;
110111layout (set = 1 , binding = 1 ) uniform MaterialUniforms {
111112 vec3 albedo;
112113 float opacity;
@@ -129,8 +130,6 @@ layout(set = 1, binding = 1) uniform MaterialUniforms {
129130 int maskType;
130131 float opacityWeight;
131132} material;
132-
133-
134133layout (set = 2 , binding = 0 ) uniform sampler2D albedoTex;
135134layout (set = 2 , binding = 1 ) uniform sampler2D normalTex;
136135layout (set = 2 , binding = 2 ) uniform sampler2D maskRoughTex;
@@ -202,7 +201,7 @@ void main() {
202201 if (scene.lights[i].shadowType == 1 ) // VSM
203202 lighting *= computeVarianceShadow(shadowMap, scene.lights[i], i, v_modelPos);
204203 if (scene.lights[i].shadowType == 2 ) // Raytraced
205- lighting *= computeRaytracedShadow(TLAS, v_modelPos, normalize ( scene.lights[i].shadowData.xyz - v_modelPos), 1000 );
204+ lighting *= computeRaytracedShadow(TLAS, blueNoiseMap , v_modelPos, scene.lights[i].shadowData.xyz - v_modelPos, int (scene.lights[i].shadowData.w) , scene.lights[i].area , 0 );
206205 }
207206
208207 color += lighting;
0 commit comments