【问题标题】:why google android do costly alpha blending?为什么 google android 做昂贵的 alpha 混合?
【发布时间】:2012-04-23 05:56:03
【问题描述】:

在 android 中,当在视图上使用 alpha 混合时,视图被渲染为 opengl 纹理,然后纹理在帧缓冲区上以 alpha 值渲染...我想知道他们为什么这样做,不是直接使用 alpha 值将视图渲染到目标缓冲区的成本更低???还是我在这里遗漏了什么?

【问题讨论】:

    标签: android user-interface rendering alpha hardware-acceleration


    【解决方案1】:

    您错过了必须进行混合以获得最终颜色的东西,为此有 3 个选项:

    1. 使用 GPU 与帧缓冲区混合。
    2. 混合到硬件中的帧缓冲区。
    3. 使用图像合成/处理硬件进行混合。

    如果您想知道为什么不直接访问帧缓冲区,渲染到纹理的原因是与目标 alpha 相关,即将存储在纹理中的 alpha 值。如果视图的透明部分下方有东西,这将存在。您建议的优化只能在保证视图不透明的情况下使用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-06-18
      • 1970-01-01
      • 2015-07-12
      • 1970-01-01
      • 2012-09-20
      • 2017-10-12
      • 2011-05-03
      相关资源
      最近更新 更多