I have code from a previous project (5.6.0) where I could successfully add a mesh to a controller with an Animator component using the following code:
model.transform.SetParent (controller.transform);
model.transform.localPosition = Vector3.zero;
controller.GetComponent<Animator>().Rebind();
The code was adapted from @MysterieCatGames 's 2015 Answer post here.
This allowed the skinned mesh renderer of the new mesh to be animated by the Animator of the controller despite not being bound at app initialization.
In 2017.1.0b10, this no longer works. The new mesh just stays in their T-pose, despite the Animator’s settings matching those of an Animator that was initialized with a mesh from the start. I can see the animation state (Grounded) playing in the Animator window when I have the controller selected, but the mesh isn’t updating to match.
Did Animators change somehow and there’s now a different way of binding a new mesh at runtime? Or is this a bug?