Collider#

Colliderは、物理演算の対象となるオブジェクトの形状を定義するコンポーネントです。

使用できるCollider#

以下のColliderが使用できます。

  • BoxCollider(箱型)

  • SphereCollider(球型)

  • CapsuleCollider(カプセル型)

  • MeshCollider(メッシュ形状)

それぞれのColliderの詳細はUnity公式リファレンスを参照してください。

使用できるプロパティー#

各Collider共通のプロパティー#

プロパティー

説明

Is Trigger

オンにすると、コライダーはイベントのトリガーとなり、物理エンジンにより無視されます。Is Triggerがオンのオブジェクトが大量に重なると、処理負荷が高くなることに注意してください。

Material

PhysicsMaterialを割り当てる事で、他のColliderと衝突した際の物理挙動を決める事ができます。

BoxCollider#

プロパティー

説明

Center

コライダーを付与したゲームオブジェクトの原点に対する、コライダーの相対位置

Size

コライダーの大きさ (x,y,z)

SphereCollider#

プロパティー

説明

Center

コライダーを付与したゲームオブジェクトの原点に対する、コライダーの相対位置

Radius

コライダーの半径

CapsuleCollider#

プロパティー

説明

Center

コライダーを付与したゲームオブジェクトの原点に対する、コライダーの相対位置

Radius

コライダーの半径

Height

コライダーの高さ

Direction

高さ方向の軸の向き

MeshCollider#

いくつか条件があるので、別ページで詳しく説明しています。

レイヤー#

レイヤーとは、GameObjectに対して付与できるUnityの機能で、グループ分けのためのタグのようなものです。どのレイヤーのColliderが衝突するかはLayer Collision Matrixによって定義されています。
VCIで使用するレイヤーは以下の通りです。

  • Default

  • VCIAccessory

  • VCIItem

  • VCIPickUp

また、VirtualCastのCollision Matrixは以下の通りです。

これらのレイヤーは、アバターに衝突するかどうかの判定に使用されます。
それぞれのレイヤーの違いは以下の表を参照してください。

アバターのレイヤー#

VirtualCastのアバターは自動的に生成されたColliderを持っています。アバターのColliderにはHumanoidPartsとCharacterのレイヤーが使用されており、それぞれのレイヤーの違いは以下の通りです。

HumanoidParts

Character

環境

スタジオ/ルーム

ルームのみ

役割

アイテムへの干渉/装着の判定

アイテムや地形との相互作用

部位

アバターの手足や頭など、体のパーツ

アバターの全身を覆う

形状

CapsuleCollider

CapsuleCollider

外力による移動

しない

する

対象のアバター

すべてのアバター

ローカルのアバターのみ

VCIのレイヤーとアバターのレイヤーの関係#

VCIのレイヤーと前述のアバターのレイヤーには以下のような関係があります。

VCIに設定できるレイヤー

HumanoidParts

Character

備考

Default

衝突する

衝突する

動かない壁や足場などに使用。

VCIAccessory

衝突する

衝突しない

[装着アイテム](/manual/behavior/attachment、ノックバックしない弾などに使用。

VCIItem

衝突しない

衝突する

アバターを移動させる際、HumanoidPartsに邪魔されない。動く足場やノックバックする弾などに使用。

VCIPickUp

衝突しない

衝突しない

他のアイテムと衝突するが、アバターとは衝突しない。装着アイテムなどに使用。

スクリプトによるイベントの受け取り#

Colliderの衝突イベントはイベント関数によって受け取ることができます。

Unity公式リファレンス#