Open_GL中的多边形材料
polygon material in Open_GL
我试图改变多边形的材料,但它不起作用,我不知道为什么,
面不受GL_AMBIENT、GL_DIFFUSE、GL_SPECULAR和GL_SHININESS的影响。
GLfloat mat_ambient[] = { 1, 0.5, 0, 1.0 };
GLfloat mat_diffuse[] = { 0.4, 0.2, 0, 1.0 };
GLfloat mat_specular[] = { 0.774597, 0.774597, 0.774597, 1.0 };
GLfloat mat_shine = 0.6;
glMaterialfv (GL_FRONT, GL_AMBIENT, mat_ambient);
glMaterialfv (GL_FRONT, GL_DIFFUSE, mat_diffuse);
glMaterialfv (GL_FRONT, GL_SPECULAR, mat_specular);
glMaterialf (GL_FRONT, GL_SHININESS, mat_shine * 128);
glPushMatrix();
glTranslatef(axeX, axeY, 0);
glRotatef(angle, 0, 0, 1);
glBegin(GL_POLYGON);
glNormal3f(0,0,1);
glVertex3f (-0.25, 0.5, 1.0);
glVertex3f (-0.5, 0.25, 1.0);
glVertex3f (-0.5, -0.25, 1.0);
glVertex3f (-0.25, -0.5, 1.0);
glVertex3f (0.25, -0.5, 1.0);
glVertex3f (0.5, -0.25, 1.0);
glVertex3f (0.5, 0.25, 1.0);
glVertex3f (0.25, 0.5, 1.0);
glEnd();
glPopMatrix();
确保你glEnable(GL_COLOR_MATERIAL)
,正如Ananthanonline建议的那样,确保照明设置好。
编辑:
对不起,你可能需要, glDisable(GL_COLOR_MATERIAL)
由于启用它指定了每个顶点的颜色。 虽然考虑一下,但它可能没有任何影响,因为您没有指定顶点颜色。
你能展示一下灯光的设置方式吗? 您在镜面反射/漫反射等灯光上指定了什么颜色?
相关文章:
- 计算缩放多边形的比例,得到给定的多边形面积
- 将QGraphicsItem的移动区域限制在多边形区域内
- 重新排列单线以形成闭合多边形?
- 提升几何体:C++并集多个多边形
- 在 QT C++中绘制/操作多边形
- Maya API C++:从多边形获取材质
- 添加带有提升的多边形::p奥利贡不编译?
- 使用 C++在 OpenGL 中对 3D 多边形进行纹理处理
- 使用 C++在 OpenGL 中移动自动旋转的 3D 多边形
- 如何使用增强::几何计算多边形的旋转固体体积?
- 从拉伸多边形构建多面体
- 使用提升几何缓冲区缩放多边形时的冗余折点
- cgal多边形网格中的tet网格密度分级
- 如何绘制具有随机顶点数量的多边形并旋转它们
- 是什么将程序集转换为实际可执行的材料
- 多边形裁剪 - 一点点详细说明
- 使用裁剪器库在线和多边形之间相交
- 平移 CGAL 多边形,而无需循环穿过折点
- 无法正确改变窗口中多边形的形状
- Open_GL中的多边形材料