Im using the SkeletonHelper on a SkinnedMesh coming from the colladaLoader2.
In r82+colladaLoader I used to traverse the scene, check for a THREE.SkinnedMesh and then create a Helper with the current Object.
Code looked like this:
dae.scene.traverse( function ( child ) {
if ( child instanceof THREE.SkinnedMesh ) {
var skeletonHelper = new THREE.SkeletonHelper( child );
skeletonHelper.material.linewidth = 3;
skeletonHelper.visible = true;
scene.add( skeletonHelper );
}
});
Doing this with r87dev and the colladaLoader2 no skeleton is displayed and no Errors. 鈿狅笍
Looking at the r87dev webgl_loader_collada_skinning (dancing trooper) example you can try it yourself. It looks like currently you have to create the Helper by giving it the dae.scene.
My model contains multiple skinned Meshes, so im looking for a way to create the helper using the particular mesh, not the whole scene. I have to add Im not seeing any problems right now, Im just confused about the change in code.
SkeletonHelper assumes that bones are children of the skinned mesh. This ist not true for ColladaLoader2. In order to support correct transformations of skeletons it was necessary to leave all joint nodes in their original position in the scene hierarchy.
Thank you for the clarification Mugen and all the work lately regarding the AnimationSystem.
Most helpful comment
Thank you for the clarification Mugen and all the work lately regarding the AnimationSystem.