0

我有很多不同的格式 RBG、RBGA 和 ALPHA,加载纹理需要在 1 和 4 之间更改 GL_UNPACK_ALIGNMENT。这值得缓存吗?说有一个变量“对齐”并仅在状态不同时才调用 glPixelStorei 而不是一直调用 glPixelStorei 。

与纹理切换相同的想法。

4

1 回答 1

0

好吧,让我们考虑一下。

每一次改变GL_PACK_ALIGNMENT,你也即将打电话glTexSubImage。这个函数充其量只会引发从客户端内存到 OpenGL 内部纹理内存的 DMA 操作。如果您不使用 PBO,那么这也意味着该函数必须将该客户端内存复制到内部存储中以执行 DMA。即使您使用的是 PBO,您也必须将复制操作复制到该内存中。

您是否真的认为更改包装对齐状态将意味着您正在执行的操作旁边的任何性能方面?您认为计算字形的位图或将位图数据上传到纹理会比更改该状态更快吗?

别担心。

于 2013-07-31T17:40:52.273 回答