文档介绍:Cocosdx制作太空射击游戏
2
———————————————————————————————— 作者:
———————————————————————————————— 日期:
个人收集整理 勿做商业用途
个人收集整理 勿做商业用途
个人收集整理 勿做商业用途
Cocos2d-x制作太空射击游戏
在这篇教程里,我将向你展示如何利用 How to Makea Space Shooter iPhone Game里创建的工程制作一个太空游戏.
这里有一个主要的区别——这次是用跨平台的cocs2d-x开发。
这就意味在教程里开发的游戏可以在你的iphone和andorid上运行。当然,再稍微做修改,你可以让它在Windows、Linux或者Mac下运行。
深吸一口气,我们就要开始啦!
Getting Started
第一件事情就是下载并解压 space game resources ZIP file。
就像我们在之前教程里面添加两个项目里都可以使用的C++类一样,我们需要以同样的方式来添加这些资源文件使ios和andriod项目都可以引用同样的资源。
我们把这些文件添加到Android工程的Resource目录下面,然后在ios项目里面引用这个目录.
为了方便添加图片和其它资源到我们的工程里,我们需要把它们添加到 $PROJECT_HOME\Resources目录(请记住 $PROJECT_HOME是你AndriodCocosd-X project-samplecocos2dxandroid的位置).然而,我们的Eclipse工程只会显示$PROJECT_HOME\android目录下的文件,所以这确实是一个问题!
幸运的是这里有一个简单的变通方案:我们在$PROJECT_HOME\Resources 目录下面建立一个符号链接,指向$PROJECT_HOME\android\Resources目录,这样Eclipse就可以看到它们了。
个人收集整理 勿做商业用途
个人收集整理 勿做商业用途
个人收集整理 勿做商业用途
接着,打开终端,在$PROJECT_HOME\android目录下运行如下的命令:
ln—s.。/Resources./Resources.
现在拷贝文件到Resources文件夹。请注意,由于跨平台可移植性的原因,,但是它们不一定在Android上运行地很好。举例来说,如果你有一个Sprites。,在Android里面使用CCSpriteBatchNode::bathNodeWithFile方法将会调用失败并返回一个空指针.
所以,从 space game resources ZIP file里面把单个的文件拷贝到Resource文件夹下去,请记得不要创建任何子目录,仅仅拷贝一个个的文件过来就可以了。在资源文件里存在一个字体的子文件夹,从字体文件夹里把所有的文件拷贝到Resources里时,直接替换就可以了。此外,在压缩文件里有个Classes子文件夹,你不必把它添加到Resources目录下,把它删除就行了.
接下来,让我们在iOS工程里引用这些文件,打开你的Xcode工程,创建一个新的Group叫做SharedResources。选择新的Group,在Inspector里点击按钮选择路径,然后把你在Android工程里的资源文件夹选择上。
右键点击SharedResources组,选择添加文件,从Android文件夹里添加所有的文件。目前,你完成所有的项目配置了!
增加一个太空飞船
让我们试试,看是否工作!打开Classes\,在HelloWorld类开头加入下面代码(在已有public:行的上面)
个人收集整理 勿做商业用途
个人收集整理 勿做商业用途
个人收集整理 勿做商业用途
private:
cocos2d::CCSpriteBatchNode*_batchNode;
cocos2d::CCSprite*_ship;
上面的代码创建了两个私有实例变量 – 一个