0

object.hitTestObjectを使用するか、次のように境界を計算することで、パフォーマンスが向上することを意味します。

if(obj.x > obj2.x && obj.x < obj2.x + obj2.width &&
obj.y > obj2.y && obj.y < obj2.y + obj2.height)
{
    trace('spaceship damaged!!!');

}

//or using

if(obj.hitTestObject(obj2))
{

   trace('spaceship damaged by hitTestObject!!!');

}

実際には何をもっと使いますか?そして何がより効率的ですか?どのくらいのパーセントのパフォーマンスが自己計算を提供しますか?20%?40%?60%?

4

2 に答える 2

1

以下を参照してくださいperformance comparsion article

ActionScript3の衝突検出技術の相対的なパフォーマンス

BitmapData.hitTestを使用して衝突検出を最適化するための戦略

あなたの好きな質問

[AS3]hitTestObjectのパフォーマンスに関する質問

于 2012-08-15T10:33:50.377 に答える
1

この記事はあなたの質問に関する良い洞察をあなたに与えます

http://www.mikechambers.com/blog/2009/06/26/relative-performance-for-collision-detection-techniques-in-actionscript-3/

HitTestが最速のようです。これは、AdobeのAPIが可能な限り最高のパフォーマンスを発揮するように最適化されていると思うので、妥当なようです。

[編集]SOの回答に関しては、bitmapdata.comはWillKruよりもわずかに速いようです。

于 2012-08-15T10:34:24.950 に答える