Моя цель - прикрепить отдельные объекты (например, носимые предметы) к анимированной модели, чтобы связанные объекты контролировались анимацией моделей.
Я нашел их, но все кажется устаревшим.
Я экспериментировал с персонажем, импортированным из блендера, с кожей, фальсификацией и анимацией.
Моя проблема: когда я добавляю новую сетку к определенной кости модели (закомментированная часть в коде), текущий анимационный клип переключается на первый (t-pose), и скиннинг получает сломан (модель становится белой).
Однако объект соединяется с костью и движется вместе с ней.
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);
Он работает неправильно, даже если добавлен простой куб, но было бы неплохо, если бы я мог добавить сапоги к персонажу, который двигается как его нога.