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
- Modifying UI Prefab child's Height only confirms the first 1 or 2 digits when the Scene is newly opened or the Prefab is newly created
- ProfilingSampler.Get() returns null and makes the Player only render black when building a Release Build
- Search text field visual controls for the Path binding in an Input Actions Asset is misaligned
- Display issues in VideoPlayer when using Screen.SetResolution on certain Google Pixel devices
- Crash on Texture::TextureIDMapInsert when opening a specific project
Add comment