欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

2dx 分辨率

程序员文章站 2024-01-25 22:28:16
...

1.分辨率 (1) getWinSize: 设计分辨率大小 getVisibleSize 设计分辨率能看到的小一般等于设计分辨率大小 getOpenGLView ()- getFrameSize () 屏幕的实际分辨率 getVisibleOrigin 屏幕的起点坐标左下角有时候并不是 (0, 0) CCDirector *myDirector = CCDirec

1.分辨率

(1)

getWinSize: 设计分辨率大小

getVisibleSize 设计分辨率能看到的小一般等于设计分辨率大小

getOpenGLView()->getFrameSize() 屏幕的实际分辨率

getVisibleOrigin 屏幕的起点坐标左下角有时候并不是 (0, 0)


CCDirector *myDirector = CCDirector::sharedDirector()

myDirector->getOpenGLView()->setDesignResolutionSize(640,960, ResolutionType)

ResolutionType: (分辨率类型)

kResolutionFixedHeight、kResolutionFixedWidth、kResolutionShowAll、kResolutionExactFit、kResolutionNoBorder
640 960

2:3屏幕的宽高比例把设备的分辨率设成了640 960, 如果设成320 480 用图片大小事640 960的要 scale 0.5,一般这两个值设成640 960,

有时候可能为了适合cocosbuilder的 ccbi是320 480的,屏幕的比例大于2:3设备比较宽,否则设备是高了


(2) kResolutionNoBorder

noborder可以越界,此时的getWinSize 和 getVisibleSize不相等,getVisibleorigin也不是0

ipad: 分辨率 768 1024,768:1024 > 2:3 这种分辨率类型下height = 768 x 3 /2 = 1152 ,从中间向上 下扩展

getVisibleorigin 的x = 0 , y = (1152-1024) / 2 getVisibleSize=(768,1024) getWinSize=(768,1152

iphone5: 分辨率640 1136, 640:1136

getVisibleorigin 的x = (757-640) / 2 , y=0 getVisibleSize=(640,1136)getWinSize=(757,1136

粗线设备屏幕大小,细线设置后的分辨率,(0,0)起始点。

这种配置一般适合向四周都能拖动的游戏。

2dx 分辨率2dx 分辨率


(3) kResolutionExactFit

exactfit整个屏幕匹配,getWinSize 和 getVisibleSize相等,getVisibleorigin (0,0)

ipad: 分辨率 640 960,768:1024 > 2:3,宽度会被自动拉伸,真正的宽度,w=1024 x 2/3 = 682,被拉伸了 768/682

getWinSize = CCSize(640, 960)

iphone5: 分辨率640 960, 640:1136

getWinSize = CCSize(640, 960)

优点:整个屏幕的适配不会有任何的黑边或填充黑边的固定图片

缺点:在一些设备上图片会被拉伸


(4) kResolutionShowAll

shwoall 屏幕的比例都会安装设计的分辨率来,640 960就是3:2,多余的部分将会使黑边,ipad左右黑边,iphone5s上下黑边

getWinSize 和 getVisibleSize相等除了黑边以外的size,getVisibleorigin (0,0)左下角不是黑边的地方开始

ipad: 分辨率 768 1024,768:1024 > 2:3 这种分辨率类型下w=1024 x 2/3 = 682 ,两边黑边的宽度 (768-682)/2

getWinSize = CCSize(682, 1024)

iphone5: 分辨率640 1136, 640:1136 h = 640 x 3/2 = 960