第03回 メッシュからの発生と出現・崩壊
2 / 4 法線と飛散方向
このステップの目的
表面の向きから速度を求め、位置と方向の座標空間をそろえます。
法線は表面の向き
法線(Normal)は面に垂直な向きを表します。滑らかなメッシュでは、頂点の法線を補間して使うため、三角形そのものの垂直方向と一致しない場合があります。補間した法線は、速さを掛ける前に長さ1へ正規化します。正規化は、向きを保ったまま各成分をベクトルの長さで割る操作です。長さ0には向きがないため、この計算には使いません。
上向きの法線(0,1,0)へ速さ2を掛けると、速度は(0,2,0)です。0.1秒後の移動量は(0,0.2,0)になります。法線へ速度を足すのではなく、法線から速度を決め、速度から移動量を求める順序です。
メッシュを移動した場合を考える
メッシュ内の位置はObject空間、Scene内の粒子はWorld空間で扱われる場合があります。位置には物体の移動・回転・拡大を反映します。一方、法線には位置のような平行移動を加えません。非均等な拡大では法線専用の変換が必要になるため、最初の比較は拡大率1で行います。
元のメッシュを横へ3移動させたとき、発生位置は横へ3移りますが、上向きの法線は上向きのままです。この違いを図に描ければ、位置と方向を取り違えていないと確認できます。
確認課題
表面から外へ離す動きと表面へ戻す動きでは、法線方向に掛ける値の符号をどう変えるか説明してください。
考え方の確認
外向き法線を基準に、外へは正、内へは負の値を掛けます。使う座標空間もそろえます。
チェックリスト
- 上向きの法線から0.1秒後の移動量を求め、平行移動が法線に加わらない理由を説明できる。