温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

cocos2d-x一些核心概念介绍

发布时间:2020-07-06 11:28:16 来源:网络 阅读:627 作者:tony关东升 栏目:游戏开发

cocos2d-x一些核心概念介绍

Cocos2d-x中有很多概念,这些概念很多来源于动画、动漫和电影等行业,例如:导演、场景和层等概念,当然也有些有传统的游戏的概念。Cocos2d-x中核心概念:导演, 场景,层,节点,精灵,菜单动作,效果,粒子运动,地图,物理引擎。

下面我们介绍导演、场景、层、精灵、菜单概念以及对应的类,由于节点概念很重要我们会在下面详细介绍,而其他的概念将在后面介绍。

导演


导演类Director(v3.0之前是CCDirector)用于管理场景对象,采用单例设计模式,在整个工程中只有一个实例对象。由于是单例模式能够保存一致的配置信息,便于管理场景对象。获得导演类Director实例语句如下:


  1. auto director = Director::getInstance();  


导演对象职责如下:访问和改变场景,访问Cocos2d-x的配置信息,访问视图对象,暂停、继续和停止游戏,转换坐标。

Director类图

cocos2d-x一些核心概念介绍


从类图中还可以看到它有一个子类是DisplayLinkDirector。

 

场景

场景类Scene(v3.0之前CCScene)是构成游戏的界面,类似于电影中的场景。场景大致可以分为以下几类:展示类场景。播放视频或简单的在图像上输出文字,来实现游戏的开场介绍、胜利和失败提示、帮助介绍,选项类场景,主菜单、设置游戏参数等,游戏场景。这是游戏的主要内容。

从类图可见Scene继承了Node类,Node是一个重要的类,很多类都从Node类派生而来,其中有Scene、Layer等。

cocos2d-x一些核心概念介绍 

层是我们写游戏的重点,我们大约 99%以上的时间是在层上实现我们游戏内容。层的管理类似于Photoshop中的图层,它也是一层一层叠在一起。下面是一个简单的主菜单界面是由三个层叠加实现的。

cocos2d-x一些核心概念介绍


为了让不同的层可以组合产生统一的效果,这些层基本上都是透明或者半透明的。层的叠加是有顺序的,如图所示从上到下依次是:菜单层→精灵层→背景层。Cocos2d-x是按照这个次序来叠加界面的。这个次序同样用于事件响应机制,即菜单层最先接收到系统事件,然后是精灵层,最后是背景层。在事件的传递过程中,如果有一个层处理了该事件,则排在后面的层将不再接收到该事件了。每一层又可以包括很多各式各样的内容要素:文本、链接、精灵、地图等等内容。

下面是层类Layer的类图。

cocos2d-x一些核心概念介绍


精灵

精灵类Sprite(v3.0之前CCSprite)是游戏中非常重要的概念,它包括了敌人、控制对象、静态物体和背景等。 通常情况它会进行运动,运动方式包括了:移动、旋转、放大、缩小和动画等。

下面是Sprite类图,从图中可见Sprite是Node派生类,Sprite包含很多类型,例如物理引擎精灵类PhysicsSprite也都属于精灵。

 cocos2d-x一些核心概念介绍


菜单

菜单在游戏在是非常重要的概念,它提供操作的集合,在Cocos2d-x中菜单类是Menu,从类图可见Menu类派生于Layer。

cocos2d-x一些核心概念介绍


在菜单中又包含了菜单项MenuItem,从图中可见菜单项MenuItem有很多种形式的子类,如MenuItemLabel、MenuItemSprite和MenuItemToggle,它表现出不同的效果。每个菜单项都有三个基本状态:正常、选种和禁止。

cocos2d-x一些核心概念介绍

 

更多精彩内容请关注史上最牛的cocos2d-x课程

cocos2d-x手机游戏开发实战》直播课程第一期

报名Cocos2d-x直播课程还送关东升老师iOS终身会员

课程链接:http://edu.51cto.com/pack/view/id-13.html

会员链接:http://edu.51cto.com/member/id-3.html


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI