1

我有一个通过 PowerVR 仿真库在 iOS、Android 和 PC 上运行的 OpenGL ES 2 代码库。

当我在 LG Optimus G LGE971 上运行此代码时,我看到我的模型上有黑色伪影:

http://imageshack.us/photo/my-images/594/renderartifacts.png/

我的第一反应是近剪裁平面可能是问题所在,但由于这些伪影仅出现在选定的设备上,我不认为这是问题所在。关于可能导致这种情况的任何其他想法?

此外,上图中没有很好地捕捉到这一点,但工件不是静态的——它们会随着模型的旋转而移动,等等。

4

2 回答 2

0

我认为着色器代码中的光照计算可能是错误的。

这看起来就像只使用环境光而没有漫反射和镜面反射。

我还希望您检查是否将纹理从 BGRA 转换为 RGBA。

于 2013-02-24T23:11:01.657 回答
0

该问题已得到修复。我通过使用解决了这个问题

glTexImage2D()

当我设置我的 mipmap 级别时,缓冲区为 NULL,然后使用

glTexSubImage2D()

将纹理数据上传到每个级别时。

于 2013-03-14T19:10:04.017 回答