0

我已经加载了一个对象,当我绘制对象时,我将颜色设置为绿色。绘制对象后,我用红色绘制线条。

一切都很好。当我输入照明属性时出现问题。当我创建一个光源时,灯光投射的所有东西都会变成白色。为什么灯光会写我的颜色?我该如何解决这个问题?

提前致谢..

4

1 回答 1

2

您拥有的代码将有助于诊断问题。这听起来像是为项目设置材质(定义它们如何与灯光交互)的问题。

您可能需要查看glColorMaterial函数。以下代码片段将进行设置:

GLfloat mat_specular[] = {0.3, 0.3, 0.3, 1.0};
GLfloat mat_shininess[] = { 10.0 };
glMaterialfv(GL_FRONT, GL_SPECULAR, mat_specular);
glMaterialfv(GL_FRONT, GL_SHININESS, mat_shininess);
glColorMaterial(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE);
glEnable(GL_COLOR_MATERIAL);
于 2009-12-11T10:34:16.483 回答