【问题标题】:Adobe AIR cacheAsBitmap and GPU renderingAdobe AIR cacheAsBitmap 和 GPU 渲染
【发布时间】:2013-07-30 21:32:00
【问题描述】:

在优化 Flash 指南的第 68 页 http://help.adobe.com/en_US/as3/mobile/flashplatform_optimizing_content.pdf

它声明必须在 displayObjects 上启用 cacheAsBitmap 才能使 GPU 渲染获得任何好处。

对于 FP11 以及使用 AIR 定位移动设备时是否仍然如此?

【问题讨论】:

    标签: caching air gpu


    【解决方案1】:

    是的,GPU 渲染仅对缓存位图表示的对象有用。

    但是,事情没那么简单,你不能只在所有东西上打开 cacheAsBitmap 和 cacheAsBitmapMatrix 并获得性能提升。位图缓存会导致内存损失(移动设备上的主要考虑因素),并且对于频繁更改的对象可能会导致性能下降(因为缓存经常被丢弃)。

    这里有更深入的信息:

    Application performance optimization on Android

    Adobe AIR - Mobile Performance – Tips & Tricks

    【讨论】:

      【解决方案2】:

      谢谢。仍然对如何以及何时正确使用组合的“cacheAsBitmap 和 cacheAsBitmapMatrix”属性感到困惑。

      如果我有一个由在时间轴上动画的位图组成的木偶角色,如果将“cacheAsBitmap 和 cacheAsBitmapMatrix”属性应用于实际的木偶影片剪辑,我会受益吗?还是先将每个位图元素(头部、手臂、腿、躯干)转换为影片剪辑?

      【讨论】:

      • 我猜不会。由于动画部分可能会经常进行动画处理,因此每次都需要渲染生成的影片剪辑以进行缓存,这可能会抵消任何好处。但是,形成角色的各个部分可能是一个更安全的选择,特别是如果您包含 cacheAsBitmapMatrix 这样旋转和调整大小不会触发缓存重绘。当然,您需要进行一些测试才能确定。
      • 谢谢。我想到的。无论如何,当一个相当复杂的应用程序以 60fps 为目标时,我会获得 50+ fps,所以我是一个快乐的露营者。除非针对多个和较旧的移动设备,否则尚未看到对专用 Stage3D 框架的需求。
      • 50fps 绝对是不错的表现。而且,坦率地说,如果你能设法从中获得不错的性能,旧的显示列表仍然比 Stage3D 有很多优势。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-09-15
      • 2012-05-12
      • 2015-07-22
      • 2010-10-17
      • 1970-01-01
      • 2023-04-05
      • 1970-01-01
      相关资源
      最近更新 更多