我正在开发一款使用OpenGL纹理的Mac应用程序,我使用glTexImage2D从磁盘上的图像文件中加载纹理。
根据文档,在OpenGL版本>= 2.0时,纹理可以是任意大小。 (对于版本<2.0,x和y维度都必须是2的幂。)
然而,如果我的图像尺寸不是4的倍数,则会出现纹理失真的问题。 我已经搜索了很多,但找不到关于这个要求的任何文档。 实际上,“红皮书”明确说明,对于版本> = 2.0,纹理维度可以是任何值。
我错过了什么?
将纹理转换为下一个最大的2的幂维度是否具有性能优势? 我的应用将需要Mac OS 10.6.6或更高版本,这应该适用于任何Intel Mac。 一些早期的Intel Mac具有非常“卑微”的图形硬件。
非常感谢任何帮助。
根据文档,在OpenGL版本>= 2.0时,纹理可以是任意大小。 (对于版本<2.0,x和y维度都必须是2的幂。)
然而,如果我的图像尺寸不是4的倍数,则会出现纹理失真的问题。 我已经搜索了很多,但找不到关于这个要求的任何文档。 实际上,“红皮书”明确说明,对于版本> = 2.0,纹理维度可以是任何值。
我错过了什么?
将纹理转换为下一个最大的2的幂维度是否具有性能优势? 我的应用将需要Mac OS 10.6.6或更高版本,这应该适用于任何Intel Mac。 一些早期的Intel Mac具有非常“卑微”的图形硬件。
非常感谢任何帮助。