最終更新: mikk_ni3_92 2008年11月13日(木) 13:38:19履歴
現在地 >> メニュー >> 準備編03
INDEX:準備編02 << 準備編03 >> 準備編04
glewは、最初に「glewInit()関数」で初期化する必要がある。
[例]
glewのバージョン、OpenGL ver1.2がサポートされているかをチェックする
INDEX:準備編02 << 準備編03 >> 準備編04
glewは、最初に「glewInit()関数」で初期化する必要がある。
[例]
... ...
int main(int argc, char **argv)
{
glutInit(&argc,argv);
glutCreateWindow("glew");
... ...
GLenum err;
err = glewInit();
if (err != GLEW_OK){
std::cerr << glewGetErrorString(err) << "\n"; //エラーを出力
return -1;
}
glutMainLoop();
return 0;
}
... ...
glewのバージョン、OpenGL ver1.2がサポートされているかをチェックする
#include <iostream> #include <GL/glew.h> //先に記述する #include <GL/glut.h> //----------- プロトタイプ宣言 --------------// void display(); void GLEW_CHECK(); //--------- OpenGLの初期設定 ------------// void GLUT_INIT() { glutInitDisplayMode(GLUT_RGBA); glutCreateWindow("Hello glew"); } //---------- glewの初期化 -----------// bool GLEW_INIT() { GLenum err; err = glewInit(); if (err != GLEW_OK){ std::cerr << glewGetErrorString(err) << '\n'; return false; } return true; } void GLUT_CALL_FUNC() { glutDisplayFunc(display); } void MY_INIT() { glClearColor(0.0, 0.0, 1.0, 1.0); GLEW_CHECK(); } int main(int argc, char **argv) { glutInit(&argc,argv); GLUT_INIT(); GLEW_INIT(); //glewの初期化 GLUT_CALL_FUNC(); MY_INIT(); glutMainLoop(); return 0; } //-----------ここから各種コールバック------------// void display() { glClear(GL_COLOR_BUFFER_BIT); glFlush(); } void GLEW_CHECK() { //glewのバージョン取得 std::cout << "glew ver: " <<glewGetString(GLEW_VERSION) << '\n'; //OpenGLのバージョンを取得 std::cout << "OpenGL ver 1.2 is "; glewIsSupported("GL_VERSION_1_2") ? std::cout << "OK\n" : std::cout << "BAD\n"; }