直接代码说明吧。
1、在使用(固定管线的)光照后,这2个函数才生效
glEnable( GL_LIGHTING );
/// 设置光源属性
///...
2、使用glMaterial指定3D模型的材质,以环境光颜色为例
glm::vec4 ambientColor(1.0f,0.0f,0.0f,1.0f);
glMaterialfv( GL_FRONT_AND_BACK, GL_AMBIENT, &ambientColor.x );
3、与2等价的效果: 使用glColorMaterial指定3D模型的材质
glEnable(GL_COLOR_MATERIAL);
glColorMaterial(GL_FRONT_AND_BACK, GL_AMBIENT );
/// 指定顶点的颜色属性
/// 如使用glBegin指定图元时,glColor设置的颜色,
/// 如果和上面glMaterial效果一样:需要把所有color设置为(1.0f,0.0f,0.0f,1.0f)
版权声明:本文为iMatt原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。