在 iOS 上的 OpenGL ES 2.0 中创建 16 位亮度纹理

2024-06-19

我的文件中有 16 位数据,我正在尝试将其加载到 iOS 上的 OpenGL 亮度纹理中。如果我手动将 16 位值重新调整为 8 位,我可以按如下方式加载和显示数据:

glTexImage2D(GL_TEXTURE_2D, 0, GL_LUMINANCE, width, height, 0, GL_LUMINANCE,GL_UNSIGNED_BYTE, 
                 (void*)data_8bit);

但是我可以让 glTexImage2D 进行从 16 位到 8 位的转换吗?

查看 OpenGL 2.0 规范,16 位类型的允许值为:

GL_UNSIGNED_SHORT_5_6_5, GL_UNSIGNED_SHORT_4_4_4_4 GL_UNSIGNED_SHORT_5_5_5_1

没有 GL_UNSIGNED_SHORT,我认为我不能使用以上任何一个。

我使用的是 iOS 5.1 和 Xcode 4.3.2。


None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 iOS 上的 OpenGL ES 2.0 中创建 16 位亮度纹理 的相关文章

随机推荐