本日はシェーダー枠です。
前回は平行移動行列を見ていきました。
平行移動行列は座標変換において使用される行列で、イメージとしてはワールド座標系に位置するあるオブジェクトの子オブジェクトを移動させる際などに使用される行列です。
3Dグラフィックスで使用される行列は主に座標変換などで衣装されることが多いですが、次のような行列の種類があります。
・回転行列
・平行移動行列
・スケーリング行列
・せん断行列
・投射行列
・ビュー行列
今回はこの中からスケーリング行列
についてみていきます。
〇スケーリング行列とは?
スケーリングとはその名前の通り拡大縮小のスケールを意味します。
3DCGではトランスフォームの項目にスケールの値が一般的にあり、簡単に拡大縮小を行うことができます。
例えば、あるキューブのスケールを変更する場合、キューブを構成する頂点はキューブの原点に対して移動する必要があります。
この座標変換に用いられているのがスケーリング行列になります。
〇スケーリング行列
スケーリング行列は次のようにあらわされます。
たとえば初期座標 = (1, 2, 3)にある点を持つオブジェクトのスケールを2倍にすることを考えます。
すると新たな座標は次のようになります。
新たな座標 = スケーリング行列×元の座標
各成分で計算すると次のようになります。
これを求めることで変換後の座標は (2, 4, 6)
直感的で簡単な内容ではありますが、行列にすることで各成分を一括で操作できるため便利な反面非常に抵抗があるようになります。
本日は以上です。