gpt4 book ai didi

iphone - OpenGL透视和光照问题

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:01:10 26 4
gpt4 key购买 nike

我有一个使用 OpenGL ES 1.1 渲染的示例 3d 场景。这是我在使用恒等投影矩阵时得到的结果(我还使用了法线贴图和高光贴图):

enter image description here

所以一切看起来都很好。

但是如果我使用 glFrustum 设置透视图,我会得到这个:

enter image description here

所以法线似乎被反转了,如果我尝试将它们乘以 -1,我会得到:

enter image description here

它的效果就像光线来自对面。

我还应该提到,在使用恒等投影矩阵时我必须设置

glCullFace(GL_FRONT);

(我认为这是因为标准化的设备坐标是左手坐标)。

我很乐意听到有关如何解决此问题的任何建议。

编辑。这是投影设置:

float right = 0.03;
float top = 0.045;
float near = 0.1;
float far = 100.0;

glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glFrustumf(-right, right, -top, top, near, far);

最佳答案

你的第二张截图看起来没问题,我看不出你的问题出在哪里。请在第二张图片中突出显示您认为不正确的地方。

请记住,在投影矩阵中,应该只有投影和某种相机放置。 “相机放置”属于模型 View 。

关于iphone - OpenGL透视和光照问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6642068/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com