モデルビュー行列からカメラのパラメータを計算する. modelview matrix は model に作用する matrix も含んでいるので,シーンがスケール,移動,回転されていたりするとその効果が含まれている.これをmatrixの情報のみを使って分離する方法はない.そこで,ここではシーンに対するtransformation matrix は Identity matrix, つまり全てはカメラの効果としてカメラのパラメータを抽出する.もし,シーンに対する効果が分離されているようなレンダラと OpenGL レンダラを併用する場合には,この transformationmatrix を undo する必要がある. modelview matrix は以下のような成分になっている.この成分の詳しいことに関しては私の以前の blog( http://shitohichiumaya.blogspot.de/2011/01/what-matrix-glulookat-generates-1.html )を参照のこと. \begin{eqnarray*} \left[ \begin{array}{cccc} x_x & y_x & z_x & 0 \\ x_y & y_y & z_y & 0 \\ x_z & y_z & z_z & 0 \\ -(\vec{x} \cdot \vec{e}) & -(\vec{y} \cdot \vec{e}) & -(\vec{z} \cdot \vec{e}) & 1 \\ \end{array} \right] \end{eqnarray*} 4行を \(a,b,c\)で置きかえるとこの行列は以下のように書ける. \begin{eqnarray*} \left[ \begin{array}{cccc} x_x & y_x & ...