0

我无法绘制颜色材料。如何绘制彩色材料?我尝试了下面的代码:

 glMaterialfv(GL_FRONT, GL_AMBIENT, material._Ka);
 glMaterialfv(GL_FRONT, GL_DIFFUSE, material._Kd);
 glMaterialfv(GL_FRONT, GL_SPECULAR, material._Ks);
 // glMaterialfv(GL_FRONT_AND_BACK, GL_EMISSION, ...);
 glMaterialfv(GL_FRONT, GL_SHININESS, material.Ns);

 //glColor4fv(material._Kd);

 glColorMaterial(GL_FRONT, GL_DIFFUSE);
 glColorMaterial(GL_FRONT, GL_SPECULAR);
 glColorMaterial(GL_FRONT, GL_AMBIENT);
 glColorMaterial(GL_FRONT, GL_SHININESS);

这会导致以下错误(错误 1280):

glColorMaterial(GL_FRONT, GL_SHININESS);
4

1 回答 1

3

如果您查找错误代码 1280(十六进制的 0x0500),您会注意到它是GL_INVALID_ENUM.

或者换句话说,您使用的枚举值对于glColorMaterial.

查找glColorMaterial,不难看出这GL_SHININESS不是一个可接受的值。所以有你的问题。

于 2013-08-06T12:46:09.590 回答