Fix #137514: EEVEE: Holdout objects still emit radiance

Disable radiance for holdout objects.

Pull Request: https://projects.blender.org/blender/blender/pulls/137824
This commit is contained in:
Miguel Pozo
2025-04-22 15:07:02 +02:00
parent 49c284fe87
commit f933282ed5

View File

@@ -54,13 +54,6 @@ void main()
nodetree_surface(closure_rand);
eObjectInfoFlag ob_flag = drw_object_infos().flag;
if (flag_test(ob_flag, OBJECT_HOLDOUT)) {
g_holdout = 1.0f - average(g_transmittance);
}
g_holdout = saturate(g_holdout);
float3 radiance, transmittance;
forward_lighting_eval(g_thickness, radiance, transmittance);
@@ -74,6 +67,14 @@ void main()
vol.scattering -= vol.scattering * g_transmittance;
radiance = radiance * vol.transmittance + vol.scattering;
eObjectInfoFlag ob_flag = drw_object_infos().flag;
if (flag_test(ob_flag, OBJECT_HOLDOUT)) {
g_holdout = 1.0f - average(g_transmittance);
radiance *= 0.0f;
}
g_holdout = saturate(g_holdout);
radiance *= 1.0f - saturate(g_holdout);
out_radiance = float4(radiance, g_holdout);