- Home /
Blender to Unity Weight Painting doesn't transfer.
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.
-Export FBX.
-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.
In Unity:
In Blender:
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:
Test File:
Answer by VI6-D-DARK-KING · Jan 28, 2021 at 03:26 AM
Try In Unity
Edit- Project Settings - Other - Skin Weights - Unlimited
Had a similar problem And This Fixed It.
Your answer
Follow this Question
Related Questions
Importing Blender Actions to Unity 2 Answers
No sign of baked IK animation when importing to unity 0 Answers
Blender animation import - different animation and offset location 1 Answer
Blender Animation being offset 0 Answers
Beginner Question: Object Animation vs Character Animation in Blender 0 Answers