dim*_*suz 5 performance android textures opengl-es libgdx
我正在尝试编写一个libgdx livewallpaper(OpenGL ES 2.0),它将显示一个独特的背景图像(不可分割为精灵).
我想定位平板电脑,所以我需要以某种方式能够显示至少1280x800背景图像,其中还会发生更多动作,所以我需要它尽可能快地渲染.
现在我只有关于libgdx和opengl es的基本知识,所以我不知道解决这个问题的最佳方法是什么.
通过谷歌搜索我发现了一些选择:
同样,这里的主要观点是我的表现 - 因为绘画背景预计是最基本的东西,更多的动画将在它之上!
随着平板电脑屏幕尺寸的增长,我很快就会想要能够舒适地渲染更大的图像尺寸:)
任何意见是极大的赞赏!:)
许多平板电脑(和一些手机)支持 2048 纹理。将其绘制成一件将是最快的选择。如果您仍然需要 100% 确定,只要 GL_MAX_TEXTURE 碰巧较小 (640x400),您就可以将背景分为 2 部分。
“未来”的桌子肯定会支持更大的纹理,所以不用太担心。
对于实际绘图,只需创建一个尽可能使用 VBO 的 libgdx 网格!;)
您没有提到的两件事对性能非常重要。纹理过滤器(如果你不进行像素完美映射,GL_NEAREST是最丑的,但速度最快),纹理格式(RGBA_8888将是最好和最慢的,你可以降级它直到它满足你的需要 - 至少你可以删除 alpha,不是吗?)。
您还可以研究压缩格式,这将大大降低填充率!
我建议你开始编码一些东西,然后调整性能。您遇到的这个特殊问题稍后优化并不难。