我目前正在开发基于NDK的OpenGL ES 2.0应用程序 . 我正在使用libjpeg垂直翻转它来加载纹理(正如OpenGL标准所说) . 它适用于三星Galaxy SII,HTC Desire HD等(Windows的SDL实现) . 但是在某些手机上(比如三星Galaxy S GT-I9000来自Android Market用户的报道),有一个旧的Android特定问题,orign位于图像的顶部/左侧,而不是底部/左侧 . 如果我在运行时翻转纹理,我该怎么判断?
我考虑过为纹理渲染一些测试模式然后分析输出,但这是太复杂的变通方法 . 必须有一些更简单的方法 .
谢谢!
2 回答
看起来我自己修复了这个问题 . 我已经开始使用压缩的ETC1纹理而不是未压缩的纹理,这有助于解决这个奇怪的问题 .
我想问你关于你的问题......
我在gt-i9000设备和使用PowerVR SGX540或PowerVR SGX530 gpu的所有其他设备上加载纹理时遇到一些问题 .
我正在使用ETC纹理 . 它们适用于所有其他设备,但在这些设备上,一些纹理就像黑色......
你在glTexParameterf(...)函数中使用的是任何特定的设置吗?
我正在使用这些: