![]() |
1
0
72、80和96不是二的幂;这一要求与OpenGL ES中的数据格式几乎没有关系。这一要求实际上在现代桌面GL中也是普遍存在的,它可能取决于所使用的数据格式。 (桌面)OpenGL 2.0或更高版本中的未压缩纹理数据可以具有二维非幂。 但是,压缩纹理数据仍然需要4倍的块大小,像素传输函数继续假设图像中每行的4字节数据对齐,浮点纹理(如果支持)可能还需要2的幂,以此类推。 许多为GL设计的图像库实际上会将内容重新缩放到二的幂,这可以解决上面讨论的每一个问题。这并不总是解决维度问题的最合适的方法(可能非常浪费),但它可以普遍应用于几乎所有常见的维度问题。 |