Papervision3D 2.0 接触判定

  • 投稿日:
  • by
  • カテゴリ:


オブジェクト同士の接触判定はhitTestObject()で可能です。

if(objA.hitTestObject(objB)){
	//接触している
}

ただしバウンディングボックス同士での判定なので、
形状によっては本当は当たってないのにtrueになったりします。
回転やスケールを変えてもバウンディングボックスは変化しないようです。
正確に判定したい場合は自前で実装するしかないですね。
・サンプルSWF
・ソースファイル

関連する情報として下記があります。
DisplayObject3D.geometry.boundingSphere バウンディングスフィア情報
DisplayObject3D.geometry.aabb ローカル座標軸に沿ったバウンディングボックス情報
Vertices3D.boundingBox() ローカル座標でのバウンディングボックス情報
Vertices3D.worldBoundingBox() グローバル座標でのバウンディングボックス情報