【发布时间】:2011-02-10 18:12:47
【问题描述】:
我有一个 iPhone (OpenGL ES 1.1) 应用程序,它可以对纹理进行一些渲染。我正在设置一个帧缓冲区对象并使用 glFramebufferTexture2D 将纹理附加到它。
一切都很好,只是在绘制到这个帧缓冲区对象时光的方向是相反的。我正在指定这样的光线方向:
float theDirection[4] = { x, y, z, 0 }
glLightf( lightIndex, GL_POSITION, theDirection )
在没有帧缓冲对象的情况下渲染时,我所有的光线方向都是正确的。使用帧缓冲区对象进行渲染时,我必须否定 theDirection 以使事物看起来相同。
附带说明,当我在装有 iOS 3.2 的 iPhone 3G 上运行时,光线方向也会反转(有或没有帧缓冲区对象)。如果我在 4.x 的 iPhone 或 iPad 上运行,灯光方向不会反转。
有什么想法吗?
【问题讨论】:
标签: iphone iphone-sdk-3.0 ios4 opengl-es