Search Issue Tracker
Fixed in Unity 2017.2
MaterialPropertyBlock does not affect values for Meta pass when using on terrain mesh in Realtime GI
1. Download and open attached "Case 127141 - MaterialPropBlock_vs_MetaShaderPass.zip" project.
2. Open "test" scene.
3. Change Editor scene shading mode to be "Lit Clustering".
4. Generate Lighting in the scene.
5. Enter Game mode.
6. Get back to the scene view.
7. Select "Plane" game object and alter the SetMaterialPropBlock component tint color of that object.
8. Notice that changing the tint color changes "Plane" object's mesh color.
9. Select "-> Terrain <-" game object and alter the SetMaterialPropBlock component tint color of that object.
Expected result: Selected color reflects on a terrain mesh in the scene view just like "Plane" mesh.
Actual result: Meta pass is not updated. Terrain's mesh does not change its color according to the Albedo Tint pallete.
Reproduced with: 2017.3.0a2, 2017.2.0b5, 2017.1.0p2, 5.6.3f1.
Notes: Couldn't test on earlier versions because of script errors. Everything works correctly on Plane mesh, so it can be used as a reference to correct behavior.
- Issue has been introduced because of API change. It used to work before DynamicGI.UpdateMaterials() API was deprecated.
Verified with: 2017.3.0b9, 2017.1.2p4
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
- [Lighting] Reflection Probe causes shadow artifacts on Android while using OpenGL2 graphics API
- Realtime Reflection probe throws error after pressing `Bake Reflection Probes`
- TestRunner Window does not update test results correctly for tests with the same name
- [UI] Invalid AABB inAABB error occurs on clearing reference resolution values for canvas scaler
- [Editor] Missing reference exception occurs on deleting particle system