最近手头在做深度排序的优化.
于是做了下面一个实验
在场景上创建 2000 个对象. 然后使用传统的深度排序算法,全排.
[cc lang=”actionscript3″ nowrap=”false”]
private function checkCollsion() : void
{
_rects.sort(sortFun);

var rect : Rect;
for(var i : int = 0; i < _rects.length; i ++){ rect = _rects[i] as Rect; if(_container.getChildAt(i) != rect){ _container.setChildIndex(rect,i); } } } private function sortFun(p1 : DisplayObject, p2 : DisplayObject) : int { return p1.y > p2 .y ? 1 : -1;
}
[/cc]
结果帧数降到了6帧.

于是考虑使用四叉树来做.
在收集资料的时候发现了一篇 javsScript 实现的四叉树

改写成AS后的代码为
Continue reading