2017-05-27 1 views
1

Hey im créer une montagne de type aller dans ma scène et que je veux laisser les sommets de lui trémousser à des valeurs spécifiques. Maintenant, j'essaie d'accéder aux sommets que j'ai définis auparavant et de les spécifier à nouveau au fil du temps via la fonction de mise à jour. Comment puis-je y accéder probablement et recalculer les visages?Dynamiquement mettre à jour les sommets et les faces d'un Mesh trois js

geom1.vertices = [ 
    new THREE.Vector3(-1000, -300, 0),  
    new THREE.Vector3(-1000, 0, 0), 
    new THREE.Vector3(-20, 120, 0), 
    new THREE.Vector3(60, 85, 0), 
    new THREE.Vector3(140, 100, 0), 
    new THREE.Vector3(1000, 0, 0), 
    new THREE.Vector3(1000, -300, 0), 
    new THREE.Vector3(0, -300 , 0), 
]; 

geom1.faces = [ 
    new THREE.Face3(7, 0, 1), 
    new THREE.Face3(7, 1, 2),  
    new THREE.Face3(7, 2, 3), 
    new THREE.Face3(7, 3, 4), 
    new THREE.Face3(7, 4, 5), 
    new THREE.Face3(7, 5, 6), 
];  


geom1.computeFaceNormals(); 
geom1.dynamic = true; 


var material1 = new THREE.MeshBasicMaterial({ 
    color: 0x7dae81, 
    side: THREE.DoubleSide, 
}); 


hill1 = new THREE.Mesh(geom1, material1); 

dans la fonction de mise à jour im faisant

geom1.vertices[2].y += 0.1; 
geom1.verticesNeedUpdate; 

Répondre