平行移動行列です。 まず、以下の図を見て下さい。 OpenGL と DirectX では行列の行と列の並びが違います。 ややこしいですね。 しかし、いずれも、13番目の要素がX軸、14番目の要素がY軸、15番目の要素がZ軸の 平行移動成分を表している事に変わりはありません。 glMultMatrixf();を使うと行列を掛け合わせる事ができます。 ではまた、チュートリアル 固定機能編 の 球を表示して移動する のプログラムを 平行移動行列を掛け合わせるように書き換えてみました。 全く同じに動作している事がわかると思います。 #pragma comment(linker, "/SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup") #include <GL/freeglut/freeglut.h> #define WIDTH 320 #define HEIGHT
![行列:平行移動行列 - OpenGLプログラミングメモ](https://cdn-ak-scissors.b.st-hatena.com/image/square/4468ea94e4a8cc228a00eebbc439642d04eafca7/height=288;version=1;width=512/https%3A%2F%2Fcdn21.atwikiimg.com%2Fopengl%3Fcmd%3Dupload%26act%3Dopen%26pageid%3D104%26file%3Dtrans2.png)