Search Issue Tracker
Fixed in 2017.1.0f3
Fixed in 2017.2
Incorrect definition of _ShadowCoord in AutoLight.cginc
In AutoLight.cginc, _ShadowCoord is defined in some cases where it is not needed. This results in a useless interpolator. It can also lead to unexpected compile errors if UNITY_INITIALIZE_OUTPUT is not used to initialize the interpolator struct. Usage of UNITY_INITIALIZE_OUTPUT in Unity's shaders hides this bug.
The definition is on line 116. Here are lines 115-117:
# define UNITY_SHADOW_COORDS(idx1) unityShadowCoord2 _ShadowCoord : TEXCOORD##idx1;
# if defined(SHADOWS_SHADOWMASK)
The line should be moved inside the defined(SHADOWS_SHADOWMASK) block below it. So lines 115-117 become:
#define UNITY_SHADOW_COORDS(idx1) unityShadowCoord2 _ShadowCoord : TEXCOORD##idx1;
Reproduced with: 5.6.2p1, 2017.1.0f1, 2017.2.0b1
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
- Backgrounds of Editor windows are changed to a texture when method ImageConversion.LoadImage is called
- Lightmapper is slow when using "Always Refresh"
- [VerticalLayoutGroup] Children position is not updated when a child's scale is animated
- [Android] Can't relocate the caret in Input Fields when Hide Mobile Input option is being used
- Multiple Edge Colliders 2D can be edited at the same time, every Edge Collider's "Edit Collider" button is highlighted