複雑なオブジェクトの衝突判定(CollisionDetectionクラス)
July 9, 2008
『Actionscript3.0アニメーション』を読み直しているついでに作ったクラス。
本でも紹介のあるgskinner.comにAS2版について記事があり、それをもとにささささっと(と言いつつ、AS2の知識がほぼなくて、若干手間取ったり)。
下の2つのオブジェクトをドラッグで動かして衝突させてみてください。
今回作った衝突判定クラスで衝突と判定されると、衝突範囲がピンク色に囲まれます。
Download
CollisionDetection.as
使い方
1.CollisionDetectionクラスをインポート
import net.scratchbrain.geom.CollisionDetection;
2.checkForCollisionメソッド実行
var collisionRect:Rectangle = CollisionDetection.checkForCollision(obj1,obj2);
3.衝突判定
if(collisionRect){
// 衝突ありの処理
}else{
// 衝突なしの処理
}
よもやま話
AS2バージョンを開発したgskinner氏に怪しい英語でメールし、Spark Projectにもコミット。
『Actionscript3.0アニメーション』は前回読んだときは後半部分ほとんど読み飛ばしちゃったので今回はしっかり読もうとしている。
いよいよフォワードキネマティクス〜3Dの部分に突入。これで最近やっている3D関連(なぜかAway3D)のエントリーとつながってきそう。
秋口からは、よそ様の知識を借りたサンプルじゃなくて、オリジナルなものを作っていけたらいいなと画策中。よし、もうちょい基礎練だ!
タグ:
Trackback
Trackback URL for this entry:


















