Cocos2d-x笔记记忆整理Day2

前端之家收集整理的这篇文章主要介绍了Cocos2d-x笔记记忆整理Day2前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
首先,游戏可以抽象为不断地重复“处理用户输入”->“处理定时事件”->“绘图”这三个动作,从而保持游戏进行下去,直至玩家退出游戏。

1.CCDirector:控制游戏流程的总管类,提供绘图方面的选项以及平台相关的功能。以上提到的三个动作,均包含在CCDirctor的方法中。而引擎会根据不同的平台设法使系统不断地调用这个方法,从而完成了游戏的主循环。

2.CCScene:场景的实现类,是层的容器。

3.CCLayer:层的实现类,是精灵的容器。层还可以用来接受用户输入,例如触摸事件和加速度计事件。

4.CCSprite:精灵的实现类,显示一个静态或动态的图形。图形在引擎中以纹理的形式存在,精灵可以完整或部分地显示纹理。

5.CCNode:一切游戏元素的根类,也是构成渲染树的节点。它提供了基本的绘图属性,可以作为其他节点的容器,提供定时器的功能,可以执行动作。

6.CCMenu:特殊的层,封装了游戏中常用的菜单功能

7.定时器:分为update定时器与schedule定时器,前者每一帧触发一次,而后者可以指定触发间隔。定时器由定时调度器(CCScheduler)控制,每个定时器互不干扰,串行执行。

PS:事件驱动的普通定时器调用顺序为:系统的主循环调用CCScheduler的update方法
CCScheduler的update方法调用CCTimer的update方法CCTimer的update方法调用定时器对应的回调函数。因此当回调函数触发的时刻,CCScheduler的update方法正处于迭代之中,开发者若此时停止或启用其他定时器,将导致CCScheduler的update方法被破坏,这是开发者所不希望看到的。Cocos2d-x的设计中,通常将这种情况以标记的方式避免迭代破坏。例如,作以“需要被删除”的标记,在此次迭代之后,再清理被标记的定时器。
原文链接:https://www.f2er.com/cocos2dx/339970.html

猜你在找的Cocos2d-x相关文章