Opengles:模型中的每个三角形都是相同的亮度

时间:2013-10-30 00:33:34

标签: ios opengl-es lighting

我的模型中几乎没有对比。 尽管模型形状复杂,但模型看起来像一个大块。我真的只能看到它的轮廓形状。我在形状内部可以看到的唯一细节是由聚光灯产生的,无论我如何调整它,它总是非常微弱。

让对象的形状清晰显示并获得对比的关键是什么?

2 个答案:

答案 0 :(得分:0)

您是否为三角形创建了法线并将其传递给了?您从未提及这些,并且在定向照明工作之前需要曲面法线(法线是垂直于每个曲面的光线,通常是从曲面的中心开始。

我没有方便的OpenGL参考,但我记得有三种照明方式,环境和镜面反射,其中环境是全局的,方向和漫反射取决于照明方向和表面法线。

我建议先从1个光源开始计算出来,然后在单灯正常工作后添加更多灯光。

答案 1 :(得分:0)

问题是,虽然我正在创建法线并为它们提供glNormalArray,但我没有启用GL_NORMALIZE因此它们没有被使用。我一直认为GL_NORMALIZE会自动创建法线,这与我想要的相反。