Unity事例ノート

UNITY

プレーヤーの向いている方向に発射する

前回の弾幕のような全方向への発射に続き、今回はプレーヤーの向きからミサイル発射する方法を見ていきましょう。

前回記事:【Unity C#】弾幕のような全方向への発射

左右キーで回転し、スペースキーを押すと、自分が向いている方向へ撃つことができます。

関連記事:
【Unity C#】移動と発射・MainCamera追従を組合わせる
【Unity C#】キャラクターコントローラーに発射機能
【Unity C#】全方位に向けてランダム発射
【Unity C#】弾幕のように全方向へ発射するしくみ





ボールを用意する

まずは発射するボールを用意しましょう。

Sphereのプレハブを作成し、リジッドボディとSphereMove.csを付けています。

Use Gravityのチェックを外しています。

SphereMove.csは以下のように書いています。

Z方向に移動するようなスクリプトはここでは使用しません。

velocityを使って、Sphereが前方向に移動する速度を指定しています。

プレーヤーの向きから発射

次に、プレーヤーのCubeオブジェクトを作成しました。

GameManager.csをつくり、Cubeに追加します。

GameManager.csは以下のように書きました。

Ballのフィールドには、Sphereプレハブを入れます。

ゲームプレイして確認しましょう。

左右キーで回転し、スペースキーで発射。

プレーヤーの向いている方向から、前に向かってボールが発射されています。

関連記事:
【Unity C#】弾幕のような全方向への発射
【Unity C#】プレーヤーの前から発射する
【Unity C#】移動と発射・MainCamera追従
【Unity C#】全方位に向けてランダム発射