Search Issue Tracker
By Design
Votes
0
Found in
2019.4
2019.4.16f1
2020.3
2021.1
2021.2
2022.1
Issue ID
1341870
Regression
No
Texture becomes dark/overlapping when using BlendShape with certain Settings
How to reproduce:
1. Open the user's attached project and Scenes/SampleScene scene
2. In the Hierarchy window, double click on "bug-fix-2 (2)" GameObject
3. Observe the focused GameObject in the Scene view
Expected result: Texture is correctly blended
Actual result: Texture is black (BlendShapes seem to overlap incorrectly)
Reproducible with: 2019.4.29f1, 2020.3.17f1, 2021.1.18f1, 2021.2.0b9, 2022.1.0a6
Notes:
1. Issue is not reproducible when BlendShape Plane.002 is < 50
2. Workaround: disable the Import or Calculation of the BlendShape Normal in the Import Settings
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
- Incorrect Shader keyword activation for Shadows when no Light is present in URP
- Editor freezes when loading a specific AssetBundle
- WebGPU builds with Multithreading enabled crash on Safari
- Set as Value in UI Builder doesn't work across all properties.
- Calculating time durations in RenderDoc with DX12 causes 'Device Lost error' popup
Resolution Note (2022.1.X):
The problem here is that the shapes which are blend between have opposing normals, the active shapes linearly blend between [0, 1, 0] and [0, -1, 0]. This results in the normals [0, 0, 0] - which renders as black due to lighting. DCC tools (Maya, Blender etc.) do not handle blendshapes the same. They can afford more expensive operations. Unity's blendshapes are optimized to be runtime performant. For this specific case it can help to use blendshape frames (in-between blendshapes). This can be used to define normals where they currently approach zero. This blog post explains the idea; https://mayazest.blogspot.com/2013/07/how-to-add-blend-shapes-inbetween.html.