##如何建立一个多分辨率的游戏或应用程序? 做为一个开发者,你确定不想每次都重写一次代码来保证不一样设备下相同的用户体验.
可是,你又会遇到一个不可避免的问题:市面上设备的尺寸太多样化了,大的小的,老的少的.
为此,若是你想开发一个跨平台的游戏或应用程序,有2个比较理想的方案:app
###A.)适用于应用程序的密度无关性 在游戏中,你一般但愿在不一样平台下能有一个相同的游戏体验.
可是,在移动设备IOS & Android & Windows Phone
中,你想充分利用屏幕空间的最好办法.less
一个理想的跨平台的用户体验,应该是无论什么平台的屏幕密度 & 屏幕大小 & 屏幕分辨率,都有一个你想要的按钮和文本元素尺寸以便操做.此外,在高密度设备中图像应该是很是清晰的,并在低端设备不会过多浪费宝贵的内存.布局
同时为了进一步提升用户体验度,须要响应式设计,意思以下例:.net
V-Play
能够帮你解决这些挑战,以跨平台的方式! 所以,只须要一份代码,就能够轻易的建立一个适配不一样设备的应用程序. 为了深刻指导如何作到这一点,能够看看这个How to Support Muliple Screen Sizes & Screen Densities 设计
###B.)适用与游戏的内容缩放 我将要展现的是一种最适合游戏的技术,叫作内容缩放.code
在一个逻辑场景尺寸中缩放适配不一样设备的分辨率,这个概念的好处以下:游戏
VS
手机(这在游戏排行榜中尤为突出).你能够设置不一样的缩放模式,来使逻辑场景与显示屏分辨率匹配. 接下来我将介绍letterbox
,这是最重要的也是默认的缩放模式. ####Letterbox Scale Mode 这种缩放模式缩放的内容尺寸是一致的,而较小的四边则留空显示. 这意味着不一样设备上均可以看到整个逻辑场景. 不足之处,在长宽比不一样的逻辑场景中,会有黑色边框,如图:
为了解决这个问题,你能够增长你的背景图像的大小来填充边框,因此应该建立4:3和16:9的长宽比的背景图像,而不是3:2.图片
在下面这张图片,你能够看到,4:3和16:9的长宽比都能较好的适配不一样屏幕尺寸的比例.
ip
为了使你更轻松,咱们已经计算并准备好了你的背景图像应该支持的全部设备的尺寸.内存
Device type | Logical Scene Size | Suggested Background Size |
---|---|---|
sd | 480x32 | 570x360 |
hd | 960x640 | 1140x720 |
hd2 | 1920x1280 | 2280x1440 |
TODO:如下内容待补充...
####动态切换精灵图(也叫雪碧图)
####如何使游戏布局更合理
####高级主题
在某些状况下,你想在不一样设备(平板电脑 & 移动设备 & PC)下拥有不一样的UI和布局.
####准备起飞(你咋不上天嘞) 如今你能够试着把这些概念付之于行动!