对于上下文,我正在尝试在OpenGL中建模一个简单的1x1乐高积木。我设置相机来查看原点,“向上”是Y方向。我正在尝试为立方体上的小小块绘制一个圆柱体,并且无法弄清楚如何旋转它。 C ++代码:
//draw cylinder
glPushMatrix();
glTranslated(0.0, 0.4 , 0.0);
//glRotatef(angle, 1.0f, 0.0f, 0.0f);
GLUquadricObj * qobj = gluNewQuadric();
gluCylinder(qobj, 0.24, 0.24, 0.18, 16, 16);
glPopMatrix();
我试图围绕x轴旋转90度,但glRotatef似乎没有做任何事情,或只是让整个事情消失。我错过了什么?
答案 0 :(得分:1)
对我来说很好:
glPushMatrix();
GLUquadricObj * qobj = gluNewQuadric();
glTranslated(0.0, 0.4 , 0.0);
glRotatef(angle * 10, 0.0f, 1.0f, 0.0f);
gluCylinder(qobj, 1.24, 1.24, 1.18, 16, 16);
gluDeleteQuadric(qobj);
glPopMatrix();
无论我使用过哪种 glRotate 和 glTranslate 。