cocos2d-x游戏开发系列教程-编译运行我们的第一个cocos2d-x游戏程序
环境准备和介绍:
操作系统: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游戏程序的更多相关文章
- HTML5游戏开发系列教程7(译)
原文地址:http://www.script-tutorials.com/html5-game-development-lesson-7/ 今天我们将完成我们第一个完整的游戏--打砖块.这次教程中,将 ...
- HTML5游戏开发系列教程6(译)
原文地址:http://www.script-tutorials.com/html5-game-development-lesson-6/ 这是我们最新一篇HTML5游戏开发系列文章.我们将继续使用c ...
- HTML5游戏开发系列教程5(译)
原文地址:http://www.script-tutorials.com/html5-game-development-lesson-5/ 最终我决定准备下一篇游戏开发系列的文章,我们将继续使用can ...
- HTML5游戏开发系列教程4(译)
原文地址:http://www.script-tutorials.com/html5-game-development-lesson-4/ 这篇文章是我们继续使用canvas来进行HTML5游戏开发系 ...
- HTML5游戏开发系列教程8(译)
原文地址:http://www.script-tutorials.com/html5-game-development-lesson-8/ 这是我们最新一篇HTML5游戏开发系列文章.我们将继续使用c ...
- HTML5游戏开发系列教程10(译)
原文地址:http://www.script-tutorials.com/html5-game-development-lesson-10/ 最后我们将继续使用canvas来进行HTML5游戏开发系列 ...
- HTML5游戏开发系列教程9(译)
原文地址:http://www.script-tutorials.com/html5-game-development-lesson-9/ 今天我们将继续使用canvas来进行HTML5游戏开发系列的 ...
- cocos2d-x游戏开发系列教程-坦克大战游戏关卡选择场景的编写下
上篇文章写了Paddle类来处理精灵的点击.触摸事件,现在我们在Paddle的基础上 写一个MyPaddle类,来处理上一关.下一关.开始游戏按钮的点击事件. 1.类声明如下: class MyPad ...
- cocos2d-x游戏开发系列教程-前言
cocos2d-x游戏开发前景: 最近企业对于Cocos2D-X开发人才的用人需求很大,而且所提供的薪资相当可观. 为满足广大向往游戏开发行业同学的需求,特推出适合新手的Cocos2D-X手游开发教程 ...
随机推荐
- 高质量程序设计指南C/C++语言——C++/C程序设计入门
1.在C++/C中,全局变量(extern或static)存放在程序的静态数据区中,在程序进入main()之前创建,在main()结束之后销毁,因此在我们的代码中根本没有机会初始化它们,于是语言及其实 ...
- Hdu 1404 Digital Deletions
Problem地址:http://acm.hdu.edu.cn/showproblem.php?pid=1404 刚开始想采取找规律的方法解题,可以没有发现规律.无奈,只好采用求PN点的方法. 我们假 ...
- libvirt学习
高级libvirt API可划分为5个API部分:虚拟机监控程序连接API.域API.网络API.存储卷API.存储池API.
- 富文本编辑器 - wangEditor 表情
效果: 文件夹中的表情: 代码:
- django-form表单的提交
<form action="/blog/" method="get"> 如果runserver默认启用127.0.0.1:8000的话,且上面这个f ...
- HTML5给我们带来了什么
websocket 根据维基定义 WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端直接向客户端推送数据而不需要客户端进行请求,在 WebSocket API 中,浏览器和服 ...
- html5新特性:利用history的pushState等方法来解决使用ajax导致页面后退和前进的问题
一.背景 使用ajax,可以实现不需要刷新整个页面就可以进行局部页面的更新.这样可以开发交互性很强的富客户端程序,减少网络传输的内容.但长期以来存在一个问题,就是无法利用浏览器本身提供的前进和后退按钮 ...
- 更好地认知Azure
编辑人员注释:本文章由 Windows Azure 网站团队项目经理 Erez Benari 撰写. 我们的网站 http://www.windowsazure.com 包含大量信息,并且也在不断添加 ...
- java.lang.NoClassDefFoundError: org/apache/lucene/analysis/synonym/SynonymFilter
2013-6-24 13:28:51 org.apache.solr.common.SolrException log 严重: java.lang.NoClassDefFoundError: org/ ...
- Unity3d 帧率设置 及在游戏执行时显示帧率
在Unity3d 中能够通过代码设置 来限定游戏帧率. Application.targetFrameRate=-1; 设置为 -1 表示不限定帧率. 转自http://blog.csdn.net/h ...