如何补间three.js中的对象顶点

时间:2015-04-04 12:57:00

标签: three.js tween.js

嗨,我需要能够补充高度'一个对象。我环顾四周,看起来我需要将具有等于当前高度的.z值的顶点单独补间到新的高度。

这是我到目前为止所得到的,但一切都没有发生。我在每个顶点上的循环中调用tweenVertex,其中.z值等于旧的高度。

var tweenVertex = function(object, vertex, height){
    object.geometry.dynamic = true;
    new TWEEN
    .Tween({amount: vertex.z})
    .to({amount: height}, 2000)
    .onUpdate(function () {
         vertex.z = this.amount;
    })
    .start();
    object.geometry.verticesNeedUpdate = true;};

1 个答案:

答案 0 :(得分:1)

此处有更多内容,将补间设置为变量,不要在补间变量中使用对象声明,声明新的数字变量然后将补间作为数组运行。 最后,不要像scale = xx那样手动设置对象中的参数,总是使用函数scale.set(vals),还有更多的操作要做更改属性,比如照明,材质,都必须更新,类函数做更新three.js发布之后,任何你从来没有遇到过麻烦

from = 10;//vertex.z
to = 15;//height

var tween = new TWEEN
    .Tween({amount: from})
    .to({amount:to}, 2000)
    .onUpdate(function () {
         //vertex.z = this.amount;
object.scale.set(0,0,this.amount);
    })
    .start();