我正在移植 as3iso 以与我的抽象显示列表一起使用,但我看不出作者决定使用辅助显示列表(节点层次结构)的原因。除了能够获取显示对象的子数组之外,我想不出这样做的必要性。 for(i in 0...numChildren) getChildAt 与获取 children 数组相比,对性能的影响真的那么大吗?这也可以通过在覆盖时维护子数组来缓解。
唯一的另一个原因是 flash.display.DisplayObject 的某些属性是最终的,并且希望 x 和 y 与 isoX/isoY 相关联,但是 worldX/worldY 是一个合理的 API。
我对辅助显示列表没问题,但我看不到重点,我倾向于让我的 iso 显示对象从我的 DisplayObject 扩展。
此外,我曾假设标记不在屏幕上或 scrollRect 之外的对象 visible=false 对于 Flash 和一般渲染来说不是必需的,因为这是/应该在渲染器级别处理? Flash 软件渲染器是否属于这种情况?
最佳答案
对于最后一个问题,设置visible=false
很有用,因为这样渲染器就可以快速跳过这个对象,而不必计算它是否在屏幕矩形内。
关于actionscript-3 - As3Iso : Why use a secondary display list?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11794806/