本人使用的是layabox ide 2.1版本。
首先创建一个空项目会发现左侧默认生成一些文件夹以及一些文件。

.laya 文件夹中存放一些项目开发中到发布需要的文件以及一些配置信息。
比如文件夹内的compile.js中33行就是设置项目文件的主入口。
bin文件夹内是项目输出的文件,在编辑器上运行时,其实就是运行的bin文件夹下的html文件。
laya文件夹存放的是项目的资源文件
laya文件夹下的assets文件夹内是项目自带的一套ui图片
在创建场景后,laya文件夹下会生成的pages文件夹,用于存放使用编辑器创建的场景和页面。
libs文件夹内存放的是编辑器代码提示文件。
src内存放项目逻辑文件,内部创建一个空项目会默认生成两个文件:Main.js和GameConfig.js
Main.js是入口文件,用于初始化一些场景内容
GameConfig.js是配置文件,里面的配置用于初始化场景,用于Main.js
jsconfig.json为整个项目的编译配置,用于ts编译,源码貌似是用ts开发。、
test1.laya文件为项目的入口,可以通过此文件识别是否为一个laya项目,test1为项目的名称。
src文件
我们可以先看一下Main.js文件的内容,其实官方已经注释的很明白了,我这里又详细了一下贴了出来
import GameConfig from "./GameConfig";
class Main {
constructor() {
//根据IDE设置初始化引擎 当前如果支持webgl则通过webgl来创建项目
if (window["Laya3D"]) Laya3D.init(GameConfig.width, GameConfig.height);
else Laya.init(GameConfig.width, GameConfig.height, Laya["WebGL"]);
Laya["Physics"] && Laya["Physics"].enable(); //是否开启物理
Laya["DebugPanel"] && Laya["DebugPanel"].enable(); //是否开启调试框
Laya.stage.scaleMode = GameConfig.scaleMode; //场景适配模式
Laya.stage.screenMode = GameConfig.screenMode; //场景横竖屏
Laya.stage.alignV = GameConfig.alignV; //垂直对齐方式
Laya.stage.alignH = GameConfig.alignH; //水平对齐方式
//兼容微信不支持加载scene后缀场景
Laya.URL.exportSceneToJson = GameConfig.exportSceneToJson;
//打开调试面板(通过IDE设置调试模式,或者url地址增加debug=true参数,均可打开调试面板)
if (GameConfig.debug || Laya.Utils.getQueryString("debug") == "true") Laya.enableDebugPanel();
if (GameConfig.physicsDebug && Laya["PhysicsDebugDraw"]) Laya["PhysicsDebugDraw"].enable();
if (GameConfig.stat) Laya.Stat.show();
Laya.alertGlobalError = true;
//激活资源版本控制,version.json由IDE发布功能自动生成,如果没有也不影响后续流程
Laya.ResourceVersion.enable("version.json", Laya.Handler.create(this, this.onVersionLoaded), Laya.ResourceVersion.FILENAME_VERSION);
}
onVersionLoaded() {
//激活大小图映射,加载小图的时候,如果发现小图在大图合集里面,则优先加载大图合集,而不是小图
Laya.AtlasInfoManager.enable("fileconfig.json", Laya.Handler.create(this, this.onConfigLoaded));
}
onConfigLoaded() {
//加载IDE指定的场景
GameConfig.startScene && Laya.Scene.open(GameConfig.startScene);
}
}
//激活启动类
new Main();
可以看出,这个Main.js文件首先引入了GameConfig.js文件,然后通过引入的GameConfig.js文件内的配置进行初始化场景来添加数据。
GameConfig.js文件我们无法直接修改,需要在编辑器内进行修改,我们可以通过进入‘编辑模式’后,点击F9来打开编辑框进行编辑。
打开项目设置,我们会发现当前的一些设置都是在设置场景的相关内容,比如初始场景,对应到Main.js里面的
GameConfig.startScene && Laya.Scene.open(GameConfig.startScene);
即如果这里设置了,编辑的GameConfig.js的时候,将会在startScene 属性上生成目标场景名称。
接下来,列一下主要配置设置
设计宽高度,为当前场景设计时的宽度和高度。
场景适配模式
取值范围:
“noscale” :不缩放;
“exactfit” :全屏不等比缩放;
“showall” :最小比例缩放;
“noborder” :最大比例缩放;
“full” :不缩放,stage的宽高等于屏幕宽高;
“fixedwidth” :宽度不变,高度根据屏幕比缩放;
“fixedheight” :高度不变,宽度根据屏幕比缩放;
“fixedauto” :根据宽高比,自动选择使用fixedwidth或fixedheight;
场景横竖屏
取值范围:
“none” :不更改屏幕
“horizontal” :自动横屏
“vertical” :自动竖屏
垂直对齐方式
取值范围:
“top” :居顶部对齐;
“middle” :居中对齐;
“bottom” :居底部对齐;
水平对齐方式
取值范围:
“left” :居左对齐;
“center” :居中对齐;
“right” :居右对齐;