0

我想在我的应用程序中实现一个新闻自动收报机,带有垂直和水平滚动,以及一些 alpha 动画。

我需要动画不受应用程序其余部分的影响(GPU/硬件加速)。特别是因为该应用程序将在谷歌电视盒上运行,并且预计用户将使用 D-Pad 导航,这可能会导致动画变得不稳定。

这些似乎是我的选择(我需要支持 Honeycomb 及更高版本):

  1. 使用 Android 动画类

    • 这种方法的性能是否会与使用 OpenGL 相媲美?
    • 硬件加速是否可行且可靠?
    • 最容易使用。
  2. OpenGL ES 2

    • 纹理大小似乎有 2048 个限制。如果我的标题比那个长

  3. 渲染脚本

    • 这里的文档很少。


在您看来,最好的解决方案是什么?还有哪些其他解决方案?

4

1 回答 1

1

一种常见的模式是启用硬件加速、动画,然后禁用它。但是,在基于 Intel 的 GoogleTV 盒子上,当您打开硬件加速时,文本会出现问题。我还没有在基于 ARM 的 Google TV 上尝试过。

我绝不是 OpenGL ES 专家,但我是一个超级粉丝,并且已经看到使用它为 Google TV 完成了一些很棒的事情。也就是说,我认为您对 OpenGL ES Textures 的理解是不正确的。纹理的大小应该对标题的长度几乎没有影响。我目前有一个实习生正在研究一堆 OpenGL ES 示例,我们希望在 8 月底之前发布这些示例。

即使文档很少,也有使用 RenderScript 的优秀示例代码。然而,一些开发人员无法将 RenderScript 与 d-pad 导航集成。

我的建议是使用 OpenGL ES 作为一个非常短的程序来尝试最坏的情况,看看它是如何工作的。这可能是最好的解决方案。

我可以想象为什么您在某些 GoogleTV 动画上看到断断续续,StateLists 在 D-Pading 时触发,但这不是一个无法解决的问题。

于 2012-07-13T00:19:07.247 回答