From dcaaa31bf16c43d8a4e6863dc3cc41723d42c595 Mon Sep 17 00:00:00 2001
From: liteng <930372551@qq.com>
Date: Mon, 10 Dec 2018 20:46:09 +0800
Subject: [PATCH] =?UTF-8?q?assimp=E6=87=92=E5=8A=A0=E8=BD=BD=E3=80=82?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
ShadowEditor.Web/index.html | 1 -
ShadowEditor.Web/src/loader/AssimpLoader.js | 44 +++++++++++----------
ShadowEditor.Web/src/package/PackageList.js | 5 +++
3 files changed, 28 insertions(+), 22 deletions(-)
diff --git a/ShadowEditor.Web/index.html b/ShadowEditor.Web/index.html
index e3196527..9cae603f 100644
--- a/ShadowEditor.Web/index.html
+++ b/ShadowEditor.Web/index.html
@@ -109,7 +109,6 @@
-
diff --git a/ShadowEditor.Web/src/loader/AssimpLoader.js b/ShadowEditor.Web/src/loader/AssimpLoader.js
index ab47aa8d..57849175 100644
--- a/ShadowEditor.Web/src/loader/AssimpLoader.js
+++ b/ShadowEditor.Web/src/loader/AssimpLoader.js
@@ -13,31 +13,33 @@ AssimpLoader.prototype.constructor = AssimpLoader;
AssimpLoader.prototype.load = function (url, options) {
return new Promise(resolve => {
- var loader = new THREE.AssimpLoader();
- loader.load(url, result => {
- var obj = result.object;
+ this.require('AssimpLoader').then(() => {
+ var loader = new THREE.AssimpLoader();
+ loader.load(url, result => {
+ var obj = result.object;
- Object.assign(obj.userData, {
- obj: result,
- root: obj
- });
-
- if (result.animation) {
Object.assign(obj.userData, {
- animNames: 'Animation1',
- scripts: [{
- id: null,
- name: `${options.Name}动画`,
- type: 'javascript',
- source: this.createScripts(options.Name),
- uuid: THREE.Math.generateUUID()
- }]
+ obj: result,
+ root: obj
});
- }
- resolve(obj);
- }, undefined, () => {
- resolve(null);
+ if (result.animation) {
+ Object.assign(obj.userData, {
+ animNames: 'Animation1',
+ scripts: [{
+ id: null,
+ name: `${options.Name}动画`,
+ type: 'javascript',
+ source: this.createScripts(options.Name),
+ uuid: THREE.Math.generateUUID()
+ }]
+ });
+ }
+
+ resolve(obj);
+ }, undefined, () => {
+ resolve(null);
+ });
});
});
};
diff --git a/ShadowEditor.Web/src/package/PackageList.js b/ShadowEditor.Web/src/package/PackageList.js
index 9efe67f5..bc876cd2 100644
--- a/ShadowEditor.Web/src/package/PackageList.js
+++ b/ShadowEditor.Web/src/package/PackageList.js
@@ -15,6 +15,11 @@ const PackageList = [{
assets: [
'assets/js/loaders/AMFLoader.js'
]
+}, {
+ name: 'AssimpLoader',
+ assets: [
+ 'assets/js/loaders/AssimpLoader.js'
+ ]
}];
export default PackageList
\ No newline at end of file