上一节,我们主要的了解了MVC框架,今天这节就为同学们介绍下基本的游戏程序框架的搭建,大神们如果可以的话,希望多多提供一些经验,让我们可以多学一些知识,希望可以多给我一些批评指正,我将感激不尽。
本篇所用的Cocos2d-x版本为:Cocos2d-x 3.2
Cocos2d-x3.2教程——【我所认识的Cocos2d-x】
三、Cocos2d-x项目的游戏框架搭建 游戏与应用项目其实差别不是很大,甚至有许多地方都是一样的,无非侧重点不同,手机游戏更侧重于用户的体验,更加的娱乐化、情感化、让玩家感觉“爽”。而手机应用更侧重于简单、明了,优先完成业务为重。
在以Cocos2d-x引擎为基础上,其实我们要做的准备工作还是很多的:
一、
分析项目
首先,我们要知道,我们这个游戏是什么样类型的游戏,游戏机制是什么,按照目前市场上来说可以分成如下类型与机制:
1、
游戏类型
A、动作类
B、策略类
C、角色扮演类
D、 体育类
E、驾驶模拟类
F、 经营模拟类
G、冒险类
H、 益智解谜类
I、 社交游戏类
2、
游戏机制
A、物理机制
B、经济机制
C、渐进机制
D、 战术机动机制
E、社交互动机制 当我们拿到项目的时候,我们一定要了解到这点,因为这是我们要采用哪些技术的基础依据。
就好比《刀塔传奇》来说,那么它需要用到哪些基本技术呢实现呢?就像广告里说的
骨骼系统 !那么《愤怒的小鸟》呢?不用我说同学们也知道,
物理系统 !那么剩下的就是根据策划的要求进而添加一些基础的系统运用。
其次,要知道我们的游戏是单机游戏?还是单机弱联网游戏?还是强联网游戏?通讯是采用长连接还是短连接。
最后,逻辑是在服务端,还是在客户端!这点很重要!里面牵扯一些东西,容我一会再说。
二、
搭建项目
基本需求分析完毕后,那么就开始创建一个Cocos2d-x项目吧。
耐心的等待片刻……好了项目创建成功了!
Chipmunk物理引擎及Audio系统,那么让我们先来编译下… 熟悉的HelloWorld的来了!那么基于需求,我们需要哪些系统帮助我们完成一个游戏呢?1
、网络管理器 网络管理器,一般根据游戏的需求,我们会采用2种方式,短连接及长连接。短连接的话Cocos2d-x已经为我们提供了一个
network库,而长连接呢?Socket就需要我们自己去找第三方库了,对于Socket个人比较推荐ODScoket,因为android和ios都兼容,跨平台才是王道!
2
、数据管理器 数据管理器,说白了就是封装好的单例数据模块,方便管理及调用的数据集管理器。
3
、UI管理器 UI管理器就更不用说了,就是我们自己封装的UI管理器了,当然首先也需要我们熟悉下Cocos Studio!个人觉得有了Cocos Studio换IP什么的再也不用麻烦程序了,我打算下一节详细的讲讲UI管理器。要使用Cocos Studio必须要添加的库文件。 
4
、数据库管理器 对于中型及大型游戏,肯定要使用到数据库,还好Cocos2d-x也为我们准备好了
sqlite3库,这里就需要我们熟悉一般的SQL语句了,至少增删改查必须会啊!正可谓,万事具备,只欠东风了。
5
、加密管理器 为什么要提到加密,上述已经提到过,逻辑是在服务端还是在客户端,大部分游戏的逻辑都是在服务端,为什么呢?就是因为加密的问题,客户端只是负责显示逻辑及提交业务就可以了,但是也有不少游戏逻辑是在客户端,服务端只负责保存数据及数据效验。其实,我个人比较喜欢将逻辑放在客户端,这样的话会大大的减少服务器压力,只不过客户端一定要做好加密工作!一般情况,客户端加密可以采用多种手段,像
Base64、
MD5、
AES等,具体到底适不适合当前项目,还是要看项目实际情况了。从后面开始我将会抽时间一点点的讲解这些管理器,当然如果时间允许的话,我会尽可能给大家带来一个项目,因为边写边学,学习的效果应该更好。好了,本节暂时就讲到这里了,我们下一节再见!


狂赞狂赞狂赞狂赞狂赞狂赞狂赞