2016-10-15 2 views
0

Мне нужно сделать что-то вроде этого. (Это просто пример код, чтобы показать вам логику)Трижды можно ли обновить или переписать геометрию?

var counter = 0; 
// save original geometry 
var geometry_clone = box.geometry.clone(); 
for (var i = 0; i < 50; i++) { 
    //restore original geometry 
    box.geometry = geometry_clone; 
    modifier.set(direction, axis, counter).modify(box.geometry); 
    counter = counter + .001; 
    render(); 
} 

Я использую модификатор изгиба анимировать изгиб, но мне нужно, чтобы вернуться к исходному состоянию геометрии каждый раз, когда я использую модификатор изгиба. Является ли это возможным??

ответ

0

Я нашел решение своего вопроса.

var counter = 0; 

// save original geometry 
var saved_clone = box.geometry.clone(); 
var geometry_clone; 

for (var i = 0; i < 50; i++) { 

    box.geometry.dispose(); 
    //clone original geometry so it remains intact 
    geometry_clone = saved_clone.clone(); 
    box.geometry = geometry_clone; 
    modifier.set(direction, axis, counter).modify(box.geometry); 
    counter = counter + .001; 
    render(); 
} 

Трюк должен был клонировать и назначать 2 раза с момента удаления исходной геометрии. Я сделал это, чтобы восстановить исходную геометрию.

Моя анимация прошла гладко.