UnityでRigidbody(リジッドボディ)を追加する方法【初心者向け】

Unityで【Rigidbody(リジッドボディ)】を追加する方法を初心者向けに解説した記事です。Rigidbodyを追加するだけで、ゲームにおける物体の落下や回転といった動きを簡単に再現することができます。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が1,000以上あります。

ゲームエンジンのUnityでRigidbody(リジッドボディ)を追加する方法を初心者向けに解説した記事です。

 

Rigidbodyとは、ゲームオブジェクトに物理シミュレーションを適用するためのコンポーネント(設定項目の集まり)です。Rigidbodyを追加するだけで、ゲームにおける物体の落下や回転といった動きを簡単に再現することができます。

今回は、球形のゲームオブジェクトにRigidbodyを追加して、「落下するボール」を作成します。

 

なお、本記事はTechAcademyのUnity入門オンライン講座の内容をもとにしています。

 

事前準備

まずはボールとなる球(Sphere)と、地面となる平面(Plane)をシーンに追加しましょう。

画面上部の[GameObject]タブから、[Create Other]→[Sphere]と選択します。

作成した「Sphere」は「Ball」と名前を変え、Y座標を「5」としておきます。
([Inspector]タブで[Transform]の[Position]にある[Y]の値を設定します。)

001 002

 

同様に、[GameObject]→[Create Other]→[Plane]と選択します。
「Plane」はこのままで設定完了とします。

003

 

このままではゲーム画面が真っ暗ですので、ライトを追加しましょう。

[GameObject]→[Create Other]→[Directional Light]と選択します。ライトの設定はデフォルトのままでも構いませんが、ここではY座標を「10」とします。

004

 

以上で準備完了です。

再生ボタン(画面上部の真ん中あたりにある▶︎)を押すと、ゲームにボールと地面が追加されたことが確認できます。

005

この状態では、まだボールは動きません。

 

 

Rigidbodyの追加

では、ボールにRigidbodyを追加して、落下するようにしましょう。

[Hierarchy]タブで、先ほど作成した「Ball」を選択し[Inspector]タブの下部にある[Add Component]ボタンを押します。

そして、[Physics]→[Rigidbody]と選択します。

006

[Inspector]タブにRigidbodyコンポーネントが追加されました。

以後、ボールには物理シミュレーションが適用されるようになります。

 

Rigidbodyの主な項目について説明しますので、設定をしてみましょう。

007

Mass

ゲームオブジェクトの質量です。
(質量は落下速度に影響しませんので、今回は「1」を設定します)

 

Drag

ゲームオブジェクトが移動するときの空気抵抗です。「0」を設定すると空気抵抗がなくなります。

また、「Infinity」と設定すると空気抵抗が無限大になり、動かなくなります。
(今回は使用しませんので「0」を設定します)

 

Angular Drag

ゲームオブジェクトが回転するときの空気抵抗です。
(今回は使用しませんので「0」を設定します)

 

Use Gravity

ゲームオブジェクトに重力を適用するか否かについて設定できます。この項目がチェックされると、重力が働き落下するようになります。
(今回はチェックを入れます)

 

ボールのRigidbodyを設定した状態で、ゲームを再生してみましょう。

008

地面まで落下するようになりました。

 

 

[PR] Unityを使ったゲーム開発で挫折しない学習方法を動画で公開中

ボールを跳ねさせる

ボールは落下するようになりましたが、まだあまりボールらしく見えません。

UnityではRigidbody以外にも、様々な物理シミュレーションに関する設定が可能です。

 

では、ボールが地面に落ちると跳ねるようにしてみましょう。

そのためには「Physic Material」を設定する必要があります。

 

まずは、画面上部の[Assets]タブから、[Create]→[Physic Material]を選択してください。

[Project]タブに「New Physic Material」が追加されます。

009

 

次に、作成された「New Physic Material」を選択し、名前を「Physic Material_Ball」とします。

そして、[Inspector]タブの[Bounciness]の値を「1」にします。

010

 

最後に、作成した「Physic Material_Ball」をボールに適用しましょう。

[Hierarchy]タブで「Ball」を選択し、[Inspector]タブの[Sphere Collider]で[Material]を設定します。

[Material]の右端にある「◎」ボタンを押すとウインドウが開きますので、「Physic Material_Ball」を選択します。

011

 

この状態でゲームを再生してみましょう。

012

地面まで落下したボールが跳ねるようになりました。

今回の記事は以上です。

 

さらにUnityを使いこなしたい場合はUnityでプレハブ(複製)を使う方法 も合わせてご覧ください。

[お知らせ]TechAcademyではオリジナルゲームアプリが公開できるUnityオンラインブートキャンプを開催しています。現役Unityエンジニアのサポートで効率的に学びたい場合はご検討ください。