iPhone,浮动纹理

iDe*_*Dev 3 iphone floating-point textures opengl-es

我需要将GL_ RGBA32F作为内部格式,但我在OpenGL ES实现中没有这个.而不是这个我只获得GL_FLOAT作为纹理数据类型.该OES_texture_float规范有什么可说的里面有什么.所以我不知道,我的纹理数据是否会被归一化为[0,1].基本上我需要存储纹理未夹紧的纹理数据,无论它是浮点数还是整数值.我如何在纹理中得不到规范化数据?

Nic*_*las 5

遗憾的是,OpenGL ES将参数视为glTex(Sub)Image*与桌面OpenGL不同.

在桌面OpenGL中,定义纹理的实际格式的是internalformat.在GL ES 2.0中,定义它的是格式类型值.因此,如果您上传(GL_RGBA,GL_UNSIGNED_BYTE)纹理,那相当于使用GL_RGBA8作为内部格式.

这意味着,如果你想要一个浮点纹理,你可以使用(GL_RGBA,GL_FLOAT)作为格式类型参数.这是两个规范之间毫无意义的不一致.