我所理解的cocos2dx自适配屏幕大小方案
这里主要有两个点:
1.屏幕大小的设置,也就是手机窗口的大小,在各个手机上面或者平板上的屏幕的大小。
这个大小的设置就是代码里面的:glview->setFrameSize(width, high);
2.设计大小,也就是游戏里面应该显示的大小设置,在游戏制作的时候,游戏工程师们是不会说为不同尺寸的移动设备做几个不同的大小的界面,其实也可以做,只是这样做非常的不明智,因为这样工程量会相当的大,所以就只有做一些取舍,比如说缩放,缩放到刚好有一个元素(长或者宽)刚好和设备的屏幕合适。而另一边就不是这么完美了,因为长宽比例会不一样嘛,不可能每一个设备的长宽比例一样的(毛主席也没有这么规定啊)。所以,平庸的cocos2d研发者也只有想到几种容易想到的办法,比如说,长度适配或者宽度适配,然后等比缩放、又或者说长宽按比例缩放,可能还有其他的吧。。。。
这些缩放就是用屏幕大小和设计大小来相除得到缩放因子来处理的。
所以说就是这样啦!!!“适配原则”…………我只想说这是一个“装逼”的社会。
我所理解的cocos2dx自适配屏幕大小方案的更多相关文章
- cocos2d-x JS 获取屏幕大小或中点
以一张背景图为例: var HelloWorldLayer = cc.Layer.extend({ ctor:function () { this._super(); var bg = new cc. ...
- 关于web页自动适配屏幕大小
一.先了解下html5的viewport使用 随着高端手机(Andriod,Iphone,Ipod,WinPhone等)的盛行,移动互联应用开发也越来越受到人们的重视,用html5开发移动应用是最好的 ...
- rem 适配屏幕大小
window.onresize=function(){ var html=document.getElementsByTagName("html")[0]; var width=w ...
- Cocos2dx开发之屏幕适配
由于各种智能手机的屏幕大小都不一致,会出现同一张图片资源在不同的设备分辨率下显示不一样的问题.为避免这样的情况,需要Cocos引擎能提供多分辨率的支持,也就是说要求实现这样的效果 — 开发者不需要考虑 ...
- Cocos2dx 3.x 屏幕适配
Cocos2dx 3.10+Cocos Studio3.10 1.在适配过程中必须明确几个概念: ①Frame大小:这个值在windows/mac/linux下就是创建窗体的大小,在手机上就是屏幕大小 ...
- 我所理解的Cocos2d-x
我所理解的Cocos2d-x(完全基于Cocos2d-x3.0,深度剖析计算机图形学,OpenGL ES及游戏引擎架构,全面提升游戏开发相关知识) 秦春林 著 ISBN 978-7-121-246 ...
- Android屏幕大小适配问题解决
转载: 一.一些基本概念 1.长度(真实长度):英寸.inch 2.分辨率:density 每英寸像素数 dpi(密度) 3.像素:px 4.dip的公式:px /dip=dpi/160 所以 d ...
- 国内外移动端web适配屏幕方案
基础知识点 设备像素:设备像素又称物理像素(physical pixel),设备能控制显示的最小单位,我们可以把这些像素看作成显示器上一个个的点. iPhone5的物理像素是640X1136. PS: ...
- 国内外移动端web适配屏幕方案总结
基础知识点 设备像素:设备像素又称物理像素(physical pixel),设备能控制显示的最小单位,我们可以把这些像素看作成显示器上一个个的点. iPhone5的物理像素是640X1136. PS: ...
随机推荐
- Myeclipse如何设置字体大小
由于Myeclipse一般是英文版的,这就给英语不太好的人带来了一定的麻烦,有时连设置个字体都无法顺利进行!!! 工具/原料 Myeclipse 方法/步骤 双击启动Myeclipse 点击& ...
- sql 行转 列, 列转行
行列互转 复制代码 create table test(id ),quarter int,profile int) insert into test values(,,) insert into te ...
- WinForm------字段不能为空错误
错误信息: "System.Data.ConstraintException"类型的异常在 EntityFramework.dll 中发生,但未在用户代码中进行处理 其他信息: T ...
- 半透明状态栏(适用于搜索等)CSS样式
.search-{ -webkit-box-flex: ; -moz-box-flex:; text-align: left; font-size:14px; line-height:22px; he ...
- JavaScript学习笔记——流程控制
javascript流程控制流程:就是程序代码的执行顺序.流程控制:通过规定的语句让程序代码有条件的按照一定的方式执行. 一.顺序结构 按照书写顺序来执行,是程序中最基本的流程结构. 二.选择结构(分 ...
- 利用Ramdisk为Firefox 加速
用Firefox的人可能会羡慕Chrome的速度,但是又不舍得丢弃Firefox.Firefox的加速,可能通过一系列的方法,例如用fasterfox扩 展.但利用虚拟内存盘 Ramdisk ,将将内 ...
- mysql之用户授权
授权命令: 1.全部权限:grant all on *.* to user@192.168.10.2 identified by "pass": 2.部分权限:grant sele ...
- String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+pat----------<base>元素有关
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request. ...
- CentOS7挂载分区教程
http://www.centoscn.com/CentOS/config/2014/1016/3955.html
- thinkphp 项目分组 -开发随笔1
php中变量的声明, 和变量的初始化 是结合在一起的, 要声明变量, 就是通过初始化变量来实现的. 感觉页面版式的布局, 还是: 先大致规划出布局, 如两栏 三栏, 一览的左右上下结合, 搭配. 然后 ...