第一个Cocos程序

本文介绍了如何使用Cocos2d-x创建第一个游戏工程,包括工程创建步骤、编译错误的解决、文件工程结构解析以及Cocos2d-x的核心概念,如导演、场景、层、精灵和菜单的介绍。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一:创建工程

  • 创建一个cocos工程的方法,win + R cmd 调出命令窗口
  • 新建工程格式:
  • cocos new 工程名 -p 包名(必须为3级命名)-l 编程语言 -d 工程地址
  • 示例:cocos new liplan -p joy.sm.ctgu -l cpp -d D:/projects
  • (在命令窗口输入相应命令查询cocos帮助文档。例如如果不知道cocos怎么用的话,可以直接敲cocos回车,就会出现帮助文档;如果不知道cocos new怎么用,可以敲命令cocos new回车,看帮助。cocos new --help 命令可查看-p -l 等解释。移植到Android平台是需要包名的,因为Android平台是通过包名来区分程序ID的,所以建立项目的时候必须要写包名。).

二:编译时出现的错误

  • 如果编译过程中出现这样的错误:
    在这里插入图片描述
  • 解决的方法是:
  • 右键 项目->属性
  • 配置属性->C/C+±>命令行
  • 在右侧的 其他选项 中输入 -Zm263

三:文件工程结构

  • 生成新工程的过程实际上是把模板等拷贝过去,但是不能硬性去拷贝。
    在这里插入图片描述

  • 红框中的几个文件夹都与平台有关,分别是android、ios(mac)、linux、win32平台的工程文件,移植的时候要用的。

  • Classes:开发时重点关注的代码;与工程文件里的内容相对应。

  • Resources:资源目录。

  • cocos2d目录里是引擎。

  • 每次做完一点工程时只需要拷贝class里的源代码和resource文件夹即可,新生成一个工程时是要覆盖新工程的class和resource文件夹,再把class源代码导入工程中的src文件夹下,src右键->添加现有项目->将class文件夹中的.h.cpp文件加进去即可。

  • 注意是加入到src文件夹,而不是win32文件夹,工程中的src文件夹和文件中的class文件夹相对应。

四:Cocos2d-x核心概念

1.导演

  • 导演类Director用于管理场景对象。导演是单例设计模式,在整个程序运行过程中,只有个实例,也就是说导演只能有一个。单例也可以节省内存开销。
  • 获得导演类Director实例语句如下: auto director = Director::getInstance();
  • 导演对象职责如下:
    1.访问和改变场景。
    2.访问Cocos2d-x的配置信息。通过导演读取用户信息。
    3.暂停、继续和停止游戏。
    4.转换坐标。

2.场景

  • 场景类Scene是构成游戏的界面,类似于电影中的场景。 场景直接用场景提供的类,不需要自定义场景类。

  • 场景大致可以分为以下几类:
    展示类场景:播放视频或简单的在图像上输出文字,来实现游戏的开场介绍、胜利和失败提示、帮助介绍。

    选项类场景:主菜单、设置游戏参数等。

3.层

  • 层是我们写游戏的重点,层的管理类似于Photoshop中的图层, 它也是一层一层叠在一起。开发时更多的是自定义一些层,在层里进行开发。
  • 场景和层的关系可以是一对一,也可以是一对多,但是更多的是一对一,理论上来说,层越多,需要绘制的深度越深,约耗费CPU,层中的精灵等的绘制有互相遮挡的问题。

4.精灵

  • 精灵类Sprite是游戏中非常重要的概念,任何一个物体都可以是精灵,它包括了敌人、控制对象、静态物体和背景等。
    通常情况它会进行运动,运动方式包括了:移动、旋转、放 大、缩小和动画等。

5.菜单

  • 菜单在游戏中是非常重要的概念,它提供操作的集合,在 Cocos2d-x中菜单类是Menu。Menu中包含菜单项MenuItem,
  • 它有三个子类: MenuItemLabel、MenuItemSprite和MenuItemToggle。
  • 菜单和精灵的区别:
  • 菜单是多种形式,也可能看起来就是一个图片,一个精灵想实现点击事情和手的触摸需要写一些事件处理代码;而图片做成菜单则不用关注事件处理细节问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值