1

我正在处理一个需要在单个页面上显示多个 Flash 电影的项目。该项目的目标是使用两个不同的 Flash 电影创建画中画效果。

我看到的仅有的两个选项是:

  1. 创建一个在其中嵌入两个外部 Flash swf 的新 Flash 电影。样式将通过 Flash 完成。

  2. 使用 html/css 将每个 Flash 电影嵌入页面和样式。

我的主要问题是关于内存优化。哪个效率更高并且占用更少的内存?

4

1 回答 1

0

用任何权威来回答这个问题都可能很困难。

但是,任何涉及在 HTML 页面中在 Flash 之上或之下分层的东西,比如上面的选项 #2,都需要您在页面上嵌入 SWF,其中 wmode 参数可能是错误的且性能较低(wmode="transparent"wmode="opaque")。

默认的 wmode 设置是“window”,这允许 Flash 对渲染做出假设,这应该是更优化的性能明智。更重要的是,非标准的 wmode 主要阻止 Flash 使用硬件加速(一些浏览器仍然可以像 IE9 或 Mac 上的 Safari 一样,因为它们有操作系统的支持)。

其他 wmode 中出现的错误因浏览器而异,但开发人员通常别无选择,只能使用它们。这些问题往往是微妙的,不是想惊动你。

在内存使用方面,它们很可能是相似的。无论您在页面上(或在其他浏览器选项卡/窗口中)有多少 SWF,它们都由同一个 Flash 进程运行。

如果您正在使用视频或 Stage3D 做任何事情,那么在 Flash 的顶部/下方分层通常不是一个好主意。Adobe的这篇文章有一个标题为“视频播放器和渲染优化”的部分,它提供了对性能问题的深入了解。它指的是“电视机顶盒”的非常受限的环境……同样的考虑也适用于我们有更多资源可玩的 PC。

并不是说要在 Flash 中完成所有工作。我在一两个网站上工作过,我们没有在 Flash 中完成所有工作(在视频上分层,等等),这并不是世界末日。

于 2012-11-29T20:49:43.833 回答