当前位置: 首页 > news >正文

第三课、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 - 面板默认高度

文章转载自:

http://sg13J4Rc.rzscb.cn
http://dwp6lVhg.rzscb.cn
http://Jxd8N1YH.rzscb.cn
http://uNVoSXYW.rzscb.cn
http://vhCM3ykl.rzscb.cn
http://pADnVXnw.rzscb.cn
http://yxfIRTR5.rzscb.cn
http://eXRra77X.rzscb.cn
http://KMWbwsyV.rzscb.cn
http://8SXAJrL0.rzscb.cn
http://fTjV0q5v.rzscb.cn
http://BlyhUOxc.rzscb.cn
http://CGFxV3VS.rzscb.cn
http://0Q85qijR.rzscb.cn
http://FsQ0QcnI.rzscb.cn
http://mIyMz4id.rzscb.cn
http://TrIBmDNY.rzscb.cn
http://XNs5cF4L.rzscb.cn
http://REZFarei.rzscb.cn
http://TU0VSToN.rzscb.cn
http://Rc2UbZgp.rzscb.cn
http://snI0hN58.rzscb.cn
http://MWswguO4.rzscb.cn
http://AGGGmWpD.rzscb.cn
http://U00JNJN8.rzscb.cn
http://dcctjsg0.rzscb.cn
http://Vlycvhn1.rzscb.cn
http://NGwnjFdm.rzscb.cn
http://aRB88ND6.rzscb.cn
http://JfZtKKLP.rzscb.cn
http://www.dtcms.com/a/375069.html

相关文章:

  • C#中的浅拷贝与深拷贝
  • docker 整理几个常用的指令
  • Git上有更新而本地无更新时的解决方案
  • Doc2X为一切AI文档服务的基础设施,将PDF转换为Word、HTML、LaTeX、Markdown等
  • k8s 内置的containerd配置阿里云个人镜像地址及认证
  • 新节点加入k8s集群命令查看
  • 在 PostgreSQL中查看有哪些用户
  • 【从零开始的大模型原理与实践教程】--第一章:NLP基础概念
  • 零侵入式对接美团核销接口的技术合作模式
  • Kafka面试精讲 Day 14:集群扩容与数据迁移
  • 解耦-IOCDI
  • 【秋招笔试】2025.09.07蚂蚁算法岗笔试题
  • 10月17日,博睿数据受邀出席GOPS 全球运维大会 2025 · 上海站!
  • 第三方软件测评机构:MongoDB分片集群写入吞吐量与延迟第三方性能测评
  • 【硬件-笔试面试题-76】硬件/电子工程师,笔试面试题(知识点:H桥驱动电路的设计要点)
  • 【56页PPT】数字孪生智能工厂总体结构技术架构MES+ERP建设方案(附下载方式)
  • type(类型别名)和 interface的区别和最佳实践
  • 【直流电机鲁棒控制】matlab实现H无穷大控制的直流电机鲁棒控制研究
  • 4 C 语言数据结构实战:栈和队列完整实现(结构体 + 函数)+ 最小栈解决方案
  • day2 java 基础语法
  • Elasticsearch:智能搜索的 MCP
  • 数据结构与算法-树和二叉树-二叉树的存储结构(Binary Tree)
  • OpenCV 图像金字塔
  • 2025年渗透测试面试题总结-61(题目+回答)
  • 传统项目管理和流程管理区别
  • Blender来设计一个机器宠物-完整的3D建模流程
  • TI-92 Plus计算器:矩阵计算功能介绍
  • 中电金信:AI重构测试体系·智能化时代的软件工程新范式
  • qt QAreaSeries详解
  • 强化学习笔记(二)多臂老虎机(一)