Libgdx中不同分辨率图片替换的解决方案-创新互联
最近做产品开发,考虑到以后会在pad和手机平台发布,所以图片要用到不同的尺寸,比如做HD版本。但是如果在程序中直接替换图片而不影响到功能呢?
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名申请、网页空间、营销软件、网站建设、芗城网站维护、网站推广。Libgdx的相关资料找了很久,发现已经有针对IOS系统Retina的解决方案,只需要在配置文件中填写缩放比例即可,正式我们想要的。但是仔细看了一下,应该是第三方IOS类库实现的功能,那在Android下如何解决呢?
解决这个问题首要保证的就是Stage的尺寸是不能变的,因为程序中大量用到坐标参数,一旦改变就会引发很多关联问题。经过初步研究,我发现本地图片如果放大一倍,其实只是每个Texture占了更大的面积,如果能把图片显示时再缩小一倍就能解决问题。当屏幕尺寸是2倍的情况,那图片就相当于没有缩小,也就是我们预期的效果。我们的系统中基本上所有图片都是利用TextureRegion的封装,并没有直接去draw texture/sprite的方式,所以这缩小的工作就定在TextureRegion里面去实现。仔细分析了源代码,我发现直接在getRegionWidth和getRegionHeight上做文章即可,这里修改源码让应有的图片宽度进行相应比例的缩小,这样最终显示就能达到放大的本地图片按正确比例显示。
只是在图片显示上做缩放调整,应该对功能影响比较小,这个方案初步测试通过,实际使用还有待继续考证。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
文章名称:Libgdx中不同分辨率图片替换的解决方案-创新互联
标题来源:http://pwwzsj.com/article/ddioho.html