Egret3D初步笔记二 (Unity导出场景使用)

时间:2023-03-08 18:57:37

一 Scene

根据上一节的继续。在导入unity4.7.1_Egret3D_Dll.unitypackage后。

在Unity中双击打开Assets/Egret3D/Example下的Example场景。

Egret3D初步笔记二  (Unity导出场景使用)

将Example_mesh的active勾选。并将其他的active勾选去掉。

Egret3D初步笔记二  (Unity导出场景使用)

Egret3D初步笔记二  (Unity导出场景使用)

Egret3D->Export->Scene 导出该场景

Egret3D初步笔记二  (Unity导出场景使用)

稍等片刻,可在Assets/Egret3D/Egret3DScene/Example下得到如下文件

Egret3D初步笔记二  (Unity导出场景使用)

复制到Egret3D项目resource下

Egret3D初步笔记二  (Unity导出场景使用)

加载MapConfg.json。并创建场景。

教程参考:http://developer.egret.com/cn/github/egret-docs/Engine3D/Egret3DDisp/Scene3D/index.html

// 用插件导出Scene 然后加载json配置文件
// 加载一个场景的配置
protected loadScene() {
// 这是个特效组
var loader: egret3d.QueueLoader = new egret3d.QueueLoader();
loader.load("resource/Example/MapConfig.json");
loader.addEventListener(egret3d.LoaderEvent3D.LOADER_COMPLETE, this.onSceneComplete, this);
}
// 场景加载完成
protected onSceneComplete(e: egret3d.LoaderEvent3D) {
var loader: egret3d.QueueLoader = e.target;
var scene: egret3d.Scene3D = loader.getAsset("resource/Example/MapConfig.json");
// 替换场景 中的scene
// 并把原来主摄像机加载当前场景
this.view3D.scene = scene;
this.view3D.scene.addChild(this.view3D.camera3D);
// 如果主摄像机在 scene 节点中 则不需要再添加为子节点 但是需要设置 view.camera3D
}

运行Egret

Egret3D初步笔记二  (Unity导出场景使用)