以下は四角形を描画するコードですが、glutdisplayFunc() でエラーが発生します。どうすれば修正できますか?
#include <iostream>
#include <glut.h>
using namespace std;
class GUI
{
public:
int W,H;
GUI()
{
W = 800;
H = 600;
glClearColor(0, 0, 0, 0);
gluOrtho2D(-W, W, -H, H);
glMatrixMode(GL_PROJECTION);
}
void display()
{
glBegin(GL_POLYGON);
glVertex2d(-500, 300);
glVertex2d(500, 300);
glVertex2d(500, -300);
glVertex2d(-500, -300);
glEnd();
glFlush();
}
};
int main(int argv, char **argc)
{
GUI ob;
glutInit(&argv, argc);
glutInitDisplayMode(GLUT_RGB|GLUT_SINGLE);
glutInitWindowSize(ob.W, ob.H);
glutInitWindowPosition(100, 100);
glutCreateWindow("Queen Problem");
glutDisplayFunc(ob.display); //Error
glutMainLoop();
return 0;
}
Visual Studio 2010を使用しています。OpenGLでいくつかのプログラムを作成しましたが、クラスはありません。これは、OpenGL でクラスを使用する初めての経験です。
エラーは次のとおりです。
エラー 1 エラー C3867: 'GUI::display': 関数呼び出しに引数リストがありません。「&GUI::display」を使用して、メンバーへのポインターを作成します。
を使用しようとし&GUI::display
ましたが、エラーも発生しました。