下面这篇文章纯粹是为了入门新手,快速在windows中配置 cocos2dx 的开发环境,快速入门。
配置环境:win8 + VS2012 + Cocos2d-x 3.0rc1(当前最新)。
配置最终效果:借助 Visual Assist X 实现VS2012 非凡的代码自动补全等等超 Xcode 的功能体验,绝对值得一试。
废话不多说,现在开始吧!
1、基本准备
(1)安装Python,注意要使用2.7.x版本,不能用3.0版本,最后注意安装后还要配置一下系统变量(这个不多说,晚上一搜一大把)。
(2)下载 cocos2dx ,版本无要求,2.x 或者 3.0 都可以,这里采用最新的 cocos2d-x 3.0rc1版本。
(3)安装VS2012,建议只需安装一个 c++ 的开发环境就可以了,其它选项可以勾掉。
2、创建 cocos2d-x 3.0 rc1 项目过程
进入:cocos2d-x-3.0rc1\tools\cocos2d-console\bin 目录,用其中的 cocos.py 进行项目创建
可以输入 cocos.py new --help 显示些提示信息。
那么创建的时候一般只需要指定: 项目名称 ,package 名称 ,语言 ,保存路径就可以了,例如:
这样就创建了一个项目 MyFirstGame 到 E:\Cocos2d-x\Projects 路径下。
打开这个项目 MyFirstGame\proj.win32 目录,打开 sln 文件,这样就可以了。
3、配置 VS2012
(1)字体设置
选择菜单栏中的 工具 --》 选项 ;在 Environment 中选择 字体和颜色 ,然后改变字体为 Consolas (个人觉得这个字体好舒服,好好看)。
(2)其他扩展
选择菜单栏中的 工具 --》 扩展和更新;点击左侧的 联机;这样就可以在其中下载你需要的扩展。下图就是我安装的一些扩展:
当然,其中最有用,最重要的就是 Visual Assit X 了,其他的都是浮云。
(3)安装 Visual Assist X
由于 Visual Assist X是要付费的,在 扩展中直接下载的话只能用7天,但是,但是,肯定是有破解版的啦,放心。下面给出一个链接:
点击打开链接 我安装的是 10.8 版本的 Visual Assist X。
装完这个玩意,你就知道用着是有多爽,代码自动提示,补全.... 有了它,瞬间秒爆了 Xcode。
4、运行项目
在第二步中,项目已经打开了,那么如何运行呢?
(1)首先要 生成解决方案
①右键点击 解决方案...
②点击菜单栏中的 生成
③直接使用快捷键:F7
以上三种方法都可以生成,不过,生成的过程是很考验机器的,这个过程一般是 30 -- 60 秒不等,视你的机器而定,当然这只是第一次生成的时候会需要这个过程。以后就不用了。
(2)生成成功,接着就可以运行了,在菜单栏中的 调试 中,选择 开始执行(不调试)-- 快捷键是 ctrl+ F5:
(3)运行成功
附注:这里要记录一下我遇到的一个bug。
点击 开始执行(不调试) ,但是没有输出,弹出:
而且还输出一大堆如下的信息:
“MyTest.exe”(Win32): 已加载“E:\Cocos2d-x\Projects\MyTest\proj.win32\Debug.win32\MyTest.exe”。已加载符号。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\ntdll.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\kernel32.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\KernelBase.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\apphelp.dll”。无法查找或打开 PDB 文件。
SHIMVIEW: ShimInfo(Complete)
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\msvcp110d.dll”。已加载符号。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\msvcr110d.dll”。已加载符号。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\opengl32.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“E:\Cocos2d-x\Projects\MyTest\proj.win32\Debug.win32\glew32.dll”。模块已生成,不包含符号。
“MyTest.exe”(Win32): 已加载“E:\Cocos2d-x\Projects\MyTest\proj.win32\Debug.win32\zlib1.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\ws2_32.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\user32.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\gdi32.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\advapi32.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\msvcr110.dll”。已加载符号。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\msvcrt.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\glu32.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\ddraw.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\rpcrt4.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\nsi.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\sechost.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\dciman32.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\sspicli.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\cryptbase.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\bcryptprimitives.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\imm32.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\msctf.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\uxtheme.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\winmm.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\winmmbase.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\cfgmgr32.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\devobj.dll”。无法查找或打开 PDB 文件。
“MyTest.exe”(Win32): 已加载“F:\Windows\SysWOW64\dwmapi.dll”。无法查找或打开 PDB 文件。
GLFWError #65542 Happen, WGL: The driver does not appear to support OpenGL
注意到,其中的最后一行提示信息。然后经过一个网友的提示终于解决了,原因是显卡驱动有问题。
因为我的win8 系统是刚刚安装的,没有显卡驱动,然后我下载 驱动精灵,安装了显卡驱动,再次运行,OK,成功运行。
这里记录一下,如果相同问题的,请检查一下显卡驱动。
5、基本操作
(1)修改的屏幕大小 和 缩放比例
在 windows 中,cocos2dx 的项目有一个好处就是可以修改 屏幕的大小,那么在哪里设置呢?
进入:Classes 中的 AppDelegate.cpp 中的 bool AppDelegate::applicationDidFinishLaunching() 方法中:
注意到: glview = GLView::create("My Game");
然后进入这个 create 方法,那么如何进入这个方法呢 ----- 光标移动到这个单词,然后右键点击,转到定义 ,也可以实用快捷键 F12。
进入这个方法后就明白了:
GLView* GLView::create(const std::string& viewName)
{
auto ret = new GLView;
if(ret && ret->initWithRect(viewName, Rect(0, 0, 960, 640), 1)) {
ret->autorelease();
return ret;
}
return nullptr;
}
没错了,其中的 Rect(0, 0, 960, 640) 就可以指定 屏幕大小了,然后还要注意到其后的 数字 1,这个就是缩放了,默认是1,也就是 100%。这个有什么用呢? 这个的用处可大了,例如说需要使用 iPhone 5s 的屏幕大小(640*1136),但是对于这么大的size,屏幕一般是显示不全的,那么就可以利用这个参数,进行缩放,例如设置成 0.6 ,那么就会按比例缩小显示了。
(2)创建类
一般来说,我们要将新创建类的头文件和实现文件都放在 Classes 文件中。
创建类一般有两种方式:
①直接创建类:
下图中的两种方式都可以创建类
但是这种方式创建的类文件是保存在 proj.win32 文件夹中,而不是在 Classes 文件夹中,原因不详,希望有知道如何把类创建在 Classes 文件夹的读者评论告知,感谢!
②手动创建类的头文件和实现文件
然后在 位置中选择 Classes 文件夹即可。
这样就可以将 类的头文件和实现文件创建到 Classes 中。
(3)添加资源
一般游戏中都需要使用到 图片 和 声音资源,那么如何向项目中添加资源呢?其实比较简单,就是将要使用的资源放到项目文件的 Resources 文件夹中就可以了,项目中就可以直接使用。
需要注意的是:如果在Resources 文件夹中有创建了目录,那么要使用该目录中的资源的时候,就需要添加该目录作为路径。例如: Resources 文件夹中有一个 res 文件夹,要使用该文件夹中的资源,那么就是: res/**.png
例如:
auto closeItem = MenuItemImage::create(
"res/Horn_on01.png",
"res/Horn_on02.png",
CC_CALLBACK_1(HelloWorld::menuCloseCallback, this));
(4)快捷键
关于使用 VS 的一些快捷键,由于我也是刚刚从 Xcode 转到 VS,所以只是熟悉其中的一些基本快捷键,例如调试的 F10,F11 等等,需要的时候,上网查找一下就可以知道了。
以上便是我初次使用 VS 开发 Cocos2dx 的一些“经验”,希望对新手有帮助!如果有错漏,或者对其中的一些问题有更好的解决的解决方案,欢迎评论指教,谢谢。