如何使用 OpenGL 获取最大恒定缓冲区大小?

1 opengl

在我的应用程序中,我想获得最大恒定缓冲区大小。DX中有一个宏D3D10_REQ_CONSTANT_BUFFER_ELEMENT_COUNT代表这个值。

我怎样才能得到这个值OpenGL

Nic*_*las 6

OpenGL没有这样的限制。

缓冲区对象可以是任意大小。然而,不同用途的缓冲区对象有不同的大小限制。顶点数组数据的来源本质上是无限的。但缓冲区纹理有大小限制。统一缓冲区数据的绑定范围的大小是有限制的。根据需要,各种其他用途也有限制。但内存缓冲区本身的大小没有限制。

基本上,将缓冲区对象视为指向 GPU 内存的指针,使用glBufferDataas malloc。使用指针的不同 API 可能会限制它们可以访问的内存量。但malloc 它本身没有任何特定的限制(当然,除了内存不足)。