Saturate (NdL + bias) to preserve energy (https://github.com/o3de/o3de/pull/6428#discussion_r774253478, https://github.com/o3de/o3de/pull/6428#discussion_r776069110)
Signed-off-by: Santi Paprika <santi.gonzalez.cs@gmail.com>
This commit is contained in:
@@ -73,7 +73,7 @@ float3 GetBackLighting(Surface surface, LightingData lightingData, float3 lightI
|
|||||||
|
|
||||||
// Irradiance arround surface point.
|
// Irradiance arround surface point.
|
||||||
// Increase angle of influence (angle(N,L) -> angle(N,L) + acos(transmissionNdLBias)) to smooth transition regions
|
// Increase angle of influence (angle(N,L) -> angle(N,L) + acos(transmissionNdLBias)) to smooth transition regions
|
||||||
float3 E = surface.albedo * max(lightingData.transmissionNdLBias + dot(-surface.normal, dirToLight),0.0);
|
float3 E = surface.albedo * saturate(lightingData.transmissionNdLBias + dot(-surface.normal, dirToLight));
|
||||||
|
|
||||||
// Transmission distance modulated by hardcoded constant (could be exposed as a weight of scattering distance for transmission)
|
// Transmission distance modulated by hardcoded constant (could be exposed as a weight of scattering distance for transmission)
|
||||||
float s = transmissionDistance * 100.0;
|
float s = transmissionDistance * 100.0;
|
||||||
|
|||||||
Reference in New Issue
Block a user