2015年9月26日土曜日

Unityサンプル 追尾ミサイルのような動き

縦シュー、横シューで出てきそうな追尾ミサイルのような動きのデモを作成したので公開。

https://github.com/sokude/Unity-MissileMoveSample

このままでは動かないので、StandardAssetsのUtilitiesとParticleSystemをImportしてください。

技術的には何も特徴的なことはありません。
ミサイルに見立てたカプセルを目標となる敵に向かって進ませるわけですが、
その時Transform.LookAtを使って一気に目標の方に向かせるのではなく、
徐々に目標の方に向かせるような処理が入っています。

ミサイルのオブジェクトは自分の前方に対して目標が右にいるのか左にいるのかを判定して、
少しずつ回転を行いながら前進します。

左右方向判定は、自分の前方となるワールド座標系のベクトルと、自分から見た敵の位置のベクトルのクロス積(外積)をとってY軸要素のプラスマイナスで判別します。