- Home /
Shadow Strength = 0 vs Shadow type = No Shadows
Just curious if there's any performance impact on using Light.shadowstrength = 0; instead of Light.shadowtype=0; //shadowtype.noshadows
Answer by tanoshimi · Nov 20, 2016 at 01:12 PM
Yes, there's a big difference as you can clearly see from the profiler (this is from a scene containing one directional light, one cube, and one plane onto which the cube's shadow falls):
Setting shadowstrength = 0 simply means that the shadow makes no contribution to the final rendered pixel, but the shadow map must still be calculated for that light. It's like rendering a fully transparent object. But it doesn't make the performance change at all compared to showing shadows at full intensity.
Setting shadows off means the lightmap is never even calculated - you'll see the graph shows no GPU Usage for Shadows/Depth (the orange-coloured bit) as there's no longer an entry for Shadows.RenderShadowmap.
Answer by JeffHardddyyy · Nov 18, 2016 at 04:56 PM
There Is none. Except that you did shadowtype.noshadows in a comment, if you remove the comment, I believe there will be no performance change.
$$anonymous$$aybe, but I slightly doubt that in shadowstrength = 0, the ray-tracing for shadows might be running in the background or something like that.
Hmmm.... $$anonymous$$aybe some Unity developer can help us