我在OpenGL中有一个Spotlight源,指向纹理映射的球体。
我用球体旋转lightsource,这样如果我将球体旋转到“非光”侧,那边应该是黑暗的。
奇怪的是,聚光灯似乎在我的球体上闪耀(它是一个坚固的,三角形之间没有间隙。光似乎是'泄漏'到另一边。
有关为何发生这种情况的任何想法?
截图:
答案 0 :(得分:1)
很难从图像中分辨出来,但是:
检查是否正在设置GL_LIGHT_MODEL_TWO_SIDE(双面照明),但更重要的是要查看正在渲染的球体的法线。
编辑:此外 - 将背景颜色更改为更轻的颜色。哦,并确保你没有打开alpha混合渲染(可能是多边形排序问题)。
答案 1 :(得分:1)
好的,我是个笨蛋 - 我正在指定我的法线,但没有调用glEnableClientState(GL_NORMAL_ARRAY)。因此所有法线都面向一个方向(我认为这是默认的,不是吗?)
无论如何 - 从中学到的经验 - 总是回过头来看。