0
我想讓3個窗口代表圍繞給定軸的旋轉。 爲此我做了一個類XYZAxis
其中包含功能render
。 接下來,從主函數中我調用生成GLUT窗口的函數creatWindow
。 但是我不知道如何正確地傳遞函數渲染glutDisplayFunc
:( 片段的主要glutDisplayFunc功能指針
void (XYZAxis::* pmf)(void);
pmf = &XYZAxis::render;
XYZAxis *xaxis=&XYZAxis(origin,5,10);
glutDisplayFunc(void(xaxis->*pmf)()) ;
glutIdleFunc(void(xaxis->*pmf)());
和XYZAxis類中的一個函數
void render(void)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
this->orientation=this->orientation*(this->angle);
this->draw();
glutSwapBuffers();
}
程序編譯但是當它到達glutMainLoop()
; 它拋出錯誤並關閉窗口
GLUT:Warning in(una med):以下是GLUT 3.0的新檢查;更新 你的代碼。 GLUT:致命錯誤(unamed):窗口1需要重新顯示,但沒有顯示 回調。
如何正確地做它?任何想法?