2015-11-01 104 views
-1

我需要通過keyboardup方法繪製立方體的幫助,例如,如果我點擊'一個',那麼必須顯示一個立方體。 我已經達到了迄今爲​​止繪製立方體,如果任何鍵點擊opengl 3d

void KeyUp(unsigned char key, int x, int y) { 
    if (key == 'a') {glutSolidCube(5);} 
    glutPostRedisplay(); 
} 

,但沒有出現在OpenGL的。

想讓你知道,當我把glutSolidCube(5);在它的工作顯示方法。

回答

1

在鍵盤迴調中(並保留glutPostRedisplay())和(選擇性地)在顯示回調中繪製立方體,切換「顯示立方體」布爾值。

+0

如果我想添加多個立方體,那麼我必須聲明更多的布爾值? –

1

但是在opengl中沒有任何東西出現。

因爲在使用鍵盤方法繪製glutSolidCube(5)之後,請在顯示方法中清除視口。因此,所有繪製的東西都被清除了。

當我把glutSolidCube(5);在它的顯示方法中起作用。

它正在那裏工作,因爲您可能在清除視口和發佈之前在正確的位置(即)繪圖。

聲明全局布爾值並在關鍵回調方法中將其設置爲true。 使用布爾值來決定是否必須在顯示方法中繪製立方體。