更新Three.js中的网格几何?

问题描述:

我有两个网格:mesh1和mesh2。都具有相同数量的顶点并且具有挤出。更新Three.js中的网格几何?

mesh1 = 5000 vertices. 
mesh2 = 5000 vertices. 

我将mesh2的顶点分配给mesh1。那么我这样做:

mesh2.geometry.verticesNeedUpdate = true; 
mesh2.geometry.vertices = mesh1.geometry.vertices; 

因此mesh2的顶点被更新。但是这发生得太快了。在mesh2的顶点到mesh1的顶点时,我看不到动画。

我希望看到malla2开始变成malla1时的变换,我的意思是当顶点变化时看到顶点的动画。

我使用“Tween.js”来表示动画,如位置和颜色。我不确定这是否有助于在顶点开始更改时查看动画。

我做的:

new TWEEN.Tween(mesh2.geometry.vertices).to(mesh1.geometry.vertices, 1000).start(); 

而不是作品。对不起我的英语水平。

正如您所见,这不起作用 - 部分原因是因为每次调用更新网格顶点时,您还必须为每个这些帧调用geometry2.verticesNeedUpdate = true;

-

更具体的我想你会希望添加.onUpdate(function() { geometry2.verticesNeedUpdate = true; })到您的补间。

+0

谢谢!或多或少是我的问题的解决方案。 – yavg