-2

在 OpenGL 中绘制实例时,属性除数只能设置为 255 作为最大值,因此要组合大网格我必须分成几个实例。我需要更多地了解 OpenGL 中的除数,最大限制是否取决于驱动程序/GPU,或者每个设备上总是 255?

4

1 回答 1

1

您误解了除数和实例数组的工作原理。

实例化意味着多次渲染同一个网格,提供不同的实例数据,如转换等。实例数组是提供每个实例数据的一种方式。

除数不是顶点数的除数。它是实例数的除数。因此,如果您使用实例化渲染,它实际上只会做一些有用的事情。

如果除数为零,则该属性不会发生实例化。如果除数为 1,则实例中所有顶点的属性将相同,但下一个实例将获得下一个值。如果除数为 2,那么前两个实例将获得相同的值,但接下来的两个实例将获得不同的值。等等。

除非你对实例化做了一些非常特别的事情,否则你的除数应该是 0 或 1。它不应该基于顶点数。

于 2017-02-26T20:01:16.210 回答