光照

    今天弄了一天的聚光灯效果,到下班时才明白问题所在。这一天整的,把红宝书都翻好几篇了,一直拿一个聚光灯照着个正方形,老是没有聚光的效果!总结

    后来终于想到点子上去了,仍是我对光照计算理解得不够,OpenGL的光照是按顶点计算的,我整了一个大的正方形,虽然有了光,可是只在四个顶点处计算光照效果,而我又选了GL_SMOOTH模式,四个顶点处的光照效果将会在整个正方形上进行插补。因此即便用了聚光灯效果,看起来也跟环境光的效果差很少。最后,将大的正方形分解成几百个小正方形,终于和书上说的效果同样了!!

    总结:OpenGL进行3D效果模拟时,必定要分解,多加顶点~ 呵呵