Starling SetChildIndex性能问题

时间:2013-06-25 12:00:54

标签: actionscript-3 flash flash-builder starling-framework

我对Sprite.setChildIndex的效果有疑问。 我必须展示一个由许多小图像组成的世界。 (约10.000)

为了获得最佳性能,我使用图像池,所有图像都在一个Sprite的显示列表中,所以我不必添加和删除图像。

如果我想显示一个新的世界区域,我只需要将图像移动到新位置。这个过程非常快,大约需要6毫秒。

但问题是,显示列表中图像的顺序对我来说很重要。 因为我必须使用setChildIndex来重新排列图像。将图像设置到显示列表中的正确位置(setChildIndex)的过程对性能有很大影响,因此我需要大约60 ms才能显示新的Region。 您是否知道如何优化流程或是否有替代setChildIndex方法?

1 个答案:

答案 0 :(得分:0)

您可以为世界的每个区域提供自己的容器,并将该容器放在一个世界容器中。这样,您可以将SetChildIndex或swapChildren设置为500个图像而不是10,000个图像。并且,如果要加载新的Region,则可以在整个Region容器(在world容器中)中设置setChildIndex。这将优化地图加载,而不是必须关注所有10,000个精灵。