Turn off softshadow for bounces
This commit is contained in:
parent
44e69451cf
commit
8bddbea0bd
4 changed files with 5 additions and 5 deletions
|
|
@ -31,7 +31,7 @@ void main()
|
|||
|
||||
for (uint j = LightStart; j < LightEnd; j++)
|
||||
{
|
||||
incoming += TraceLight(origin, normal, lights[lightIndexes[j]], 0.0);
|
||||
incoming += TraceLight(origin, normal, lights[lightIndexes[j]], 0.0, false);
|
||||
}
|
||||
|
||||
#if defined(USE_BOUNCE)
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ void main()
|
|||
uint LightEnd = surface.LightEnd;
|
||||
for (uint j = LightStart; j < LightEnd; j++)
|
||||
{
|
||||
incoming += TraceLight(surfacepos, surface.Normal, lights[lightIndexes[j]], 0.0);
|
||||
incoming += TraceLight(surfacepos, surface.Normal, lights[lightIndexes[j]], 0.0, false);
|
||||
}
|
||||
|
||||
// incoming *= TraceAmbientOcclusion(surfacepos, surface.Normal);
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ vec3 TraceBounceLight(vec3 origin, vec3 normal)
|
|||
|
||||
for (uint j = LightStart; j < LightEnd; j++)
|
||||
{
|
||||
incoming += TraceLight(surfacepos, surface.Normal, lights[lightIndexes[j]], result.t) * angleAttenuation;
|
||||
incoming += TraceLight(surfacepos, surface.Normal, lights[lightIndexes[j]], result.t, true) * angleAttenuation;
|
||||
}
|
||||
}
|
||||
return incoming / float(SampleCount);
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
vec3 TracePointLightRay(vec3 origin, vec3 lightpos, float tmin, vec3 rayColor);
|
||||
|
||||
vec3 TraceLight(vec3 origin, vec3 normal, LightInfo light, float extraDistance)
|
||||
vec3 TraceLight(vec3 origin, vec3 normal, LightInfo light, float extraDistance, bool noSoftShadow)
|
||||
{
|
||||
const float minDistance = 0.01;
|
||||
vec3 incoming = vec3(0.0);
|
||||
|
|
@ -29,7 +29,7 @@ vec3 TraceLight(vec3 origin, vec3 normal, LightInfo light, float extraDistance)
|
|||
|
||||
#if defined(USE_SOFTSHADOWS)
|
||||
|
||||
if (light.SoftShadowRadius != 0.0)
|
||||
if (!noSoftShadow && light.SoftShadowRadius != 0.0)
|
||||
{
|
||||
vec3 v = (abs(dir.x) > abs(dir.y)) ? vec3(0.0, 1.0, 0.0) : vec3(1.0, 0.0, 0.0);
|
||||
vec3 xdir = normalize(cross(dir, v));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue