我的目标是将单独的对象(例如,可穿戴物品)附加到动画模型上,以使绑定的对象由模型动画控制。
我找到了这些,但似乎都过时了。
我尝试了从搅拌机导入的具有蒙皮,装配和动画效果的角色。
我的问题是:当我向模型的特定骨骼(代码中注释掉的部分)添加新网格时,当前的动画剪辑切换到第一个(t姿势),蒙皮得到坏了(模型变成白色)。 但是,该对象连接到骨骼并随之移动。
const {scene, animations} = await Utils.loadModel('model/someName.gltf');
const model = scene.children[0];
const material = new THREE.MeshBasicMaterial();
material.alphaTest = 0.5;
material.skinning = true;
model.traverse((child) => {
if (child.material) {
material.map = child.material.map;
child.material = material;
child.material.needsUpdate = true;
}
if (child.isBone && child.name === 'RightHand') {
// child.add(createMesh());
}
});
gScene.add(model);
即使添加了一个简单的多维数据集,它也无法正常工作,但是如果我可以向角色中添加靴子(脚随着脚移动),那会很好。
答案 0 :(得分:0)
好像我找到了解决方案。
我更新了演示(只是PoC)https://github.com/tomo0613/3d-animated-char-test
第一个(在搅拌机中):
然后是JS代码:
我仍然很好奇,是否有任何打算的或更好的方法?