關於OpenGL入門中地球,月亮,太陽運動模擬無法顯示的問題(只顯示黑框)

myDisplay函數中的源碼如下:

glEnable(GL_DEPTH_TEST); 

glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); 

glMatrixMode(GL_PROJECTION); 

glLoadIdentity(); 

gluPerspective(75, 1, 1, 400000000); 

glMatrixMode(GL_MODELVIEW); 

glLoadIdentity();

 gluLookAt(0, -200000000, 200000000, 0, 0, 0, 0, 0, 1); 

// 繪製紅色的“太陽” 

glColor3f(1.0f, 0.0f, 0.0f); 

glutSolidSphere(69600000, 20, 20); 

// 繪製藍色的“地球” 

glColor3f(0.0f, 0.0f, 1.0f);

 glRotatef(day/360.0*360.0, 0.0f, 0.0f, -1.0f); 

glTranslatef(150000000, 0.0f, 0.0f); 

glutSolidSphere(15945000, 20, 20); 

// 繪製黃色的“月亮” glColor3f(1.0f, 1.0f, 0.0f); 

glRotatef(day/30.0*360.0 - day/360.0*360.0, 0.0f, 0.0f, -1.0f); 

glTranslatef(38000000, 0.0f, 0.0f); 

glutSolidSphere(4345000, 20, 20); 

glFlush();

按照這個參數去設置時無法顯示太陽,月亮和地球;原以爲是沒有添加glViewport函數,加上後,仍不顯示。原因在哪?

其實是參數設置的過大,可以把太陽,月亮,地球的大小,距離同時縮小1000倍,就能正常顯示了


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章