mirror of
https://github.com/tengge1/ShadowEditor.git
synced 2026-01-25 15:08:11 +00:00
assimp懒加载。
This commit is contained in:
parent
eb62ca5dbe
commit
dcaaa31bf1
@ -109,7 +109,6 @@
|
||||
<script src="assets/js/curves/NURBSUtils.js"></script>
|
||||
|
||||
<!-- loaders -->
|
||||
<script src="assets/js/loaders/AssimpLoader.js"></script>
|
||||
<script src="assets/js/loaders/AWDLoader.js"></script>
|
||||
<script src="assets/js/loaders/BabylonLoader.js"></script>
|
||||
<script src="assets/js/loaders/BinaryLoader.js"></script>
|
||||
|
||||
@ -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);
|
||||
});
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
@ -15,6 +15,11 @@ const PackageList = [{
|
||||
assets: [
|
||||
'assets/js/loaders/AMFLoader.js'
|
||||
]
|
||||
}, {
|
||||
name: 'AssimpLoader',
|
||||
assets: [
|
||||
'assets/js/loaders/AssimpLoader.js'
|
||||
]
|
||||
}];
|
||||
|
||||
export default PackageList
|
||||
Loading…
x
Reference in New Issue
Block a user