Actionscript:在 iOS 上创建文本字段和填充的性能
Actionscript: performance of creating text fields and fills on iOS
我很想知道我可以期待 iOS 上的 Air 有什么样的表现。我有一个 class,它创建 30 个显示对象,每个显示对象都有几个文本字段和一个填充。
在我的电脑上创建每个显示对象大约需要 0.011 秒。这在 iPad Retina (A7) 上提高到 0.056。
根据我的调试,创建和格式化文本字段大约需要 0.004。
当我达到 30 个显示对象时,0.056 变为 1.68 秒。
这是典型的吗?
有什么办法吗?
我跟踪了 class 的每个阶段,每个函数的执行时间都差不多,所以我认为没有一个特定阶段有问题。
欢迎来到移动设备的世界。它们都具有非常低的(如果与台式 PC 相比)CPU 功率,而 Flash 使用 CPU 来正常呈现其内容。
- 需要在屏幕上重绘的区域越大 - 性能越差
- 要绘制的对象越多 - 性能越差
形状、笔触、填充、字体 - 它们都是 Flash 需要渲染和绘制的矢量数据,因此它们都会对 CPU 使用造成严重影响,这也会导致大量电池消耗。这就是为什么 Apple 很久以前就停止在其设备上支持 Flash 插件的原因。
然后 Adobe 宣布了 Stage3D,它允许(通过一定的工作量)利用 GPU 渲染,即使在台式机上也更快,并且确实为移动设备上的 Flash/AIR 应用程序节省了时间.
长话短说,性能缓慢是原生 Flash 内容的现状。如果你想在移动设备上获得更好的性能和更快的应用程序,你需要继续使用一些支持 GPU 的框架,比如 Gamua Starling。
我很想知道我可以期待 iOS 上的 Air 有什么样的表现。我有一个 class,它创建 30 个显示对象,每个显示对象都有几个文本字段和一个填充。
在我的电脑上创建每个显示对象大约需要 0.011 秒。这在 iPad Retina (A7) 上提高到 0.056。
根据我的调试,创建和格式化文本字段大约需要 0.004。
当我达到 30 个显示对象时,0.056 变为 1.68 秒。
这是典型的吗?
有什么办法吗?
我跟踪了 class 的每个阶段,每个函数的执行时间都差不多,所以我认为没有一个特定阶段有问题。
欢迎来到移动设备的世界。它们都具有非常低的(如果与台式 PC 相比)CPU 功率,而 Flash 使用 CPU 来正常呈现其内容。
- 需要在屏幕上重绘的区域越大 - 性能越差
- 要绘制的对象越多 - 性能越差
形状、笔触、填充、字体 - 它们都是 Flash 需要渲染和绘制的矢量数据,因此它们都会对 CPU 使用造成严重影响,这也会导致大量电池消耗。这就是为什么 Apple 很久以前就停止在其设备上支持 Flash 插件的原因。
然后 Adobe 宣布了 Stage3D,它允许(通过一定的工作量)利用 GPU 渲染,即使在台式机上也更快,并且确实为移动设备上的 Flash/AIR 应用程序节省了时间.
长话短说,性能缓慢是原生 Flash 内容的现状。如果你想在移动设备上获得更好的性能和更快的应用程序,你需要继续使用一些支持 GPU 的框架,比如 Gamua Starling。