cocoStudio工具的使用-----场景编辑器

来源:互联网 发布:php从入门到放弃 编辑:程序博客网 时间:2024/06/05 16:12

~~~~我的生活,我的点点滴滴!!


场景编辑器比较复杂,改动比较大,本人使用的是cocoStudio1.5版本,即当时最新的版本,用的时候,完全不知所措,其实包括现在我也不是很会用,我们一起尝试


创建项目


新版本需要添加你当前使用的cocos2dx版本,然后会创建一个完整的cocos2dx工程(即函数有cocos2dx源码),如果不想要完全可以不添加,添加后会很慢,下面我不添加此项(建议不添加)创建完成后,你会发觉什么也干不了,还得在此项目基础上继续创建,我们可以 新建场景项目 然后添加了一个场景到此项目中


文件结构布局如上,如果你想要使用UI或者骨骼等,你可以继续 新建, 他们并列显示在一起。我们导入我们需要使用的资源(不一定是图片,还有可能是plist之类的)


我们在assets上右键就能导入我们所需要的文件。

我们先更改 画布 大小 为我们背景图片的大小,这里我们使用 960*640 然后把 背景图片拖到画布上


照上面的方法,我们依次任务添加我们想添加的图片,最后我在添加一个粒子效果,我们选中一个粒子组件(在下面会介绍)放到我们需要显示粒子的地方,然后直接拖动粒子文件到 属性文件一栏


这样一个简单的的场景就编辑完了,可以点击播放看看效果。上面用到了组件,下来我们来看看cocostudio给我们提供了哪些组件?


分别简单的介绍一下上面给出的几种组件

1 精灵主要用来显示静态图片

2 骨骼组件用来显示动画(动画编辑器导出文件)

3 UI组件用来展示UI界面(UI编辑器导出文件)

4 地图用来显示瓦片地图(.tmx格式)

5 粒子组件是用于挂载粒子的(.Plist格式)

6 音效用户播放声音

如果我们想使用UI组件,我们点击 "UI" 会出现一个小图标,我们需要更改他的样子,这时找到我们新建的UI文件就会自动打开 cocoStudio的编辑器


改完后保存 然后要 导出 导出时路径默认,其他的参数可以根据需要更改,然后回到场景编辑器下面,刷新 publish 文件,就能看到我们新加的UI了,这个时候选中我们前面添加的UI,然后把新生成的UI的ExportJson文件直接拖到文件哪里就行了。


我们可以运行模拟器看看效果,模拟器在上面工具条里面


我们去 对象结构 里面去看看,会有很多个Node,每一个Node对应场景上一个小图片,他们是有父子关系的,通过选中Node 去属性里面更改他的属性就可以了,在对象结构树里面 F2是不能改名字的,这和其他的不同,只能上属性栏里面更改

到此一个基本的场景就弄好了,我们导出添加到代码中试试 -----> 点击 文件 ---> 导出项目 ---> 导出资源 一切可以默认。



按照前两文章讲的,我们添加好他所需要的库以后,只需要几行简单的代码就能展显出效果 ,我们把生成的资源放到项目Resources下,当初我们导出时名字为RPGGame,我们也不改变什么,直接把整个文件放到资源文件夹下面,添加下面的代码。

void HelloWorld::addMyScene(){auto myScene = SceneReader::getInstance()->createNodeWithSceneFile("RPGGame/publish/Scene01.json");//myScene->setPosition(Point::ZERO);this->addChild(myScene);}


然后运行的时候,报段错误,提示找到不 什么什么文件,但是当我们去那目录下找时,此文件确实是存在,这就纳闷了,唯一的问题就是可以路径有问题,我们理下思路,我们导出时默认是 Resources 目录,然后目录下面并列放几个文件夹,那JSON文件里面的路径应该是 "Resources/xxx/yy.png" 我们去看看,发现真的是这样的,所以如果我们把整个生成的文件夹放到项目的Resources下面,必定出错,有两种方式更改

1. 在使用场景编辑器导出时,手动添加一层目录,然后拷贝里面那层目录

2. 拷贝里面的目录到项目Resources 下面,然后更改代码 加载文件路径  auto myScene = SceneReader::getInstance()->createNodeWithSceneFile("publish/Scene01.json");这样也是可以的

不管哪种方法都是可行的。但是cocostudio1.5里面导出路径是不让选择的,不知道这是不是bug,所以目前第一种方式不可行。还是用第二种吧!

前面UI用的是 GUIReader 这里用的 Sce但neReader 这是唯一的区别 !看下由代码生成出来的效果图吧



                                           ------有待补充。。。

0 0
原创粉丝点击