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

ActionScript 3 中碰撞检测技术的相对性能

使用 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 似乎是最快的,这似乎是合理的,因为我认为 Adob​​e 的 API 将针对可能的最佳性能进行优化。

[编辑] 至于回答,bitmapdata.com 似乎比 Will Kru 稍快。

于 2012-08-15T10:34:24.950 回答