Sto lavorando ad un progetto 3D usando THREE.JS e voglio animare un semplice personaggio simile a minecraft.THREE.JS come spostare le ossa di una SkinnedMesh?
Per fare ciò, ne ho esportato uno da Blender (con le ossa) e lo renderizzo con THREE.JS utilizzando la classe SkinnedMesh.
Ho provato tutto per spostare il braccio della mesh ma non riesco a capire come farlo. Ho provato a cambiare rotazione, posizione, matrice e anche a impostare tutti i flag su true (come matrixWorldNeedsUpdate ma il braccio non si muoveva).
Ecco un esempio di codice:
var meshBody = new THREE.SkinnedMesh(geometry, materialTexture);
...
animate = function(){
meshBody.bones[3].rotation.z += 0.1
meshBody.bones[3].matrixAutoUpdate = true;
meshBody.bones[3].matrixWorldNeedsUpdate = true;
}
Hmm, quando faccio questo il modello scompare. In questo tutorial [collegamento] (https://devmatrix.wordpress.com/2013/02/27/creating-skeletal-animation-in-blender-and-exporting-it-to-three-js/) menziona la denominazione le ossa con gli stessi gruppi di vertici. Sembra un po 'strano ma l'ho provato e non ha fatto differenza ... – robshearing
Okay, ho capito. Devo aggiungere più di un vertice. – robshearing