Can’t get weight painted armature and mesh to work smoothly in Unity.
Here’s my workflow:
-Do weight painting in Blender.
-Do animations in Blender.
-Import in Unity
-Set avatar to humanoid(bones are a perfect match)
But the animation doesn’t play as smoothly as in Blender and deformations do not stretch correctly.
The animations work correctly overall, just doesn’t in some parts such as the knee.
Update: Steps to re-create problem
-Create an armature in Blender, extrude a second bone(forming a joint).
-Create two cylinder meshes as “arm” and “elbow”, place them to form an jointed appandage(a full arm).
-Join meshes into a single mesh.
-Place mesh to cover the armature.
-Parent mesh to armature(Auto-weight to ease steps, do manual vertex grouping if not)
-Weight paint the mesh to have a smooth human-like joint
-In pose mode bend the joint as if bending an arm(make a simple animation, just one keyframe will do).
-Export armature and mesh as FBX.
-DragNDrop FBX to Unity
-Set animation type (humanoid if you made the whole model, generic if not)
-Problem can be viewed in Animation tab.
Unity Version: 2019.2.6f1
Arm in Blender:
Arm in Unity: