Search Issue Tracker
Not Reproducible
Votes
1
Found in
2018.3.0b5
Issue ID
1090093
Regression
No
Graphics.DrawMeshInstanced merges incompatible batches when overriding material properties using MaterialPropertyBlock
Steps to reproduce:
1. Open the attached project
2. Make sure that Assets/material is using TestShader and that GPU Instancing is enabled
3. Enter Play mode
Expected result: Spheres on the right are white
Actual result: Spheres on the right are red
Reproducible with: 5.6.3f1, 2017.4.13f1, 2018.2.12f1 2018.3.0b5, 2019.1.0a4
Notes:
- The expected behavior is reached only when the color property is explicitly overwritten in the second block.
- "It happens too when the block is recreated instead of cleared or if the call is done without a MaterialPropertyBlock."
Comments (1)
-
GilCat
Feb 04, 2019 12:18
What are the plans for solving this?
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- "Shader warning in 'Hidden/Light2D': implicit truncation of vector type" is thrown when building Universal 2D template
- AI Assistant breaks compilation of packages using System.Runtime.CompilerServices.Unsafe via auto-referencing
- Unity Hub checks the "Documentation" module by default on the 6.4 and 6.5 streams despite that it was unchecked with the previous installs
- Shortcut that toggles between Dopesheet and Curves Views in the Animation Window's Timeline is mislabed
- Property List Items Overlap onto the Property List's top edge when scrolling through a long Property List
Resolution Note:
block.SetColor(property, Color.red);
Graphics.DrawMeshInstanced(mesh, 0, material, transforms, transforms.Length, block);
block.SetColor(property, Color.white);
Graphics.DrawMeshInstanced(mesh, 0, material, transforms, transforms.Length, block);
works