私はopenglbook.comのopenGLチュートリアルに従っており、要求されたときにシナリオをシミュレートしようとしています。OpenGLコンテキストはコンピューターで使用できません。私のラップトップopenglビデオドライバーのバージョンは3.0で、3.3を要求しています。目標は、エラーから適切に回復することです。コードは次のとおりです。
glutInitContextVersion(3, 3);
glutInitContextFlags(GLUT_FORWARD_COMPATIBLE);
glutInitContextProfile(GLUT_CORE_PROFILE);
glutSetOption(GLUT_ACTION_ON_WINDOW_CLOSE,GLUT_ACTION_GLUTMAINLOOP_RETURNS);
glutInitWindowSize(CurrentWidth, CurrentHeight);
glutInitDisplayMode(GLUT_DEPTH | GLUT_DOUBLE | GLUT_RGBA);
WindowHandle = glutCreateWindow(WINDOW_TITLE_PREFIX);
if (WindowHandle < 1) {
fprintf(
stderr,
"ERROR: Could not create a new rendering window.\n"
);
return -1;
}
私が抱えている問題は、プログラムが途切れることです。
WindowHandle = glutCreateWindow(WINDOW_TITLE_PREFIX);
また、glutCreateWindow()はそれ自体でexit()を実行しているように見えるため、戻りコードを確認することすらできません。Cでこれらのタイプの状況を処理するための最良の方法は何ですか?