【发布时间】:2015-01-08 01:41:25
【问题描述】:
是否可以仅在渲染时合并顶点?我正在做一系列变形,需要顶点列表保持不变,但是我想合并顶点以获得立方体相机上的平滑反射。有人知道类似于取消合并顶点的命令吗?
【问题讨论】:
标签: javascript three.js
是否可以仅在渲染时合并顶点?我正在做一系列变形,需要顶点列表保持不变,但是我想合并顶点以获得立方体相机上的平滑反射。有人知道类似于取消合并顶点的命令吗?
【问题讨论】:
标签: javascript three.js
你试过吗?它应该工作。 您需要致电
geometry.verticesNeedUpdate()
geometry.elementsNeedUpdate()
告诉three.js,顶点和面分别发生了变化。您可能还需要调用其他更新函数(例如,如果法线发生了变化)。更多细节在这里:https://github.com/mrdoob/three.js/wiki/Updates
请注意该页面上的注释,即顶点总数不能更改。这可能需要您对临时几何体进行合并,然后将顶点复制到渲染的几何体。
【讨论】:
好的,这不在文档部分,但您需要使用 explode 修饰符,如本示例所示:http://threejs.org/examples/#webgl_geometry_tessellation
var explodeModifier = new THREE.ExplodeModifier();
explodeModifier.modify( geometry );
geometry.computeFaceNormals();
geometry.computeVertexNormals();
//This will undo the geometry.mergeVertices();
【讨论】: