假设我在顶点列表中有一个具有不必要顶点的几何体。但是这些不必要的顶点在这个几何体的面部列表中没有被引用。由于未使用的顶点,渲染此几何体时,three.js是否会进行额外的计算,还是会忽略这些顶点?
答案 0 :(得分:0)
Three.js在技术上并不关心顶点列表的内容。它使用该数据创建缓冲区,并将其发送给GPU。面部列表也是如此。
GPU将查看面缓冲区以确定用于绘制特定面的顶点。如果顶点列表中有额外的顶点,则应该被忽略,但它们做会占用额外的内存。
看看BufferGeometry如何构建其顶点列表(BufferGeometry.attributes.position
)和面部列表(BufferGeometry.index
)。这更接近于GL和GPU如何使用这些列表,并且应该让您更清楚地了解关系如何工作。