Search Issue Tracker
Won't Fix
Votes
0
Found in
4.3.0b4
Issue ID
567155
Regression
No
Surface shaders skip WorldReflectionVector if it only writes to custom fields
Unity's shader generation optimizes out the entire reflection vector generation.
To reproduce:
1. Open Empy43b3 project
2. Open Shader.shader
3. Toggle the bottom line that works around the bug
4. Observe how cube map reflections completely disappear when not also written to Emission
This bug is due to a legitimate problem with Unity's shader analysis, where a certain parameter (in this case the specColor output from the DirLightmap lighting function) was not considered in the outputs, and so anything that only contributed to it - like Reflection in this case - was eliminated.
However this lighting function DirLightmap is no longer supported, and the new way of implementing the feature no longer suffers from the bug. So the bug no longer makes sense and there is no fix to make.
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Texture2D hash changes inside of an AssetBundle when rebuilding a SpriteAtlas bundle with an empty AssetPostprocessor Script enabled
- Aniso Level still applies when Generate MipMap is disabled in Texture Import Settings
- Mipmap Limit Groups long names are not truncated when creating a new Mipmap Limit Group with a long name
- “ArgumentException: Invalid double parameter.” error is thrown when Infinity is typed into the Fixed Timestep field
- GameObject becomes gray when using HDRP and STP together on macOS
Add comment