Threejs是否可以更新或覆盖几何?

时间:2016-10-15 01:55:27

标签: 3d three.js

我需要做这样的事情。 (这只是一个示例代码,只是为了向您展示逻辑)

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();
}

我正在使用弯曲修改器来设置弯曲动画,但每次使用弯曲修改器时我都需要恢复到几何体的原始状态。可能吗??

1 个答案:

答案 0 :(得分: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次,因为你正在处理原始几何体。我这样做了,所以我可以恢复原始的几何形状。

我的动画很顺利。

相关问题