Apache flex Flash/Flex渲染消隐

Apache flex Flash/Flex渲染消隐,apache-flex,flash,actionscript-3,Apache Flex,Flash,Actionscript 3,是否有人知道(最好有正式的链接)如何/如果Flash/Flex剔除不在视图中的对象,以防止它们在不需要时被绘制 A具体情况: 我有一个800x600面板(一个画布或精灵,或其他容器),其中包含大量精灵,代表单个游戏对象,如小行星、宇宙飞船、导弹或地图块。游戏世界可能是5000x5000,所以我可以天真地将精灵放在这个范围内的任何地方,让Flash有效地剔除它们吗?或者我是否需要以某种方式在更高级别上管理可见性(例如从父级手动删除它们),以避免性能问题 游戏世界可能是5000x5000左右 我可以

是否有人知道(最好有正式的链接)如何/如果Flash/Flex剔除不在视图中的对象,以防止它们在不需要时被绘制

A具体情况:

我有一个800x600面板(一个
画布
精灵
,或其他容器),其中包含大量精灵,代表单个游戏对象,如小行星、宇宙飞船、导弹或地图块。游戏世界可能是5000x5000,所以我可以天真地将精灵放在这个范围内的任何地方,让Flash有效地剔除它们吗?或者我是否需要以某种方式在更高级别上管理可见性(例如从父级手动删除它们),以避免性能问题

游戏世界可能是5000x5000左右 我可以天真地定位精灵吗 在这个范围内的任何地方,让闪光灯闪烁 有效地剔除它们


我想,没有。Flash对舞台大小有限制(如果我没记错的话,10.1版是4050x4050),超过这个大小就没有任何保证(渲染瑕疵和崩溃是可能的)。此外,显示列表过多也无助于Flash快速渲染。你应该考虑至少做出粗粒度的“屏幕剔除”自己。

你可能需要澄清一下。你说的淘汰是什么意思?垃圾收集?我的意思是更像剪辑,即从渲染列表中删除它们+1个好问题,还有一些我自己一直想知道的事情。根据经验,我可以告诉您,“视口”中的项目,但被其他项目完全遮挡,使其实际上不可见,仍然会被绘制。但是,我不能说项目在“视口”之外。这是阶段大小的限制,而不是DisplayObjects。它们可以更大。在FP10和更高版本中,位图的最大值为16777215像素(4096*4096),我猜基于向量的类型可能会更大,尽管我找不到任何数字。但是John想把他的所有精灵都放在舞台上,或者我明白了。如果无法显示大型精灵,那么将其保存在内存中有什么意义?您可以将子精灵存储在更方便的结构中。