在我的应用程序中,我想获得最大常量缓冲区大小。有了DX,就有一个宏D3D10_REQ_CONSTANT_BUFFER_ELEMENT_COUNT
代表这个值。
我怎样才能得到这个值OpenGL
?
在我的应用程序中,我想获得最大常量缓冲区大小。有了DX,就有一个宏D3D10_REQ_CONSTANT_BUFFER_ELEMENT_COUNT
代表这个值。
我怎样才能得到这个值OpenGL
?
OpenGL 没有这样的限制。
缓冲区对象可以是任意大小。但是,缓冲区对象的不同用途有不同的大小限制。顶点数组数据的来源本质上是无界的。但是缓冲区纹理有大小限制。统一缓冲区数据的绑定范围的大小是有限制的。并且根据需要,各种其他用途都有限制。但是内存缓冲区本身的大小没有限制。
基本上,将缓冲区对象视为指向 GPU 内存的指针,使用glBufferData
as malloc
。使用指针的不同 API 可以限制它们可以访问多少内存。但malloc
它本身并没有任何特别的限制(当然,除了内存不足)。