# How to rebind a skinned mesh to a different skeleton (same structure)

**URL:** <https://discourse.threejs.org/t/how-to-rebind-a-skinned-mesh-to-a-different-skeleton-same-structure/46226>\
**Category:** Questions\
**Tags:** skinned-mesh, skeleton, transform, animation, materials\
**Created:** [December 26, 2022, 7:42am UTC](https://discourse.threejs.org/t/how-to-rebind-a-skinned-mesh-to-a-different-skeleton-same-structure/46226 "2022-12-26T07:42:43Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![etm](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.threejs.org/etm/32/31342_2.png) [@etm](https://discourse.threejs.org/u/etm)\
**Post date:** [December 26, 2022, 7:42am UTC](https://discourse.threejs.org/t/how-to-rebind-a-skinned-mesh-to-a-different-skeleton-same-structure/46226/1 "2022-12-26T07:42:43Z")

</div>

Say I have a human model with attachable costumes. Each model is bind to a skeleton, but the skeleton shares the same structure (just different weights, etc).

So, how do I get around to transform the bone of one to also update the others? No need to be bi-directional. Like modifying the human skeleton will update all costumes’ skeleton (multiple).

One idea is to rebind those meshes/costume to the human’s skeleton. But I janky-ly tried this with no success as the weights are destroyed.

Currently, this is basically what we use: When we select a certain bone type to transform, we create a dummy object with the same transform and transform that dummy instead. Once the transform is done, the new value is copy back to that same bone type on each skeleton.

```javascript
this.transform.addEventListener('objectChange', function (event) {
    for (var i=0;i<target.length;i++) {
        target[i].position.copy(this.dummyGroup.position);
        target[i].rotation.copy(this.dummyGroup.rotation);
        target[i].scale.copy(this.dummyGroup.scale);
    }
}.bind(this))

```

The problem with this is that it’s not inherently linked in the engine like actual parent-child relationship or proper skin-skeleton connection.

So I wonder if there’s a way a bone can reference or link to another bone matrix4, or just rebind a skin to a different skeleton, preserving everything.
