cocosCreator
cocosCreator的通过Dashboard来使用,它是cocosCreator在v2.3.2版本以后接入的系统,能够对多版本的引擎和项目进行统一的升级和管理。
下载地址:Dashboard
使用cocosCreator需要注册开发者账号,其注册链接: 账号注册
支持TypeScript
和JavaScript
两种编程语言。
2.x版本两种语言都支持, 在3.0以后废弃了对JavaScript
的支持。主要原因在于作为弱类型语言的JavaScript
迟早会成为Creator项目的优化瓶颈。
针对于cocosCreator,官方文档,图文,视频教程等,都很详细, 如下做下汇总:
cocosCreator 技术文档 cocosCreator教程文档
cocosCreator API cocos API文档说明
cocosCreator视频教程 官方的视频教程
cocosCreator 3.x 学习资料 官方论坛C姐分享的3.x学习资料
Demo相关:
cocos-example-projects 官方提供的一些UI案例
cocosCreator 3.x技术分享 第一期 官方论坛一些大佬分享的案例
语言相关:
官方对于cocosCreator的支持力度很高,各方面的教程也很多, 微信公众号,论坛,哔哩以及各位热心的大佬都提供了很多的教程和技术支持。赞!
项目结构
使用Dashboard创建一个2D的空项目,然后打开后,其项目的结构主要有:
assets
用于放置游戏中的图片,音效,字体,特效,脚本等。
只有在该目录下的内容才能显示在资源管理器中。一般文件夹命名有:
- res: 非动态加载的资源,比如图片,字体,动画,预制体等
- resources: 跟res类似,但它主要放置通过
resource.load
动态加载的资源 - scene: 放置场景相关
- scripts : 放置脚本相关
只要在该目录中, 任意文件都会生成一个.meta
文件,它主要用于存储对应的资源配置和索引信息等。
在项目打开时,编译器会对assets
目录进行扫描,如果某个文件没有,则会生成。
另外,对资源的添加,修改,删除或者目录改变的时候,.meta
文件都会发生改变。
// assets内创建的res文件夹,其res.meta的内容:
{
"ver": "1.1.0",
"importer": "directory",
"imported": true,
"uuid": "34e34f1d-5fcf-4698-838f-55c25a1efcd1",
"files": [],
"subMetas": {},
"userData": {
"compressionType": {},
"isRemoteBundle": {}
}
}
需要注意的是uuid即可,可以理解为通用唯一标识符。
CocosCreator识别某个文件,并不是简单的通过路径+文件名
来定位的,而是通过uuid来引用管理游戏资源文件。
在多人协作的过程中,可能出现uuid重复或者丢失的问题:
- 如果重复,可关闭编译器,并删除其中一个meta文件后,重新打开。
- 如果丢失,可根据路径相关进行定位解决。
总的来说,建议:
- 对文件进行添加修改,修改完成后,尽快将文件和meta进行提交
- 更新时候,检测meta文件是否配对
更多的.meta
的讲解内容参考:资源管理注意事项 — meta 文件
build
主要放置项目构建发布后不同平台的工程相关, 比如android, 微信小程序等。
通过编译器构建发布后,会在该目录下生成不同平台下的项目工程, 可用于打包发布。
library
assets
内的资源导入后自动生成的,这里的文件和结构都将被处理成游戏发布时所需要的形式。
注意:
- 当项目改动内容较多的时候,建议进行删除,然后重新打开项目进行生成,否则很容易出现各种奇怪的问题
- 如果出现丢失或损坏,也可以删除,然后重新打开项目
profiles
编译器配置, 主要放置各个目标平台的构建配置信息,场景配置信息等
extensions
主要放置项目插件相关,一般在通过编译器创建插件的时候会自动生成该目录。
如果从商城中导入一些插件,需要自己手动创建下该目录。
local
本地配置相关,包含该项目的本机上的配置信息,包括编辑器面板布局、窗口大小、位置等信息。
开发者不需要关注。
settings
项目配置相关,主要放置项目设置中的配置信息相关
temp
临时文件相关,主要用于缓存Creator在本地的临时文件相关,开发者不需要关心里面的内容
package.json
项目的配置文件相关,package.json
和assets
放置在一起,作为验证Creator项目合法性的标志。
二者缺一不可,他们是通过编译器打开项目的主要配置文件。
tsconfig.json
语言支持的提示配置文件,不会被读取, 它的编译选项不会影响编译
版本控制
在版本控制中,Creator会自动生成.gitgnore
文件相关,其内容大致为:
library/
temp/
local/
build/
profiles/
native
node_modules/
.vscode/
.idea/
在我们提交项目的时候,提交的的内容主要有:
assets
extensions
settings
package.json
代码编辑环境
代码编译环境可通过偏好设置 --> 外部程序 --> 默认脚本编译器来设置,推荐使用Visual studio Code,下载网址:Vs code
创建项目后,项目目录下会自动生成tsconfig.json
的文件,它主要用于代码提示相关,它会在项目编写代码脚本时自动提示API相关。
安装VsCode成功后,需要设置文件显示和搜索过滤相关,主要步骤:
首选项 --> 设置 --> 搜索框内输入:exclude
File: Exculde
**/.git
**/.svn
**/.hg
**/CVS
**/.DS_Store
**/Thumbs.db
**/*.meta
library/
local/
temp/
Search: Exculde
**/node_modules
**/bower_components
**/*.code-search
**/*.anim
build/
library/
temp/
更多详情参考:配置脚本编译环境
与cocos2d-x的区别
注意:
- cocosCreator和cocos2d-x,虽然都带有cocos, 但属于两款不同的引擎
- 使用cocosCreator开发时,类似于通过多个组件的模式构建游戏的整体页面,就比如舞台的搭建,通过官方术语解释就是creator以数据驱动,通过编译器搭建场景和组件的编写,即可运行游戏
- 使用cocos2dx需要通过代码驱动,搭建整体的代码框架,再堆游戏内容,然后运行游戏。
- 在cocos2d-x中可对节点进行继承和扩展, 而在creator中节点只是作为一个实体,通过各种不同类型组件的堆叠实现不同的游戏逻辑。
更多的内容参考:Cocos2d-x 用户上手指南
简单的理解:
- creator主张各司其职,互不干涉;2dx主张相互复用,互相扶持。
- 语言的使用虽然不同,但语法方面万变不离其宗,小心其坑点即可
最后,祝大家学习愉快。