忍者ブログ
凡人の日々の経過を記録
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。



 GLM(OpenGL Mathematics)はベクトルや行列演算を補助するライブラリで、GLSLで使われる変数に類似している。
OpenGL ES2.0やOpenGL4.0と進んでいる中で固定シェーダ記述はもう使えない。
たとえば、
  glLoadIdentity();
  glMatrixMode(GL_MODELVIEW);
  glMultMatrixf()
  gluLookAt();
 
といった記述はもう書けない。
そこで重宝するのがGLMというライブラリ。
GLMを使うと次のような感じ。

using namespace glm;
mat4 Projection = perspective(45.0f, 4.0f / 3.0f, 0.1f, 100.f);
mat4 ViewTranslate = translate( mat4(1.0f), vec3(0.0f, 0.0f, -Translate));
mat4 ViewRotateX = rotate( ViewTranslate, Rotate.y, vec3(-1.0f, 0.0f, 0.0f));
mat4 View = rotate( ViewRotateX, Rotate.x, vec3(0.0f, 1.0f, 0.0f));
mat4 Model = scale( mat4(1.0f), vec3(0.5f));
mat4 MVP = Projection * View * Model;
glUniformMatrix4fv( LocationMVP, 1, GL_FALSE, value_ptr(MVP));

MVPの計算がかなりスマートに書ける。
APIはGLSLの記述+αの程度わかれば使いこなせそうだ。
OpenGL+GLMでググってみるとトップページにででくる。


今後、きっとこのライブラリのお世話になるだろう。

拍手[0回]

PR


この記事にコメントする
HN:
TITLE:
COLOR:
MAIL:
URL:
COMMENT:
PASS:
この記事へのトラックバック
この記事にトラックバックする:

Powered by 忍者ブログ  Design by © まめの
Copyright © [ ずくのない凡人の日記 ] All Rights Reserved.
http://bambooflow.blog.shinobi.jp/