• cocos2dx-屏幕设置


    声  明


           本教程仅用于初学cocos2dx同学使用,内容由本人(孤狼)学习过程中笔记编写,本教程使用cocos2dx版本为2.1.4。本教程内容可以自由转载,但必须同时附带本声明,或注明出处。

    gl.paea.cn版权所有。



           Hello,大家好,欢迎回到“和屌丝一起学coocs2dx”系列教程。上节我们说到了“粒子特效”。不知道大家玩的开心不,我们的基本课程已经接近尾声了。后面的东西,就看大家自己的努力了,我也要做自己的项目了,如果速度够的话,我会把我的项目发布的。嘿嘿。好了这节我们说下-屏幕设置。



    【一】:设置啥


    首先是换竖屏,然后还有个比较重要的,就是自适屏。


    【二】:横竖换屏


    1.打开main.cpp文件

    找到eglView->setFrameSize(320, 480);,这里设置成你要的分辨率,用于开发。



    2.生成android项目后修改AndroidManifest.xml文件

    android:screenOrientation="landscape"横屏显示(默认)

    android:screenOrientation="portrait"竖屏显示



    【三】:自适屏


    这里算是个难点,应为android的开源,机型千奇百怪,我们没有办法去适应所有的屏幕,选择的方案也很多。

    1.针对每个分辨率做一套方案

    2.cocos2dx2.0.4以后提供的缩放方案


    这么看来第一种是绝对没有问题的,但是对一般的开发者来说,工程量太大,所以第二种相对更适合。


    使用方法:

    1.打开AppDelegate.cpp文件。

    找到pDirector->setOpenGLView(CCEGLView::sharedOpenGLView());

    在这行的下面写(注意位置不能错,不然有问题)

    CCEGLView::sharedOpenGLView()->setDesignResolutionSize(480, 800, kResolutionNoBorder);

    这里我们使用的是setDesignResolutionSize函数,他的三个参数分别是(设计宽,设计高,缩放方式)。该函数会自动按设计宽高和缩放方式适应手机屏幕。


    缩放方式:

    kResolutionExactFit        //自动缩放宽高全部显示(会变形)

    kResolutionNoBorder     //不留黑边全屏展示(不变形,但是长的那边会被裁减)

    kResolutionShowAll        //全部展示不裁剪(可能会留黑边)



    【三】:坐标


    我们坐标需要按照屏幕的实际大小来,所以也要使用相对坐标。


    //获取可视区域大小(用户手机分辨率)

    CCDirector::sharedDirector()->getVisibleSize();

    //获取可是区域左下角坐标

    CCDirector::sharedDirector()->getVisibleOrigin();


    这个是基本元素,之后,网上有很多说分9点来确定相对坐标系,也是靠他们俩来拼合的。




    【四】:缩放


    现在新版本缩放已经自动了。nothing to do。


  • 相关阅读:
    性能测试——监控前端性能
    centos7 查看防火墙状态
    Flutter项目实战之女装商城------火爆专区实现、商品分类数据准备
    鸿蒙系统,我要拥抱你~~
    【python3】python中 r'', b'', u'', f'' 的含义
    【python3】excel输入输出
    【python3】return和yield的区别
    【python3】spyder中清除变量命令
    【文章知识点】深度解析长末端重复反转录转座子(LTR-RTs)
    【python3】给List添加元素
  • 原文地址:https://www.cnblogs.com/Anzhongliu/p/6091974.html
Copyright © 2020-2023  润新知