28
2014/6/8 @yando Shimokita.Unity RigidbodyとCollider で衝突

Shimokita.Unity RigidbodyとColliderで衝突

  • Upload
    yandod

  • View
    717

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Shimokita.Unity RigidbodyとColliderで衝突

2014/6/8@yando

Shimokita.Unity RigidbodyとColliderで衝突

Page 2: Shimokita.Unity RigidbodyとColliderで衝突

note.mu/yando

Page 3: Shimokita.Unity RigidbodyとColliderで衝突

趣味は「テトリス(作り)」

Page 4: Shimokita.Unity RigidbodyとColliderで衝突
Page 5: Shimokita.Unity RigidbodyとColliderで衝突

アジェンダ概要

自然落下

力を加える

衝突時に処理を行う

衝突はさせずに処理を行う

Page 6: Shimokita.Unity RigidbodyとColliderで衝突

前提条件

基本操作はドットインストール

RigidbodyとColliderの全体像を掴む

作業は最後にまとめて。

たぶんUnityはなんとなく動く

Page 7: Shimokita.Unity RigidbodyとColliderで衝突

概要

Page 8: Shimokita.Unity RigidbodyとColliderで衝突

Rigidbody (剛体力学)

Unityに搭載された物理エンジン

ごく簡単な操作で物理制御を実現

当たり判定を扱う機構も備える

概要

Page 9: Shimokita.Unity RigidbodyとColliderで衝突

Rigidbodyでできる事

重力、加速度を使った物体処理

衝突した物体、された物体を動かす

衝突発生時に任意の処理を行う

Page 10: Shimokita.Unity RigidbodyとColliderで衝突

自然落下

Page 11: Shimokita.Unity RigidbodyとColliderで衝突

自然落下

インスペクタからRigidbodyを追加

初期設定のままでとりあえず落下

細かな挙動はパラメータで。

Page 12: Shimokita.Unity RigidbodyとColliderで衝突

Rigidbody

Page 13: Shimokita.Unity RigidbodyとColliderで衝突

Collider当たり判定を定義するコンポーネント

設定されていないとすり抜ける

任意の形を設定可能

Page 14: Shimokita.Unity RigidbodyとColliderで衝突

Demo

Rigidbodyを付けると落ちる

すり抜けるものにはColliderを追加する

Page 15: Shimokita.Unity RigidbodyとColliderで衝突

力を加える

Page 16: Shimokita.Unity RigidbodyとColliderで衝突

力を加える

推進力がForce、回転力がTorque

ワールド座標とローカル座標

Vector3.up などを使っての表現が楽

Force.modeで作用を変更

Page 17: Shimokita.Unity RigidbodyとColliderで衝突

メソッド、モード

Page 18: Shimokita.Unity RigidbodyとColliderで衝突

ドキュメント

Page 19: Shimokita.Unity RigidbodyとColliderで衝突

Page 20: Shimokita.Unity RigidbodyとColliderで衝突

衝突時に処理を行う

Page 21: Shimokita.Unity RigidbodyとColliderで衝突

衝突時の処理Rigidbodyが付いたオブジェクトが他の

Colliderに衝突するとコールバックを実

行する

コールバックはどちらのオブジェクト

にでも設定可能

Page 22: Shimokita.Unity RigidbodyとColliderで衝突

コールバック

Page 23: Shimokita.Unity RigidbodyとColliderで衝突

衝突相手の判別

無差別に処理を実行してしまう

背景のオブジェクトなどに暴発

タグで判別して防ぐ

Page 24: Shimokita.Unity RigidbodyとColliderで衝突

タグ

タグで衝突相手を判別して処理を実行

Page 25: Shimokita.Unity RigidbodyとColliderで衝突

衝突させずに処理を行う

Page 26: Shimokita.Unity RigidbodyとColliderで衝突

衝突させずに判定衝突しては困る場合

Is Triggerを設定

異なるコールバックが呼ばれる

Page 27: Shimokita.Unity RigidbodyとColliderで衝突

Trigger

Page 28: Shimokita.Unity RigidbodyとColliderで衝突

まとめ

各種設定、メソッドが豊富

ひと通り見なおしてみて損はない

詳しくはhttp://qiita.com/yando/items/0cd2daaf1314c0674bbe