环境准备和介绍:

操作系统:64位Windows 7 sp1(Microsoft Windows [版本 6.1.7601])

必要的软件和源码:

visual_studio_ultimate_2013_x86

cocos2d-x v2.2.1:http://cdn.cocos2d-x.org/cocos2d-x-2.2.1.zip

环境准备完毕后,我们解压下载下来的压缩包cocos2d-x-2.2.1.zip到文件夹,

这里我解压到H:\source目录,注意最好不要解压到根目录,在后面移植Android

平台过程中可能会出现错误,解压后如下图所示:

打开cocos2d-x-2.2.1文件夹,我们可以看到以下两个Win32平台的VS工程文件:

cocos2d-win32.vc2010.sln

cocos2d-win32.vc2012.sln

大家可以用自己的VS打开相应的工程文件,由于笔者使用的VS 2013,所以我打开

cocos2d-win32.vc2012.sln这个文件,VS 2013会提示升级工程文件,点击确定即可。

打开后可以看到VC的解决方案中有很多个工程:

那么我们编译HelloCpp这个工程看看效果,现在HelloCpp工程上点击鼠标右键,选择“设为启动项目”,

在HelloCpp项目上点击鼠标右键,在弹出菜单中选择“生成”,可以看到

下面的输出窗口正在编译我们的程序,几分钟后程序编译生成完成:

可以看到生成成功了3个项目,失败了0个,为什么生成成功了三个呢,我们在HelloCpp工程上点击右键,

选择“生成依赖项”中的“项目依赖项”,如下图

随后弹出如下窗口:

可以看到HelloCpp项目依赖于libcocos2d和libCocosDenshion这两个项目,所以一共生成成功了3个。

然后我们可以运行我们生成的文件了,在菜单中选择“调试”——“开始执行”即可启动程序:

程序启动后出现下面窗口:

ok,我们终于运行成功了cocos2d-x中的HelloCpp了。

下面来运行我们的TestCpp项目,和上面一样,将TestCpp项目设为启动项目:

参照上面,我们查看TestCpp的生成依赖:

可以看到他依赖5个项目,不过我们已经生成了其中libcocos2d和libCocosDenshion两个项目,

下面我们按照顺序来依次生成剩下的三个项目:libBox2D、libchipmunk和libExtensions。

在libBox2D上点击鼠标右键,在菜单中选择生成。

libBox2D生成成功后,用同样的方式生成libchipmunk和libExtensions。要注意的是libExtensions项目在

VS 2010和VS 2012上面编译是没有问题的,在VS2013上编译会出现错误:

双击窗口中的错误,可定位到错误所在的源文件:

然后在源文件前面 加上 #include <algorithm>,如下图所示

出错的源文件分别是 CCSkeletonAnimation.cpp和CCSkeleton.cpp。

修改后,重新生成libExtensions项目即可。现在TestCpp的项目依赖都编译好了,

最后编译TestCpp项目,然后运行,可以看到如下界面:

可以在这个程序中测试所有的cocos2d-x的特性了,大家可以用这个程序测试cocos2d-x的效果。

