Cocos2d-x 分辨率自适应解决方案

简介:    近来将引擎版本从2.0.4升级到2.1.5版本,其实是2.1.5b(带有Cocostudio解析库的版本,但这并不会影响效果)。    原先的自适应方案在Y轴上有一些偏差,特别是当前分辨率与设计分辨率相差很大时,Y轴上还是非常明显的。    目前的解决方案非常简单,仅需要设置设计时的分辨率即可:    在AppDelegate.cpp中:      CCEGLView

   近来将引擎版本从2.0.4升级到2.1.5版本,其实是2.1.5b(带有Cocostudio解析库的版本,但这并不会影响效果)。

   原先的自适应方案在Y轴上有一些偏差,特别是当前分辨率与设计分辨率相差很大时,Y轴上还是非常明显的。

   目前的解决方案非常简单,仅需要设置设计时的分辨率即可:

   在AppDelegate.cpp中:

    

   CCEGLView::sharedOpenGLView()->setDesignResolutionSize(640, 960, kResolutionExactFit);
   

   其中,640 * 960 是设计时候采用的分辨率,第三个参数选择:kResolutionExactFit

    在以下分辨率测试,完全没有问题,图缩放正确,坐标也正确:

    480 * 640
    480 * 800
    480 * 768
    480 * 854
    640 * 960
    600 * 800

  

    以上仅有480 * 800经过真机测试,其余的仅是在PC上修改main.cpp的值。有条件的同志可以测试下,如果有误差,还麻烦告知。


    在平时设计中,可以使用相对坐标,也可以使用绝对坐标。

    例如:在640 * 960 下,有一个精灵坐标在(100, 200)。

    当分辨率改为480 * 800时,引擎会自动折算, 大家自己试一下就知道了。


    唯一有遗憾的在于字体大小,当修改为小与设计分辨率的分辨率时,字体会变小好多。这时候应该设置一个缩放因子,来扩大。具体方案测试后给出。

    

相关文章
|
7月前
|
编解码 UED
描述一下你是如何处理不同屏幕尺寸和分辨率的。
```markdown 使用响应式设计、媒体查询适应屏幕尺寸;利用弹性布局保证元素自适应;通过图像适配提供高质量视图;多设备测试与优化确保兼容性,持续关注新技术以应对屏幕多样性。 ```
57 3
|
编解码 图形学
|
2月前
|
计算机视觉 Python
目标检测笔记(四):自适应缩放技术Letterbox完整代码和结果展示
自适应缩放技术Letterbox通过计算缩放比例并填充灰边像素,将图片调整为所需尺寸,保持原始比例不变,广泛应用于目标检测领域。
54 1
目标检测笔记(四):自适应缩放技术Letterbox完整代码和结果展示
|
7月前
|
人工智能 安全 API
Unity优化——加速物理引擎1
Unity优化——加速物理引擎1
152 0
|
编解码 API 图形学
|
编解码
LabVIEW自适应屏幕分辨率的两种方法
前阵子做的一个项目是在显示器分辨率为 2560*1600,缩放选项为 150% 的笔记本上开发的,但是当 vi 文件在另一台显示器分辨率为 1920*1080,缩放选项为 150% 的笔记本上时出现了显示不完全的问题,也就是说,换成了低分辨率的显示器后,并没有自适应屏幕,因此花费了一点儿时间解决了这个问题,在此记录一下。
436 2
|
编解码 前端开发 数据可视化
前端各种分辨率问题总结
前端各种分辨率问题总结
|
vr&ar 图形学
Unity 的基础光照
Unity 的基础光照
158 0
Unity 的基础光照
|
编解码
指定分辨率,如何从相机分辨率中选择最合适的?
指定分辨率,如何从相机分辨率中选择最合适的?
154 0
|
前端开发 JavaScript Android开发