0

Windows XP virtualbox に devcpp 4.9.9.2 を再インストールし、glut と glew をインストールしました。

私の元のプログラムは glut を使用しただけで、いくつかの球体が部屋の周りを跳ね回っています。私の問題は、行に追加すると

glGenFramebuffers(1, &myBuffer);

私のプログラムは実行できません。それはうまくコンパイルされます。しかし、実行すると、「Ass1.exe に問題が発生したため、終了する必要があります。ご迷惑をおかけして申し訳ありません。」と表示されます。

この行をコメントアウトすると、ボールが跳ね返って問題なく動作します。glGenFramebuffers は、セットアップ メソッドの一番下にあります。

ここに私のコードへのリンクがあります。https://dl.dropboxusercontent.com/u/13330596/Exercise1.cpp


これは glewInit(); を呼び出す直前のコードです。

// Initialize GLUT.
glutInit(&argc, argv);

// Set display mode with an RGB colour buffer, double buffering and a depth buffer..
glutInitDisplayMode( GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH ); 

// Set OpenGL window size
glutInitWindowSize(1000, 1000);

// Set position of OpenGL window upper-left corner
glutInitWindowPosition(100, 100); 

// Create OpenGL window with title
glutCreateWindow("Dissertation");


glewInit();
4

1 に答える 1

3

glewInit();拡張機能を使用する前に呼び出す必要があります。おそらくそうしなかったので、関数ポインターはまだヌルポインターです。glewInitコンテキストが作成されてバインドされた後に呼び出す必要があります。GLUTを使用する場合、これは直後ですglutCreateWindow(…);

于 2013-04-28T11:02:14.270 に答える