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

   近来将引擎版本从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时,引擎会自动折算, 大家自己试一下就知道了。


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

    

你可能感兴趣的:(Cocos2d-x 分辨率自适应解决方案)