2017-06-04 39 views
0

我遇到了一個問題,我用下面的代碼創建了一個圓柱體,並且我一直在試圖移動它(回來,以便它的中心位於灰色光束的位置)。gluCylinder與glTranslate

但是,輸出完全沒有移動圓柱體,我沒有發現問題是什麼?

GLfloat plane[] = {0.0, 0.0, 1.0, 1.0}; 
glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE, plane); 
glBegin(GL_POLYGON); 
    glPushMatrix(); 
     glTranslatef(0.0f, 3.0f, -11.0f); 
     GLUquadricObj *quad = gluNewQuadric(); 
     gluCylinder(quad, 2, 2, 22, 30, 30); 
    glPopMatrix(); 
glEnd(); 

glFlush(); /* Complete any pending operations */ 
glutSwapBuffers(); 

回答

2

您必須刪除glBeginglEnd電話。這兩個命令之間不允許你調用的函數。

+0

哦對,我看到 所以基本上,開始/結束應該永遠是最內在的東西呢? – Astantos

+0

@Astantos:是的。在這裏,我相信,'gluCylinder'已經叫它們了。 – ybungalobill