【发布时间】:2009-02-12 20:47:56
【问题描述】:
有谁知道将过多的 OpenGL 调用放入显示列表会导致它失败吗?如果是这样,有没有人估计有多少电话可以做到这一点?和显存有关系吗?
我从 JOGL 调用 OpenGL,但我认为这并不重要。
【问题讨论】:
有谁知道将过多的 OpenGL 调用放入显示列表会导致它失败吗?如果是这样,有没有人估计有多少电话可以做到这一点?和显存有关系吗?
我从 JOGL 调用 OpenGL,但我认为这并不重要。
【问题讨论】:
根据documentation page,如果您尝试编译一个太大的列表,您应该会收到GL_OUT_OF_MEMORY 错误消息。
确保在创建列表之前和之后调用 glGetError() 并处理所有结果,直到返回 GL_NO_ERROR。
似乎没有办法估计一个列表可以包含的命令数量。这可能是因为每个命令根据其参数和使用的设备特定编码采用不同的大小。列表保存在卡的视频内存中,因此如果您使用的是相对非陈旧的卡,这对于任何大小合理的列表通常都不是问题。 如果您确实发现这确实是问题所在,您可能可以使用顶点数组甚至 VBO
【讨论】: