在OpenGL ES和Android中处理大型位图

在OpenGL ES和Android中处理大型位图,第1张

概述我创建了一个使用非常大的图像作为地图的地图应用.当用户放大到一定程度时,它将显示高分辨率图块;当缩小超过50%时,将显示整个图像的低分辨率位图.效果很好,在我的原始机器人上,有时会由于从垃圾收集器中抽出新瓷砖而看到非常小的滞后.我现在正在考虑OpenGLES如何成为更好的渲染方

我创建了一个使用非常大的图像作为地图的地图应用.当用户放大到一定程度时,它将显示高分辨率图块;当缩小超过50%时,将显示整个图像的低分辨率位图.效果很好,在我的原始机器人上,有时会由于从垃圾收集器中抽出新瓷砖而看到非常小的滞后.

我现在正在考虑OpenGL ES如何成为更好的渲染方式.香港专业教育学院从来没有碰过它,但是从我在不同的哀悼中所读到的东西来看,我似乎可以创建一个具有8个左右面的四边形,并启用剔除功能,这样它只能绘制当前在屏幕上可见的图像.

这样会完全消除延迟吗?在我的测试应用程序中,现在我在应用程序启动时加载了图块,但我可以说延迟是由于这些图块是第一次绘制的.谢谢.

解决方法:

我已经写了一个基于OpenGL的地图视图,如果我自己说的话,这真是太棒了.遗憾的是,这是用于商业项目的,因此我无法提供代码.但是,我可以告诉您,它具有1个渲染线程,8个图块下载线程池以及(与您的问题最相关)1个存储线程,可将图块加载并保存到NAND闪存或SD卡.一次完成一个图块的渲染,每个图块是2个三角形(ES中没有四边形).它仍然非常快.

总结

以上是内存溢出为你收集整理的在OpenGL ES和Android中处理大型位图全部内容,希望文章能够帮你解决在OpenGL ES和Android中处理大型位图所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1083059.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存