Shimokita.Unity RigidbodyとColliderで衝突

Post on 28-May-2015

717 views 1 download

Transcript of Shimokita.Unity RigidbodyとColliderで衝突

2014/6/8@yando

Shimokita.Unity RigidbodyとColliderで衝突

note.mu/yando

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

アジェンダ概要

自然落下

力を加える

衝突時に処理を行う

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

前提条件

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

RigidbodyとColliderの全体像を掴む

作業は最後にまとめて。

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

概要

Rigidbody (剛体力学)

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

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

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

概要

Rigidbodyでできる事

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

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

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

自然落下

自然落下

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

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

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

Rigidbody

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

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

任意の形を設定可能

Demo

Rigidbodyを付けると落ちる

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

力を加える

力を加える

推進力がForce、回転力がTorque

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

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

Force.modeで作用を変更

メソッド、モード

ドキュメント

衝突時に処理を行う

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

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

行する

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

にでも設定可能

コールバック

衝突相手の判別

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

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

タグで判別して防ぐ

タグ

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

衝突させずに処理を行う

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

Is Triggerを設定

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

Trigger

まとめ

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

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

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