转眼七月份就到了,2014已经过了一半,而我也最终算是有“一年工作经验“了,开心ing。
回想这一年Cocos2dx的游戏开发经历,去年下半年重心主要在游戏的逻辑上,而今年上半年重心转至UI上,如今看来也算是有个比較全面的锻炼。
一直想系统的学下lua,但是总被这个事那个事给耽搁了。我是个挺懒的人,下班后的时间更偏向于做一些代码之外的事,周末差点儿都是东奔西跑,呆在家里也是玩玩LOL。
也不知道这样的习惯究竟好不好。我以前一度想想大多程序猿一样,熬夜到两三点研究学习下新知识,但最终都以失败告终,习惯了十二点前睡觉的习惯,熬夜确实非常吃力。
-----------------------------------
说道Cocostudio,事实上非常早以前就有下来研究了,仅仅是那时认为用起来还比較麻烦,并且项目中也临时都没用到的,也就临时搁置一旁。cocos2dx 3.0版本号推出后,在 笨木头博客里的《别杀我》系列教程中看到他介绍了怎样使用Cocostudio,我才顿悟!原来这货已经变得这么好用了啊。
我学习新东西时都有做笔记的习惯,学习Cocostudio自然也不例外。这份笔记存放在云盘中已经有一段时间了,初衷是不打算发到博客上来的,毕竟是笔记,技术层面较为基础。但后来想想,我当初写博客的初衷是什么?还不是当云笔记来用吗?(希望某人看到别打我),方便自己的同一时候也可以帮到一些人。
以下简要声明几点:
1、尽管笔记篇幅较多,但我尽量仅仅用三四篇就将它们全都发出来。
2、着重要说的一件事:做笔记是没有截图的,所以,大家都看文字吧。所以本人的文採还过的去,应该不会看得太无趣,哈哈!
3、笔记中我没有提到在Cocostudio中的那些控件应该怎样使用,由于优酷上有个视频教程讲的还是蛮清楚的:
http://i.youku.com/u/UNTk3MDQ4NzA0?from=113-2-1-2
4、尽量别吐槽.......
---------------------------------
扯完了,进入正题吧。
cocostudio怎样在cocos2dx中跑起来了呢?看以下。
1、在cocostudio下创建完项目,记得每一个控件相应的name,由于程序中是通过这个name来获取该控件的;
2、导出项目,可以直接导入到cocos2dx项目的Resourses文件夹下,导出的文件包括项目用到的资源,最重要的还是.json文件;
3、打开cocos2dx项目文件(VS2012以上版本号),将libCocostudio,libExtensions,libGUI三个库文件导入到解决方式中,导入方法也就是选中“解决方式”,右键,加入�现有资源,然后自己到Cocos2dx根文件夹的cocos文件夹下找吧。
4、包括头文件
#include "cocostudio/CocoStudio.h";
using namespace cocostudio;
假设不出意外的话, 上面两条代码写完编辑器是会报错的,由于找不到该头文件。为什么呢?明明有Cocostudio.h这个头文件不是,可为什么找不到呢?原因就在于把IDE想得太智能了,它也是要在默认的那些文件夹下寻找头文件的。所以接下来就是要设置默认文件夹,方法例如以下:
选中自己创建的项目,如HelloWorld,右键,在弹出的菜单中选择最下方的 项目属性 ,在出现的窗体里选择C/C++,选择附加包括文件夹,然后将”cocos2d-x-3.0\cocos\editor-support“加入�进去。
确定后退出该设置,这时候看代码的话会发现头文件那个位置不在报错了。
5、编译下项目,可能会在编译成功的情况下报错,什么未找到_stdcall之类乱七八糟的东西在哪个文件下使用了,出现这样的情况无疑有两种原因:
1)在class声明里你声明了一个函数,但是没有在.cpp里定义;
2)没有在连接器里的 输入 加入�附加依赖项。
这里我出现的情况无疑就是另外一种原因了,接下来要做的就是改动附加依赖性了,方法:
选中自己创建的项目,如HelloWorld,右键,在弹出的菜单中选择最下方的 项目属性 ,在出现的窗体里选择链接器,选择 输入
附加依赖项,然后将 libGUI.lib 输进去。
6、再次执行程序,明明就要跑起来了,可又出错了,提示 LINK : fatal error LNK1104: 无法打开文件“libGUI.obj”
尼玛的,报这样的错误是我最不想要面对的!由于...是我大意了,由于在上一步的最后一个操作,我将libGUI.lib写成的libGUI,所以肯定出错。赶紧将.lib加入�上去
7、继续编译,本以为成功了,结果还是出错,出错的情况和第5步相似。说实话,此刻我已经处在了暴走的边缘,我仅仅是想编译个项目,你至于这样为难我吗?最后没办法,仅仅能使用大杀器。
选中自己创建的项目,如HelloWorld,右键,在弹出的菜单中选择最下方的 项目属性 ,在出现的窗体里选择 通用属性 -- 框架和引用 -- 加入�新引用 -- 之后会出现一堆lib**,我在这里讲libCocostudio,libExtenstions,libGUI都选中加入�进去。
8、我发誓,这是最后一次编译,假设还出错我就...就去睡觉了。恩,猛的按了下F5然后赶紧转过头去假装做其它事,但时不时瞄向屏幕的眼神还是出卖了我当时的紧张心理(尼玛,程序猿就是这么刺激)。最后,啊哈,成功了!
9、最后要做的肯定就是将Cocostudio制作出来的project显示在程序窗体中,调用以下代码:
auto UI = GUIReader::getInstance()->widgetFromJsonFile("HelloUI_1.Json");
this->addChild(UI);
当中.json文件就是在cocostudio中导出的文件啦。
10、再次编译,这画面太美我敢看。
尊重原创,转载请注明来源:http://blog.csdn.net/star530/article/details/36501195