Roll-a-ball の制作(4) Playerに物理演算の振る舞いを設定する

Unity公式サイトのチュートリアルに沿って、
Roll a ball というサンプルゲームを制作する4回目です。

前回は、プレイヤーオブジェクトの作成と、マテリアルの設定について説明しました。

今回は、Rigidbodyについて解説します。

RigidBodyについて?

rigidbodyは何かというと、

物理演算を扱うためにUnityが用意している機能のことです。
Unityではrigidbodyを使うことで、非常に簡単に物理演算を行えます。

要は、Rigidbodyの機能を使うことで、
■ビリヤード
エアホッケー
■跳ねることができる地面
■球技スポーツ
といった、物理演算を使うシンプルなゲームを簡単に作れるようになるということです。

>>Rigidbody を使うと、ゲームオブジェクトを物理特性によって制御する事ができるようになります。
>>リジッドボディがフォースやトルクを受けると、オブジェクトはより現実的な動きをします。
>>重力をうけたり、スクリプトを使ってフォースを与えたり、
>>NVIDIA PhysX 物理エンジンを通して他のオブジェクトの影響を受けるようにするためには、
>>ゲームオブジェクトに Rigidbody を追加する必要があります。

Unityの公式サイトを見ると、上記のようにRigidbodyについて解説されています。
とはいえ、この説明はちょっとわかりづらい感じがするので、
私なりに説明してみますね。

今回の Roll a ball のゲームでは、プレイヤーである球体が、回収するオブジェクトに接触したり、壁にぶつかったりするときに、その当たり判定として物理演算の機能を必要とします。

f:id:Yamakawa-Yoshi:20200816204542j:plain


で、この物理演算を一から実装するとムチャクチャ大変です。
ということで、一から作ると非常に大変な物理演算を、UnityではRigidbodyという機能で提供しているというわけです。

ではさっそくUnity上でRigidbodyを使ってみましょう。

Playerオブジェクトを選択
 ↓
インスペクターの「コンポーネントを追加」
 ↓
テキストフィールドにRigidbodyと入力 → リジットボディと出るので選択

f:id:Yamakawa-Yoshi:20200816204545j:plain

上記の手順を行うと、インスペクターのところに、
Rigbodyに関するプロパティが追加されます。

これで、以降Playerオブジェクトに物理演算の振る舞いを持たせることが可能になります。

次回は、物理演算ができるようになったPlayerオブジェクトを実際に操作できるようにしていきます。