オブジェクトに物理特性を与える「Rigidbody」

ただ単に「Object」から制作された物体の状態では、幽体のように物体がすり抜けてしまいます。

そこで、オブジェクトに物理特性を与えることができるのが「Rigidbody」です。

「Rigidbody」とは日本語で「物理学においては単純な重さを持った物質ではなく、形状や大きさの概念を持った物質」となります。

Rigidbodyの画像

「Rigidbody」は「Object」を作成した時点では付与されていないので、別途呼び出す必要があります。

呼び出し方法は、上の図の一番したにある「Add Component」をクリックして、検索欄に「Rigidbody」と入力すれば、候補一覧に「Rigidbody」と「Rigidbody2D」が出てくるはずです。

出てきた「Rigidbody」をクリックすれば、上記のような表示が「inspector」に追加されます。

Rigidbodyの項目と説明

Mass(質量)

 物体の質量(kg)です。

Drag(引っ張る)

 オブジェクトに影響する空気抵抗の大きさ「0=抵抗なし」「無限大=動かない」

Angular Drag(引っ張る角度)

 「Drag」項目の回転する際のパターン

Use Gravity(重力を使う)

 有効にすると、オブジェクトは重力の影響を受ける。

Is Kinematic(キネマティクス)

 有効にすると「物理演算が無効」になる。

Interpolate(補間)

 算出の保管を行います。動作が滑らかになりますが負荷が高くなる。

Cillision Detection(衝突検出)

 高速で動くオブジェクトが衝突を検知せずにすり抜けてしまうことを防ぎます。

  >Discrete

   シーン内のすべてのコライダーに対し Discrete (離散型) 衝突検知を使用

  >Continuous

   離散型衝突検知と(連続型) 衝突検知を使い分けして使用

  >Continuous Dynamic

   高速で動くオブジェクトに使用

  >Continuous Speculative

   ジッドボディとコライダーに対する投機的な連続衝突検出を使用

Constraints(制約)

 リジッドボディの動きに関する制限をかけます。

  >Freeze Position

   ワールド座標の選択した軸でリジッドボディの移動を停止

  >Freeze Rotation

   ローカル座標の選択した軸でリジッドボディの回転を停止

正直、実際に使用する場面にならないと良く分かりません。

「Rigidbody」についての解説は「Unity ユーザーマニュアル」に詳しく書かれていますので、利用する場面に遭遇したら調べようと思います。

Unity ユーザーマニュアル (2019.4 LTS)>物理演算>3D 物理演算リファレンス>Rigidbody