強火で進め

このブログではプログラム関連の記事を中心に書いてます。

collisionFlagsについて


オブジェクトの衝突時にチェックすべき collisionFlags についての話。

collisionFlags は以下の定数が使われます。

定数 説明
None 衝突無し
Sides サイド方向で衝突
Above 上方向で衝突
Below 下方向で衝突

Unity Script Reference – CollisionFlags
http://unity3d.com/support/documentation/ScriptReference/CollisionFlags.html

プログラムはこんな感じで書きます。

function Update () {
	if (controller.collisionFlags & CollisionFlags.Sides) {
		print("Side");
	} else if (controller.collisionFlags & CollisionFlags.Above) {
		print("Above");
	} else if (controller.collisionFlags & CollisionFlags.Below) {
		print("Below");
	}
}

サンプルはこちらで試せます。ソースコードこちら

カーソルキーで移動、スペースキーでジャンプします。

地面に立っている時に Below と None が切り替わるみたいだけどこれはキャラがアニメーションしてるからって事で良いのかなぁ?