Search Issue Tracker
By Design
Votes
0
Found in
5.4.1p1
Issue ID
870153
Regression
No
Issues accessing second UV channel in UI shaders
When using Unity's UI shaders that have an additional detail texture set in the second UV channel, the result very different when comparing with the shader code and has to be tweaked to obtain the correct result. Also, the use of the PositionAsUV1 component (which is required for the detail texture to show up) isn't mentioned in the documentation, which can be very confusing.
To reproduce:
1. Make a new Unity Project.
2. In the Hierarchy, Click Create>UI>Image
3. Assign a sprite from your Texture to the Image's Source Image
4. Create a Material.
5. Assign the Shader UI/Unlit/Detail (any default UI shader would work as the meshes are produced the same)
6. Add a texture to your project to use as the Detail Texture in your Material.
7. Add the texture to the Material.
8. The resulting material is incorrect as the detail texture doesn't show up.
In the attached project you can find a comparison between a UI Image with the detail shader and a Quad with a standard shader that uses the same detail map (which is how the UI image should look).
Reproducible: 5.6.0b3, 5.5.0p4, 5.4.3p4, 5.1.3p3
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- UI Text color is incorrect when text is rendered on SubMeshUI
- "Invalid SortingGroup index set in Renderer" errors when making many modifications in same frame
- Crash on GizmoBufferSizeHistory::GetBuffer() when opening a specific scene
- RenderTexture is not initialized when it is set as Material's Texture
- Branch node outputs a random value instead of a constant on the false conditon
Add comment