onigiriTurnA回答ポイント なしウォッチ

freeglut / openGL / C++ に関する質問です。(おそらく初歩)


freeglutを利用してopenGLの勉強を始めたのですが、ウインドウの変形イベントを正常に受け取れず困っています。コードは以下です。

//==========================================================
#define WIDTH 600
#define HEIGHT 400

void resize(int w, int h) //ウィンドウサイズを戻す
{
glutReshapeWindow(WIDTH, HEIGHT);
cout << "resize()\n";
}

void init()
{
glClearColor(0.0, 0.0, 0.0, 1.0);
glOrtho(0, WIDTH, HEIGHT, 0, -1, 1);
cout << "init()\n";
}

int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitWindowSize(WIDTH, HEIGHT);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA);

glutCreateWindow(argv[0]);
init(); //自前の初期化用関数
//ここです!!! ----------------------------------------------
glutReshapeFunc(resize); //ウィンドウサイズが変わった時呼び出される
//----------------------------------------------------------
glutMainLoop();

return 0;
}
//==========================================================

試してみたところ、ウィンドウに触れていない状態でも resize() が常に呼び出され続けていました。

環境は、
win7(64bit) / VS2012 / freeglut-2.8.1
です。

どこに原因があるのでしょうか。どなたかアドバイスよろしくお願いいたします。

ログインして回答する
回答がありません

この質問へのコメント

コメントはありません

この質問への反応(ブックマークコメント)

質問の情報

登録日時
2013-10-16 21:01:13
終了日時
2013-10-23 21:05:04
回答条件
1人10回まで

この質問のカテゴリ

この質問に含まれるキーワード

OpenGL29C++540win7358関数2326Char156ウインドウ390初期化581ARGV23

人気の質問

メニュー

PC版