今天调试一段OpenGL的代码花了很长时间,原因是设置了很多材质参数,但是无论如何调试,显示出来的结果都表示我的材质设置不起作用。后来才发现在初始化的时候,输入完以下代码之后,需要再加一句很重要的命令 - glDisable(GL_COLOR_MATERIAL);
glEnable(GL_DEPTH_TEST);
glEnable(GL_LIGHTING);
glEnable(GL_LIGHT0);
glEnable(GL_NORMALIZE);
glShadeModel(GL_SMOOTH);
//[Important!!!]Disable color materials, so that glMaterial calls work
glDisable(GL_COLOR_MATERIAL);
只有加了 glDisable(GL_COLOR_MATERIAL);这句命令之后,在其后输入的 glMaterialfv 和 glMaterialf等命令才会生效。顺便推荐一个很不错的OpenGL Tutorial的网站:
版权声明:本文为chenwk891原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。