diff --git a/WickedEngine/shaders/ddgi_raytraceCS.hlsl b/WickedEngine/shaders/ddgi_raytraceCS.hlsl index 5fe28af6f..4a3ccc3c6 100644 --- a/WickedEngine/shaders/ddgi_raytraceCS.hlsl +++ b/WickedEngine/shaders/ddgi_raytraceCS.hlsl @@ -51,7 +51,7 @@ void main(uint3 DTid : SV_DispatchThreadID, uint3 Gid : SV_GroupID, uint groupIn > q; q.TraceRayInline( scene_acceleration_structure, // RaytracingAccelerationStructure AccelerationStructure - 0, // uint RayFlags + RAY_FLAG_CULL_BACK_FACING_TRIANGLES, // uint RayFlags push.instanceInclusionMask, // uint InstanceInclusionMask ray // RayDesc Ray ); diff --git a/WickedEngine/shaders/rtdiffuseCS.hlsl b/WickedEngine/shaders/rtdiffuseCS.hlsl index f7bc2194d..0850a3334 100644 --- a/WickedEngine/shaders/rtdiffuseCS.hlsl +++ b/WickedEngine/shaders/rtdiffuseCS.hlsl @@ -1,6 +1,5 @@ #define RTAPI #define DISABLE_SOFT_SHADOWMAP -#define DISABLE_TRANSPARENT_SHADOWMAP #define SURFACE_LOAD_MIPCONE #define TEXTURE_SLOT_NONUNIFORM @@ -50,7 +49,7 @@ void main(uint2 DTid : SV_DispatchThreadID) //const float2 bluenoise = blue_noise(DTid.xy).xy; //const float3 R = normalize(mul(hemispherepoint_cos(bluenoise.x, bluenoise.y), get_tangentspace(N))); - const uint samplecount = 1; + const uint samplecount = 2; for (uint i = 0; i < samplecount; ++i) { const float2 bluenoise = blue_noise(DTid.xy, (float)i / (float)samplecount).xy; @@ -69,7 +68,8 @@ void main(uint2 DTid : SV_DispatchThreadID) float4 additive_dist = float4(0, 0, 0, FLT_MAX); RayQuery< - RAY_FLAG_SKIP_PROCEDURAL_PRIMITIVES + RAY_FLAG_SKIP_PROCEDURAL_PRIMITIVES | + RAY_FLAG_CULL_BACK_FACING_TRIANGLES > q; q.TraceRayInline( scene_acceleration_structure, // RaytracingAccelerationStructure AccelerationStructure diff --git a/WickedEngine/shaders/rtreflectionCS.hlsl b/WickedEngine/shaders/rtreflectionCS.hlsl index acd62505c..05c64fee2 100644 --- a/WickedEngine/shaders/rtreflectionCS.hlsl +++ b/WickedEngine/shaders/rtreflectionCS.hlsl @@ -70,7 +70,8 @@ void main(uint2 DTid : SV_DispatchThreadID) float4 additive_dist = float4(0, 0, 0, FLT_MAX); RayQuery< - RAY_FLAG_SKIP_PROCEDURAL_PRIMITIVES + RAY_FLAG_SKIP_PROCEDURAL_PRIMITIVES | + RAY_FLAG_CULL_BACK_FACING_TRIANGLES > q; q.TraceRayInline( scene_acceleration_structure, // RaytracingAccelerationStructure AccelerationStructure diff --git a/WickedEngine/shaders/surfel_raytraceCS.hlsl b/WickedEngine/shaders/surfel_raytraceCS.hlsl index 57e26bc22..405a790ea 100644 --- a/WickedEngine/shaders/surfel_raytraceCS.hlsl +++ b/WickedEngine/shaders/surfel_raytraceCS.hlsl @@ -48,7 +48,7 @@ void main(uint3 DTid : SV_DispatchThreadID) > q; q.TraceRayInline( scene_acceleration_structure, // RaytracingAccelerationStructure AccelerationStructure - 0, // uint RayFlags + RAY_FLAG_CULL_BACK_FACING_TRIANGLES, // uint RayFlags push.instanceInclusionMask, // uint InstanceInclusionMask ray // RayDesc Ray ); diff --git a/WickedEngine/wiVersion.cpp b/WickedEngine/wiVersion.cpp index a5a541f12..1f6f0b90f 100644 --- a/WickedEngine/wiVersion.cpp +++ b/WickedEngine/wiVersion.cpp @@ -9,7 +9,7 @@ namespace wi::version // minor features, major updates, breaking compatibility changes const int minor = 71; // minor bug fixes, alterations, refactors, updates - const int revision = 196; + const int revision = 197; const std::string version_string = std::to_string(major) + "." + std::to_string(minor) + "." + std::to_string(revision);