完整教程:第三课、Cocos Creator 项目创建与目录结构详解

作为 Cocos Creator 开发者,了解项目创建流程和目录结构对于高效编写至关重要。本文将详细介绍如何创建新项目以及解析项目中的各个目录和作用。

一、 Cocos Creator 创建新任务

1. 启动 Cocos Dashboard

起初启动 Cocos Dashboard,这是 Cocos Creator 的项目管理和启动入口。

2. 选择项目模板

点击"新建项目"按钮,选择适合的项目模板:

  • Hello World: 最基础的模板,具备容易示例

  • Empty: 空项目,完全从零开始

  • 2D: 专为2D游戏设计的模板

  • 3D: 专为3D游戏设计的模板

  • 其他官方模板: 如AR/VR、平台跳跃等特定类型模板

3. 配置项目设置

填写项目名称、选择存储路径、指定游戏类型(2D/3D)以及选择适合的 Cocos Creator 版本。

4. 创建并打开方案

点击"创建并打开"按钮,Cocos Creator 会自动生成项目文件并打开编辑器。

5、项目创建完毕

二、Cocos Creator项目目录结构解析

创建任务后,你会看到以下目录结构:

NewProject/
├── assets/          # 资源目录(最重要)
├── library/         # 导入的资源目录
├── profiles/        # 编辑器调整
├── settings/        # 项目设置
├── temp/            # 临时文件
└── package.json     # 计划配置文件

1. assets 目录 - 核心资源文件夹

assets 是开发者最常操作的目录,所有游戏资源都应放在此文件夹下:

assets/
├── scenes/          # 存放所有场景记录(.fire)
├── scripts/         # 存放所有脚本文件
├── textures/        # 存放纹理图片
├── sounds/          # 存放音频文件
├── fonts/           # 存放字体文件
├── animations/      # 存放动画文件
├── prefabs/         # 存放预制体文件
└── ...              # 其他自定义资源文件夹

最佳实践

  • 保持目录结构清晰,按功能或资源类型分类

  • 使用小写字母和下划线命名文件夹

  • 避免在 assets 中存放非必要文档

2. library 目录 - 导入资源库

library 是 Cocos Creator 自动生成的目录,用于存储导入 assets 资源的中间文件。不要手动修改此目录中的内容。

当 library 丢失或损坏的时候,只要删除整个 library 文件夹再打开项目,就会重新生成资源库。

3. profiles目录 - 编辑器配置

profiles 文件夹中包含编辑器的配置信息,包括各目标平台的构建配置信息、场景配置信息等。

4. settings目录 - 项目设置

settings 里保存特定项目相关的设置,如 项目设置面板中相关的配备信息等。如果需要在不同开发者之间同步项目设置,请将 settings 目录加入到版本控制。

5. temp目录 -临时文件夹

temp 是临时文件夹,用于缓存一些 Cocos Creator 在本地的临时文件。这个文件夹可以在关闭 Cocos Creator 后手动删除,开发者不需要关心这里面的内容。

6. 其他目录

  • local-本地设置目录

local 目录中包含该项目的本机上的配置信息,包括编辑器面板布局、窗口大小、位置等信息。开发者不需要关心这里的内容

  • extensions-扩展插件文件夹目录

  extensions 目录用于放置此项目的自定义扩展插件。如果需要手动安装扩展插件,可以手动创建该文件夹。如需卸载扩展插件,在 extensions 中删除对应的文件夹即可。

  • build-构建目标目录

在使用编辑器主菜单中的任务 -> 构建发布 使用默认发布路径发布项目后,编辑器会在项目路径下创建 build 目录,并存放所有目标平台的构建工程。

7. package.json 项目配置文件

{
"package_version": 2,
"version": "1.0.0",
"name": "first-panel",
"description": "i18n:first-panel.description",
"main": "./dist/main.js",
"dependencies": {
"fs-extra": "^10.0.0"
},
"devDependencies": {
"@types/node": "^16.0.1",
"@types/fs-extra": "^9.0.5",
"typescript": "^4.3.4"
},
"panels": {
"default": {
"title": "first-panel Default Panel",
"type": "dockable",
"main": "dist/panels/default",
"size": {
"min-width": 400,
"min-height": 300,
"width": 1024,
"height": 600
}
}
},
"contributions": {
"menu": [
{
"path": "i18n:menu.panel/first-panel",
"label": "i18n:first-panel.open_panel",
"message": "open-panel"
},
{
"path": "i18n:menu.develop/first-panel",
"label": "i18n:first-panel.send_to_panel",
"message": "send-to-panel"
}
],
"messages": {
"open-panel": {
"methods": [
"openPanel"
]
},
"send-to-panel": {
"methods": [
"default.hello"
]
}
}
},
"author": "Cocos Creator",
"editor": ">=3.4.2",
"scripts": {
"build": "tsc -b",
"watch": "tsc -w"
}
}

panels:{} - 本扩展中定义的面板

  • default:String - 定义了一个名为 default 的面板
    • title:String - 面板标题
    • type:String - 面板类型
    • main:String - 面板源码目录
    • size:{} - 大小信息
      • min-width:Number - 最小宽度
      • min-height:Number - 最小高度
      • width:Number - 面板默认宽度
      • height:Number - 面板默认高度
posted @ 2025-09-16 12:48  yfceshi  阅读(91)  评论(0)    收藏  举报