【发布时间】:2015-04-01 13:09:24
【问题描述】:
是否可以在 three.js 中变形两个缓冲区几何?有没有好的例子可以参考?我对使用变形目标影响手动变形特别感兴趣。
【问题讨论】:
-
由于您可以使用第二个几何体的属性作为您的变形目标,这个答案可能会有所帮助:stackoverflow.com/a/44092250/1314762
标签: javascript three.js buffer-geometry
是否可以在 three.js 中变形两个缓冲区几何?有没有好的例子可以参考?我对使用变形目标影响手动变形特别感兴趣。
【问题讨论】:
标签: javascript three.js buffer-geometry
一种可能的解决方案是从字面上手动进行变形。下面是我所做的,我也在寻找更优雅的解决方案。此外,我不太确定这里的性能问题。
for (var b = 0; b < 5; b++) { // iterate through 5 morph targets
var deltaVertices = blendshapes[b].children[0].geometry.attributes.position.array;
for (var i = 0; i < vertices.length; i++) {
// blend other shapes as delta to the Neutral one
3D_Model.children[0].geometry.attributes.position.array[i] += weight_b * deltaVertices[i];
}
}
“blendshapes”是使用 OBJLoader.js 加载的 OBJ 3D 模型
【讨论】: