LoginSignup
7
6

More than 5 years have passed since last update.

【Unity】1. Ragidbody, 2. Physical Material, 3. Colliderこいつらの機能を見てみよう

Last updated at Posted at 2014-06-21

ちょっとメモと、あとこいつらの設定がぱっとみよくわからなかったので、調べて使ってみて動作を確認した

PhysX

物理エンジンに特化したゲーム開発用のSDK

1. Rigidbody

直訳で剛体です。要は理想の物体ですね、物理の授業とかで仮想の物質で2点の距離が絶対に一定になるとかいうあれです。

ドキュメント

  • GameObject が物理特性の制御下で動作する
  • 力やトルクを受け、現実的な方向にオブジェクトを動かす
  • GameObject は、重力の影響を影響を受けるリジッドボディを含めるか、スクリプティングを通じて加えた力の下で動作するか、NVIDIA PhysX 物理特性エンジンを通じて、その他のオブジェクトと相互作用

スクリーンショット 2014-06-21 11.28.36.png

制御 内容
Mass オブジェクトの質量
Drag 移動の抵抗
Angular Drag 回転の抵抗
Use Gravity 重力による移動をするかどうかのフラグ
Is Kinematic 物理的な動作をスクリプトでコントロールするかどうかのフラグ
Interpolate 動作の補間方法で、挙動が変な時に前後のフレームから補間させるための設定
Collision Detection 衝突判定の方法で、オブジェクトのすり抜け防止が可能
Constraints Position(移動)、Rotation(回転)の拘束設定。

2. Physic Material

ドキュメント

  • GameObject が物理特性エンジンの制御下で動作
  • 現実的な衝突、多様な種類のジョイント、その他のクールな動作へのゲートウェイが開く

スクリーンショット 2014-06-21 22.27.17.png

制御 内容
Dynamic Friction 動的摩擦度 0 ~ 1
Static Friction 静的摩擦度 0 ~ 1
Bounciness 弾力度 0 ~ 1
Friction Combine 摩擦の合成
Bounce Combine 弾力度の合成
Friction Direction 2 方向別の摩擦度
Dynamic Friction 2 Friction Direction 2 の動的摩擦度
Static Friction 2 Friction Direction 2 の静的摩擦度

3. Collider

直訳すると衝突装置。コライダーとよみます。

ドキュメント

Collider 内容
Box 立方体
Sphere
Capsule カプセル
Mesh メッシュデータ

スクリーンショット 2014-06-22 13.04.59.png

isTriger
オブジェクトが衝突範囲に入ったことを検知します
trueにしたGameObjectの衝突範囲に入ったことが検知され、OnTrigger*のメソッドが呼ばれます

method call timing
OnCollisionEnter 衝突時
OnCollisionStay 衝突している最中
OnCollisionExit 衝突後、オブジェクトから離れた
OnTriggerEnter トリガー状態で衝突時
OnTriggerExit トリガー状態で衝突している最中
OnTriggerStay トリガー状態でオブジェクトから離れた

使い分け

Rigidbodyが絶対に必要だが、各々条件が異なっている

OnCollision*

  • 触れ合う2つのオブジェクトにRigidbodyが必要
  • Is Kinematic = false
  • Is Trigger = false

OnTrigger*

  • 触れ合う2つのオブジェクトのどちらかにRigidbodyが必要
  • Is Trigger = true

→この条件を逸した状態で動かしてみると、OnTriggerの判定よりもOnCollisionが優先されたりするので、何か別条件もあるとは思われます

ちゃんとどの機能があるか知れば難しくない

これらを組み合わせて落下物とそれを物理的に処理することができる

→要はRigidBodyが剛体なのでモノ自体を表現してます。そのモノが実際に物理的に摩擦や弾力性の影響が出るものをPhysic Materialとして処理します。
通常は、この2つを用いて処理します

クソゲーでも作ってみようかなと画策中

7
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
6