# 环境搭建

# LayaAir 安装

  1. 先进入Laya 引擎官网 (opens new window),再点击“引擎下载”选择“LayaAir IDE 下载”,不要使用最新的版本,要选择晚一些的版本。
  2. 更新引擎,可以直接下载引擎包,在本地替换,也可以打开 IDE 在 IDE 里面进行更新。
  3. 打开 LayaAir IDE,点击“新建”,选择 TypeScript 版本。

# 代码管理(Git)、扩展包管理(npm)

  1. 先下载安装Git (opens new window)Node.js (opens new window)。Git 的使用可以查看之前写的——Git 的使用,Npm 的使用可以查看之前写的——Npm 的使用

  2. 定位到之前新建项目的根目录下,在空白处右击并选择 “Git Bash Here”,在命令行窗口中输入 git init,为项目添加代码管理工具。当然,如果项目已经存在于线上 git 代码库了,直接使用 git clone xxx 命令克隆下来即可。

  3. 命令行窗口不要关闭,继续输入 npm init ,为该项目添加 npm 管理工具,后面需要什么依赖再安装什么依赖。当然,你也可以先将 package.json 配置好(需要的依赖包),然后运行 npm install 将所有的依赖下载好。

# 代码编辑器(VSCode)、TypeScript

  1. LayaAir IDE 一般只用来场景编辑和资源导出,所以得给项目专门配置一个代码编辑工具VSCode (opens new window),VSCode 的使用可以查看之前写的——VSCode 的使用

  2. 使用 “npm install --save-dev typescript” 来安装TypeScript (opens new window),配置好 tsconfig.json、tslint.json

# 代码测试(mocha、chai)

  1. 引擎里的元素在 Node 环境下可能跑不起来(没有 Window),所以用单元测试测跟引擎元素无关的逻辑。这样只需要用到 mocha+chai,而mochawesome (opens new window)nyc (opens new window)两种报告其实没什么必要。

  2. 关于 mocha 和 chai 的内容可以查看这篇——基于 mocha+chai 的单元测试

  3. 可以等引擎团队推出专门的测试框架(unity 就有自己的测试框架);自己写的话,要引一些包修改一些东西有些麻烦,平常使用 mock 数据来对自己的组件进行测试就可以了。

# 项目结构

    新建的 Laya 项目有如下结构:

ProjectName(项目文件夹)
  ├──.laya (项目配置目录,存放的是项目在开发运行中的一些配置信息)
  │   ├──compile.js (是gulp自定义编译流程的脚本文件,如果开发者对gulp比较熟悉的可以修改,否则不要动这里)
  │   ├──launch.json (文件保存了项目调试的一些配置信息,分别是LayaAirIDE的调试配置和chrome浏览器调试配置)
  │   └──publish.js (是gulp针对项目发布的脚本文件,开发者不要动这里)
  ├──bin (项目输出目录,存放项目中输出的js 、HTML、游戏资源等项目运行文件,以及小游戏项目文件,运行和调试都是基于这个目录)
  ├──laya (项目UI目录,存放LayaAirIDE当前的UI项目)
  │   ├──assets (用来存放UI场景中所需的组件图片、音频文件等资源)
  │   ├──pages (用来存放IDE中的场景、动画、预设等配置文件)
  │   └──.laya (.laya文件是LayaAirIDE的UI项目配置文件)
  ├──libs (项目库目录,代码提示,开发者假如有三方的类库使用,相关的.d.ts文件请放到这个目录下)
  ├──release (项目发布目录,发布项目后才会生成对应的版本目录)
  ├──src (项目的源代码目录)
  │   ├──script (项目中的用到的源代码文件,开发者编写的游戏脚本)
  │   ├──ui (ui目录是IDE自动生成的,开发者不要改动这里,改了也会被下次导出替换)
  │   ├──GameConfig (游戏配置)
  │   └──Main.ts (游戏入口文件)
  ├──.gitignore ( git忽略设置:设置项目中一些无需提交到git的文件或文件夹。)
  ├──ProjectName.laya (ProjectName这个项目的工程配置文件,记录了当前项目的项目名称、使用的类库版本号等)
  └──tsconfig.json (typescript配置:用于配置项目的ts版本信息、基本规范等。)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

需要注意的点:

  • 项目的入口是 src/Main.ts,如果你不想使用它作为入口,可以去.laya/compile.js 里修改。
  • bin 目录里的东西有很多,libs 是引擎库,prefab 是导出的预设库,res 是导出的资源库,还有声音库,H5 游戏入口,小游戏所使用的文件等。