享受"啪"的按下Enter的快感。 (by云风)

cocos2dx是不是个toy引擎,不同的人有不同的看法。可是你不得不承认它非常受欢迎。好多非常火的手游使用的就是cocos2dx,比方我叫mt。我自己工作中,也有多个项目使用了这个引擎。

我之前没写过关于cocos2dx的文章,自己也没有系统地学习过。如今。我打算写一些这方面的文章,通过写blog来又一次梳理下cocos2dx的知识。这也是写blog的一个优点。


Director
游戏是具有交互性的电影。把制作游戏看成是拍电影的话,Director类就是游戏的总导演。管理着游戏的场景切换,控制游戏元素,屏幕尺寸的获取。这个类被设计成单例。

Scene
一个游戏至少得有一个场景,因此,Scene是不可缺少的。
Director控制场景的方法:
  • runWithScene:启动游戏,并执行该场景。
  • pushScene:将正在执行的场景暂停并压栈,显示传入的场景。官方说仅仅有存在正在执行的场景时才调用该方法,但我用cocos2d-x-2.2.5版本号试了下。将第一个场景使用该函数而不是runWithScene,还是能够正常执行的。

  • popScene:与pushScene相应。

  • replaceScene:切换场景最经常使用的方法。尽管会释放之前的场景,但你的内存必须同一时候足够容纳下正在执行和将要执行的场景。

    由于他是载入完传入的场景后才释放的。

Layer
Layer是处理玩家事件响应的Node子类。

Sprite
Cocos2d中的精灵和其它游戏引擎中的精灵相似。它能够移动,旋转,缩放,运行动画。并接受其它转换。

使用Texture2D载入图片。能够用Texture2D生成相应的SpriteFrame(精灵帧),将SpriteFrame加入到Animation生成动画数据,用Animation生成Animate(就是终于的动画动作),最后用Sprite运行这个动作。


scheduler
开发中通经常使用到三种调度器:
schedulerUpdate:默认没有启用。通过运行schedulerUpdate()调度器每帧运行 update方法,假设须要停止这个调度器。能够使用unschedulerUpdate()方法。每一帧都运行。
scheduler:取消该调度器能够用unschedule(SEL_SCHEDULE selector, float delay);因为引擎的调度机制,自己定义时间间隔必须大于两帧的间隔。否则两帧内的多次调用会被合并成一次调用。所以自己定义时间间隔应在0.1秒以上。
schedulerOnce:比如,scheduleOnce(schedule_selector(HelloWorld::updateOnce), 0.1f);


初识cocos2dx——入门第一篇的更多相关文章

  1. ElasticSearch入门 第一篇:Windows下安装ElasticSearch

    这是ElasticSearch 2.4 版本系列的第一篇: ElasticSearch入门 第一篇:Windows下安装ElasticSearch ElasticSearch入门 第二篇:集群配置 E ...

  2. Flink入门-第一篇:Flink基础概念以及竞品对比

    Flink入门-第一篇:Flink基础概念以及竞品对比 Flink介绍 截止2021年10月Flink最新的稳定版本已经发展到1.14.0 Flink起源于一个名为Stratosphere的研究项目主 ...

  3. Zookeeper 入门第一篇

    转载原文地址: ZooKeeper学习总结 第一篇:ZooKeeper快速入门 ZooKeeper学习总结 第二篇:ZooKeeper深入探讨 ZooKeeper学习第一期---Zookeeper简单 ...

  4. JavaMail入门第一篇 邮件简介及API概述

    现如今,电子邮件在我们的生活当中扮演着越来越重要的角色,我们每个人几乎都会与其打交道(至少时不时我们都会接收到莫名其妙的垃圾邮件),在工作中,使用邮件进行交流沟通,可以使我们的工作有迹可循,也显的较为 ...

  5. flask入门第一篇

    一. Python 现阶段三大主流Web框架 Django Tornado Flask 对比 1.Django 主要特点是大而全,集成了很多组件,例如: Models Admin Form 等等, 不 ...

  6. cocos2d-x入门学习篇;切换场景

    手机游戏开发最近很火爆,鉴于一直在学习c++,看起来上手就比较快了.这篇文章来自皂荚花 cocos2d-x技术,我把我的想法分享给大家. 首先来看一段代码: CCScene* HelloWorld:: ...

  7. Android JNI入门第一篇——HelloJni

    android支持使用NDK开发C程序,关于配置NDK环境问题应该不用再赘述了,这个网上有很多,这里通过一篇实例来讲述简单的JNI开发,大家可以参考这篇文章(Get Your Eclipse-Inte ...

  8. NLP初试牛刀,NLTK入门第一篇

    之前下载过一个PDF,书名是<用python进行自然语言处理>,挺有意思的,加上NLP和机器学习目前大热,想趁着暑假涉猎一下.于是开始了入门NLP之旅. 安装环境:Ubuntu14.04桌 ...

  9. WWF3入门<第一篇>

    工作流是什么东西?暂时还不是很弄得清除. 工作流是用来解决什么问题的?暂时只是形成了一个很模糊的概念,还没办法用语言描述出来. 一.入门范例 以VS2008为例,先来创建一个WWF程序. 在工具箱中, ...

随机推荐

  1. VMware 安装LINUX系统(一)

    我用的是WORKSTATION 15 PRO https://www.vmware.com/asean/products/workstation-pro/ 1.安装LINUX 打开Vmware,点击创 ...

  2. codeforces 708ALetter Cyclic Shift

    2019-05-18 09:51:19 加油,加油,fightting !!! https://www.cnblogs.com/ECJTUACM-873284962/p/6375011.html 全为 ...

  3. [转]C# ListView 单击标题实现排序(在转载的基础上有所完善)

    using System; using System.Collections; using System.Windows.Forms; //在转载的基础上有所完善 namespace TDRFacto ...

  4. windows7 安装 choco

    windows7 安装 choco: cmd下: @"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -N ...

  5. size_t与size_type的使用

    size_t 是为了方便系统之间的移植而定义的 在32位系统上 定义为 unsigned int在64位系统上 定义为 unsigned long 更准确地说法是 在 32位系统上是32位无符号整形在 ...

  6. DBGridEh checkbox的一个问题

    function TCustomDBGridEh.CheckBeginRowMoving(MouseX, MouseY: Integer; CheckInOnly: Boolean): Boolean ...

  7. 从ReadImage到ML- 一个不错的博客

    实在对不起原作者,为了不把文章淹没在 转载的海洋里.... 原文链接:     http://www.cnblogs.com/tornadomeet/archive/2012/09/26/270404 ...

  8. 3D集合图元:最小边界框/包围盒(boundingbox)

    对于2D边界框的应用时比较广泛地,它为一个简单匹配建立了很小的计算规则,3D模型的boundingbox则比较困难,计算代价较大.对于PCL库的使用则降低了计算难度,三维数值化降低了建模过程,可以使用 ...

  9. PCL:全程详解 VS2010+PCL配置

    浑浑噩噩半年时间,终于不得不干点和机器人有关的东西.ICRA和IROS推荐的三维图形库-点云库,几乎成了机器人视觉算法的标配. 参考了几篇文章,最后终于配置成功. 下面是文章地址: 这个有点看头,累积 ...

  10. 项目随笔@Service("testService")-------第二篇

    在springmvc中使用注解已经司空见惯了,今天见到了@Service("xxx")这种形式,让我大吃一惊.原来在service后面可以加参数,作为该service的名字,在sp ...