cocos2d-x游戏开发系列教程-编译运行我们的第一个cocos2d-x游戏程序的更多相关文章

  1. HTML5游戏开发系列教程7(译)

    原文地址:http://www.script-tutorials.com/html5-game-development-lesson-7/ 今天我们将完成我们第一个完整的游戏--打砖块.这次教程中,将 ...

  2. HTML5游戏开发系列教程6(译)

    原文地址:http://www.script-tutorials.com/html5-game-development-lesson-6/ 这是我们最新一篇HTML5游戏开发系列文章.我们将继续使用c ...

  3. HTML5游戏开发系列教程5(译)

    原文地址:http://www.script-tutorials.com/html5-game-development-lesson-5/ 最终我决定准备下一篇游戏开发系列的文章,我们将继续使用can ...

  4. HTML5游戏开发系列教程4(译)

    原文地址:http://www.script-tutorials.com/html5-game-development-lesson-4/ 这篇文章是我们继续使用canvas来进行HTML5游戏开发系 ...

  5. HTML5游戏开发系列教程8(译)

    原文地址:http://www.script-tutorials.com/html5-game-development-lesson-8/ 这是我们最新一篇HTML5游戏开发系列文章.我们将继续使用c ...

  6. HTML5游戏开发系列教程10(译)

    原文地址:http://www.script-tutorials.com/html5-game-development-lesson-10/ 最后我们将继续使用canvas来进行HTML5游戏开发系列 ...

  7. HTML5游戏开发系列教程9(译)

    原文地址:http://www.script-tutorials.com/html5-game-development-lesson-9/ 今天我们将继续使用canvas来进行HTML5游戏开发系列的 ...

  8. cocos2d-x游戏开发系列教程-坦克大战游戏关卡选择场景的编写下

    上篇文章写了Paddle类来处理精灵的点击.触摸事件,现在我们在Paddle的基础上 写一个MyPaddle类,来处理上一关.下一关.开始游戏按钮的点击事件. 1.类声明如下: class MyPad ...

  9. cocos2d-x游戏开发系列教程-前言

    cocos2d-x游戏开发前景: 最近企业对于Cocos2D-X开发人才的用人需求很大,而且所提供的薪资相当可观. 为满足广大向往游戏开发行业同学的需求,特推出适合新手的Cocos2D-X手游开发教程 ...

随机推荐

  1. windows下apache+wsgi+web.py环境搭建

    首先安装好wsgi模块并启用:1.下载地址:我本机是python2.7 http://code.google.com/p/modwsgi/downloads/detail?name=mod_wsgi- ...

  2. HDU 5119 Happy Matt Friends(2014北京区域赛现场赛H题 裸背包DP)

    虽然是一道还是算简单的DP,甚至不用滚动数组也能AC,数据量不算很大. 对于N个数,每个数只存在两个状态,取 和 不取. 容易得出状态转移方程: dp[i][j] = dp[i - 1][j ^ a[ ...

  3. leetcode第一刷_Maximal Rectangle

    这个题比刚才那个更难. 假设没做过上一个,这个简直是无情. 先想一个笨笨的解法,如何确定一个矩形呢?找一个左上角,然后每行的看能延伸到什么位置.注意随着行数的添加,列数是仅仅能变短,不能变长. 想一下 ...

  4. Java之从控制台读入数据

    0 引言    从控制台中读取数据是一个比较常用的功能,在 JDK 5.0 以前的版本中的实现是比较复杂的,需要手工处理系统的输入流.有意思的是,从 JDK 5.0 版本开始,能从控制台中输入数据的方 ...

  5. 我的Android进阶之旅------>HTTP 返回状态值详解

    (本文转载于:http://blog.csdn.net/ithomer/article/details/10240351) 当用户点击或搜索引擎向网站服务器发出浏览请求时,服务器将返回Http Hea ...

  6. PHP - 使用pear的HTTP_Upload包进行上传

    前台代码: <html> <head> <title>上传文件</title> </head> <body> <form ...

  7. 经典集合 与 IQueryable集合 的差别

    经典集合 与 IQueryable集合 的差别 经典集合与IQueryable 集合存在本质的区别,经典结合是在内存中开辟一片区域用来存储数据,而IQueryable集合是延迟加载的集合,只有在用到的 ...

  8. C语言,数据类型

    #include <stdio.h> void f0(void) { printf("in linux:\n"); printf("sizeof(char) ...

  9. perl 当前包会覆盖父类的同名方法

    12.5.2 访问被覆盖的方法: 当一个类定义一个方法,那么该子过程覆盖任意基类中同名的方法. [root@wx03 test]# cat Horse.pm package Horse; our @I ...

  10. EasyUI - 后台管理系统 - 登陆模块

    效果: --- --- Html代码: <div id="login"> <p>账户:<input type="text" id= ...