Search Issue Tracker
Blendshapes do not update normal directions
Imported normals/tangents in meshes with blendshapes do not update when the mesh is blended, resulting in bent normal directions. If using calculated normals/tangents, normals are updated, but meshes don't respect "hard edges" aka it is unusable with component-based character meshes where you separate pieces of the character and have the border edges locked to match between meshes.
How to reproduce:
1. Download attached project file and open "testcube" Scene
2. Enter Play Mode
Actual result: In Play Mode, you can observe two meshes animated by moving blendshape values. The imported mesh's normals remain facing the same direction, resulting in an animated cube that is lighted wrong. The calculated mesh's normals are updated as the model is animated by blendshapes, but it is not possible to use this solution with organic models.
Expected result: Unity would allow either calculated normals with respect of edge border normals or allow calculating normals on specific areas only (determined with something, e.g. texture, or vertex colors), or normal directions would just be adjusted based on movement in blendshapes (as it works in 3D modeling softwares)
Reproduced with: 5.6.1f1, 5.6.4f1, 2017.1.2p1, 2017.2.0f3, 2017.3.0b5
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
- The main loop is never scheduled in 2018.x when build starts in background
- EditorApplication.isPlaying value is true when calling it in OnDisable() and Entering Play Mode
- "Entering Playmode with Reload Domain disabled" log appears when Configurable Enter Play Mode is enabled and pressing Play
- [2D] [Lost Crypt Demo] null texture passed to GUI.DrawTexture warning when opening demo
- Editor freezes and silently crashes when an object with SerializeReference is assigned an object with System.Obsolete attribute