GLEWについて
をテンプレートにして作成
[
トップ
|
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
*GLEWとは [#h9946d06]
GLEW(OpenGL Extension Wrangler Library)はOpenGL拡張をロー...
GLEWを用いることでOpenGL拡張を手軽に用いることができる
*GLEWライブラリのビルドとインストール [#ydd38797]
#include(build_glew,title)
*GLEWを用いたプロジェクトのビルド [#p9db0c84]
***インクルードファイル [#n7057264]
以下のようにglew.hをインクルードする.
#include <GL/glew.h>
GLUTも用いる場合は,glew, glutの順にインクルードする.
#include <GL/glew.h>
#include <GL/glut.h>
glew.h内でgl.hをインクルードしており,glew.hの前にgl.hが...
GLEWはプロプロセッサにより警告を出すようにされているため...
***ライブラリファイル [#ua9b6daf]
プロジェクトのプロパティで,構成プロパティ→リンカ→入力→追...
ソースファイルの先頭にプラグマを用いて以下のように指定す...
#pragma comment(lib, "glew32.lib")
***初期化 [#z7224593]
GLEWを用いてOpenGL拡張を用いる前に,glewInit()を用いて初...
GLenum err = glewInit();
if(err == GLEW_OK){
cout << "GLEW OK : Glew Ver. " << glewGetString(GLEW_V...
}
else{
cout << "GLEW Error : " << glewGetErrorString(err) << ...
}
ただし,glewInit()を呼び出す前にレンダリングコンテキスト...
GLUTの場合,glutInit(),glutCreateWindow()を行った後にglew...
***使用できる拡張のチェック [#aa13b3d2]
もしある拡張が利用可能ならば,GLEW_拡張名 という名前の変...
if(GLEW_VERSION_2_1 && GLEW_ARB_vertex_shader && GLEW_A...
・・・
}
のようにチェックすることができる.最初のGLEW_VERSION_2_1...
また,拡張名をそのまま用いてチェックしたい場合は,glewIsS...
if(!glewIsSupported("GL_VERSION_2_1 "
"GL_ARB_vertex_shader "
"GL_ARB_fragment_shader "
"GL_ARB_geometry_shader4 "
)){
cout << "ERROR: Support for necessary OpenGL extension...
exit(0);
}
glewIsSupported()はGLEW ver1.3.0以降が必要なので注意.1.3...
*Rendering Contexts for OpenGL [#yd9f10dc]
レンダリングコンテキスト(RC)はWindowsのウィンドウシステム...
スレッドから発信したOpenGLコマンドはこのレンダリングコン...
描画はリンク付けされたウィンドウ上でなされる.
Win32 APIなどを用いてウィンドウ上にウィジットなどを描画す...
OpenGLアプリケーション生成時にはDCにRCを関連付けることでO...
RCはDCとよく似ていているが,DCにはWindowsの[[Graphics Dev...
命令を指定するのに対して,RCはOpenGLに関する情報を持ち,O...
OpenGLコマンドを使用するスレッドはcurrent rendering conte...
そのため,アプリケーション側がスレッドを生成したとき,RC...
注意として,1つのアプリケーションが多数のスレッドを持つこ...
***Multiple Rendering Contexts [#f20ab18e]
終了行:
*GLEWとは [#h9946d06]
GLEW(OpenGL Extension Wrangler Library)はOpenGL拡張をロー...
GLEWを用いることでOpenGL拡張を手軽に用いることができる
*GLEWライブラリのビルドとインストール [#ydd38797]
#include(build_glew,title)
*GLEWを用いたプロジェクトのビルド [#p9db0c84]
***インクルードファイル [#n7057264]
以下のようにglew.hをインクルードする.
#include <GL/glew.h>
GLUTも用いる場合は,glew, glutの順にインクルードする.
#include <GL/glew.h>
#include <GL/glut.h>
glew.h内でgl.hをインクルードしており,glew.hの前にgl.hが...
GLEWはプロプロセッサにより警告を出すようにされているため...
***ライブラリファイル [#ua9b6daf]
プロジェクトのプロパティで,構成プロパティ→リンカ→入力→追...
ソースファイルの先頭にプラグマを用いて以下のように指定す...
#pragma comment(lib, "glew32.lib")
***初期化 [#z7224593]
GLEWを用いてOpenGL拡張を用いる前に,glewInit()を用いて初...
GLenum err = glewInit();
if(err == GLEW_OK){
cout << "GLEW OK : Glew Ver. " << glewGetString(GLEW_V...
}
else{
cout << "GLEW Error : " << glewGetErrorString(err) << ...
}
ただし,glewInit()を呼び出す前にレンダリングコンテキスト...
GLUTの場合,glutInit(),glutCreateWindow()を行った後にglew...
***使用できる拡張のチェック [#aa13b3d2]
もしある拡張が利用可能ならば,GLEW_拡張名 という名前の変...
if(GLEW_VERSION_2_1 && GLEW_ARB_vertex_shader && GLEW_A...
・・・
}
のようにチェックすることができる.最初のGLEW_VERSION_2_1...
また,拡張名をそのまま用いてチェックしたい場合は,glewIsS...
if(!glewIsSupported("GL_VERSION_2_1 "
"GL_ARB_vertex_shader "
"GL_ARB_fragment_shader "
"GL_ARB_geometry_shader4 "
)){
cout << "ERROR: Support for necessary OpenGL extension...
exit(0);
}
glewIsSupported()はGLEW ver1.3.0以降が必要なので注意.1.3...
*Rendering Contexts for OpenGL [#yd9f10dc]
レンダリングコンテキスト(RC)はWindowsのウィンドウシステム...
スレッドから発信したOpenGLコマンドはこのレンダリングコン...
描画はリンク付けされたウィンドウ上でなされる.
Win32 APIなどを用いてウィンドウ上にウィジットなどを描画す...
OpenGLアプリケーション生成時にはDCにRCを関連付けることでO...
RCはDCとよく似ていているが,DCにはWindowsの[[Graphics Dev...
命令を指定するのに対して,RCはOpenGLに関する情報を持ち,O...
OpenGLコマンドを使用するスレッドはcurrent rendering conte...
そのため,アプリケーション側がスレッドを生成したとき,RC...
注意として,1つのアプリケーションが多数のスレッドを持つこ...
***Multiple Rendering Contexts [#f20ab18e]
ページ名: