【发布时间】:2010-10-27 10:31:28
【问题描述】:
是否有人知道(最好有官方链接)关于如何/如果 Flash/Flex 剔除不在视图中的对象,以阻止它们在不需要时被绘制?
具体案例:
我有一个 800x600 的面板(Canvas 或 Sprite 或其他容器),其中包含表示单个游戏对象(如小行星、宇宙飞船、导弹或地图图块)的 Sprite 负载。游戏世界可能是 5000x5000,所以我可以天真地将 Sprite 放置在这个范围内的任何位置并让 Flash 有效地剔除它们吗?还是我需要以某种方式在更高级别管理可见性(例如从父级手动删除它们)以避免性能问题?
【问题讨论】:
-
您可能需要稍微澄清一下。剔除是什么意思?垃圾收集?
-
我的意思更像是剪辑,即从渲染列表中删除它们
-
+1 好问题,我自己也想知道。我可以根据经验告诉您,“视口”内的项目,但完全被其他项目遮挡,使它们实际上不可见,仍然被绘制。但是,我不能谈论项目在“视口”之外的情况。
标签: apache-flex flash actionscript-3