Search Issue Tracker
By Design
Votes
2
Found in
2020.2.2f1
2020.2.4f1
2020.3
2021.1
2021.2
Issue ID
1324131
Regression
Yes
"Animator.GetBoneTransform" doesn't get bone's transform from prefab
Reproduction steps:
1. Open attached project "Dellt.zip" and scene "Addon"
2. Enter Play Mode
3. Observe Console window
Expected result: No errors
Actual result: "NullReferenceException: Object reference not set to an instance of an object MecanimToRagdoll.GetBone" error
Reproducible with: 2020.2.2f1, 2020.3.5f1, 2021.1.4f1, 2021.2.0a14
Not reproducible with: 2019.4.24f1, 2020.2.1f1
Could not test with: 2018.4.34f1 (compilation errors break project)
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
- Texture2D hash changes inside of an AssetBundle when rebuilding a SpriteAtlas bundle with an empty AssetPostprocessor Script enabled
- Aniso Level still applies when Generate MipMap is disabled in Texture Import Settings
- Mipmap Limit Groups long names are not truncated when creating a new Mipmap Limit Group with a long name
- “ArgumentException: Invalid double parameter.” error is thrown when Infinity is typed into the Fixed Timestep field
- GameObject becomes gray when using HDRP and STP together on macOS
Resolution Note:
GetBoneTransform requires an active animator to return the correct transform.
Prefabs don't have active animators until they are instantiated.
The best way to fix the sample in this case would be to instantiate the prefabs in the Start method, cache the poses from the prefabs for later use, and remove the instantiated prefabs.