如何渲染非索引的BufferedGeometry的子集?

时间:2016-05-05 15:50:45

标签: three.js

我正在处理非索引的 BufferedGeometry 。我希望每帧重复使用相同的 BufferedGeometry

  1. 渲染整个缓冲区
  2. 渲染缓冲区的子集(例如,前120个顶点)
  3. 我尝试使用.addDrawCall(start, count),我收到了以下错误:

      

    THREE.BufferGeometry:.addDrawCall()现在是.addGroup()。

    看到.addGroup(start, count)使用类似的签名,我改为它,但没有效果。

    修改:我刚刚注意到有关.drawcalls数组的这一段,这意味着我无法使用此功能:

      

    对于使用索引三角形的几何图形,此数组可用于将对象拆分为多个WebGL绘制调用。

    使用 BufferedGeometry 实现目标的任何方法?

    three.js r76

1 个答案:

答案 0 :(得分:1)

要渲染非索引BufferGeometry顶点的子集,请使用此模式:

geometry.setDrawRange( startVertex, numVerticesToDraw );

有关相关信息和现场演示,请参阅this answer

three.js r.76