Unity事例ノート

UNITY

自機狙い(プレーヤーに向けた)発射 -3Dゲーム

敵からプレーヤーに向かって、弾を発射するしくみをつくってみましょう。

敵の向きは常にプレーヤーにセットされいて、1秒おきにボールが発射されます。

3Dシューティングや、ミサイルを使ったゲームなど、幅広く活用できそうですね。

関連記事:
自機狙いに誤差をつける
ボールをキャッチして投げ返す
キャラクターコントローラーに発射機能
3D空間でプレーヤーを追いかけるオブジェクト
空間の中でクリックした位置へ行く
常にプレーヤーの方を向くオブジェクト
マウスカーソルの方へ向ける

オブジェクトの用意

ある程度の距離を取って、2つのオブジェクトを用意しました。

青色がPlayer、赤色がEnemyです。

ボールのPrefabデータをつくり、リジッドボディを追加します。

UseGravity(重力を使用)はチェックを外しています。

自機狙いの発射スクリプト(3D)

EnemyShot.csを作成し、Enemyに追加します。

EnemyShot.csを記述します。

タイマーが0秒になれば弾を生成して、1秒おきに発射しています。

敵の向いている方向は、常にプレーヤーにロックオンしています。

PlayerフィールドにはPlayerオブジェクト、Ballフィールドには、Ballのプレハブを入れましょう。

プレイして動きを確認します。

1秒間隔で、プレーヤーを狙って弾を撃っています。

プレーヤーを動かす

ここまで、自機狙いのしくみは出来あがりました。

あとはプレーヤーを動かせるようにしましょう。

PlayerMove.csを作成し、Playerに追加。

PlayerMove.csを記述します。

プレイしてみましょう。

プレーヤーに向けたボール発射が完成しました。

関連記事:
自機狙いに誤差をつける
ボールをキャッチして投げ返す
キャラクターコントローラーに発射機能
3D空間でプレーヤーを追いかけるオブジェクト
空間の中でクリックした位置へ行く
常にプレーヤーの方を向くオブジェクト
マウスカーソルの方へ向ける

SCHOOL教室案内