Unity事例ノート

UNITY

AddForceを使ってプレハブを前方へ飛ばす

クリックで生成したプレハブに力を加えて、前方へ飛ばしてみましょう。

クリックした場所から、ボールが前へ飛んでいきます。

関連記事:
【Unity C#】クリックした場所からボールを発射する
【Unity C#】クリックした位置にオブジェクトを生成(Ray)
【Unity C#】定位置からボールを発射させるしくみ
【Unity C#】連射防止のしくみ
【Unity C#】ターゲットに向かってボールをぶつける
【Unity C#】移動と発射・MainCamera追従を組合わせる
【Unity C#】キャラクターコントローラーに発射機能
【Unity C#】前後左右へ順番にボール発射





Prefabに追加するスクリプト

Sphereを作成して、カラーをつけました。

リジッドボディを追加します。

SphereMove.csを作成して追加します。

SphereMove.csを書きましょう。

Z方向に向けて力を加えています。

ForceModeは力のタイプということで、ここではImpulseを入れています。

Impulseは質量を使用して、RigidBodyに瞬発的な速度変化を追加します。

プレイして、Sphereが前に押し出されることを確認しましょう。

動きは確認できたので、今度はSphereをプレハブ化します。

Sphereの元データを消します。

クリックした場所に生成

クリックでプレハブ生成できるように、スクリプトを作成しましょう。

空のオブジェクトを作成。

ClickSphere.csを作成して、GameObject(空のオブジェクト)に追加。

ClickSphere.csを記述します。

プレハブのフィールドができるので、ここにSphereのプレハブデータをドラッグ&ドロップしましょう。

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

関連記事:
【Unity C#】クリックした場所からボールを発射する
【Unity C#】クリックした位置にオブジェクトを生成(Ray)
【Unity C#】定位置からボールを発射させるしくみ
【Unity C#】連射防止のしくみ
【Unity C#】ターゲットに向かってボールをぶつける
【Unity C#】移動と発射・MainCamera追従を組合わせる
【Unity C#】キャラクターコントローラーに発射機能
【Unity C#】前後左右へ順番にボール発射