@galacean/engine-loader 1.3.27 → 1.3.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/main.js +111 -104
- package/dist/main.js.map +1 -1
- package/dist/miniprogram.js +111 -104
- package/dist/module.js +111 -104
- package/dist/module.js.map +1 -1
- package/package.json +4 -4
- package/types/resource-deserialize/resources/texture2D/TextureDecoder.d.ts +1 -0
package/dist/main.js
CHANGED
|
@@ -420,6 +420,7 @@ function float32ArrayToVector2(float32Array, vertexCount) {
|
|
|
420
420
|
exports.Texture2DDecoder = /*#__PURE__*/ function() {
|
|
421
421
|
function Texture2DDecoder() {}
|
|
422
422
|
Texture2DDecoder.decode = function decode(engine, bufferReader) {
|
|
423
|
+
var _this = this;
|
|
423
424
|
return new engineCore.AssetPromise(function(resolve, reject) {
|
|
424
425
|
var objectId = bufferReader.nextStr();
|
|
425
426
|
var mipmap = !!bufferReader.nextUint8();
|
|
@@ -452,40 +453,52 @@ exports.Texture2DDecoder = /*#__PURE__*/ function() {
|
|
|
452
453
|
engine.resourceManager._objectPool[objectId] = texture2D;
|
|
453
454
|
resolve(texture2D);
|
|
454
455
|
} else {
|
|
455
|
-
var
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
texture2D.setImageSource(img);
|
|
461
|
-
var completedCount = 0;
|
|
462
|
-
var onComplete = function() {
|
|
463
|
-
completedCount++;
|
|
464
|
-
if (completedCount >= mipCount) {
|
|
465
|
-
resolve(texture2D);
|
|
466
|
-
}
|
|
467
|
-
};
|
|
468
|
-
onComplete();
|
|
469
|
-
if (mipmap) {
|
|
470
|
-
var _loop = function(i) {
|
|
471
|
-
var blob = new window.Blob([
|
|
472
|
-
imagesData[i]
|
|
473
|
-
]);
|
|
474
|
-
var img = new Image();
|
|
475
|
-
img.onload = function() {
|
|
476
|
-
texture2D.setImageSource(img, i);
|
|
477
|
-
onComplete();
|
|
478
|
-
};
|
|
479
|
-
img.src = URL.createObjectURL(blob);
|
|
480
|
-
};
|
|
481
|
-
texture2D.generateMipmaps();
|
|
482
|
-
for(var i = 1; i < mipCount; i++)_loop(i);
|
|
456
|
+
var completedCount = 0;
|
|
457
|
+
var onComplete = function() {
|
|
458
|
+
completedCount++;
|
|
459
|
+
if (completedCount >= mipCount) {
|
|
460
|
+
resolve(texture2D);
|
|
483
461
|
}
|
|
484
462
|
};
|
|
485
|
-
|
|
463
|
+
_this._loadImageBuffer(imagesData[0]).then(function(img) {
|
|
464
|
+
texture2D.setImageSource(img);
|
|
465
|
+
onComplete();
|
|
466
|
+
}, reject);
|
|
467
|
+
if (mipmap) {
|
|
468
|
+
var _loop = function(i1) {
|
|
469
|
+
_this._loadImageBuffer(imagesData[i1]).then(function(img) {
|
|
470
|
+
texture2D.setImageSource(img, i1);
|
|
471
|
+
onComplete();
|
|
472
|
+
}, reject);
|
|
473
|
+
};
|
|
474
|
+
texture2D.generateMipmaps();
|
|
475
|
+
for(var i1 = 1; i1 < mipCount; i1++)_loop(i1);
|
|
476
|
+
}
|
|
486
477
|
}
|
|
487
478
|
});
|
|
488
479
|
};
|
|
480
|
+
Texture2DDecoder._loadImageBuffer = function _loadImageBuffer(imageBuffer) {
|
|
481
|
+
return new Promise(function(resolve, reject) {
|
|
482
|
+
var blob = new window.Blob([
|
|
483
|
+
imageBuffer
|
|
484
|
+
]);
|
|
485
|
+
var img = new Image();
|
|
486
|
+
img.onerror = function() {
|
|
487
|
+
reject(new Error("Failed to load image buffer"));
|
|
488
|
+
};
|
|
489
|
+
img.onload = function() {
|
|
490
|
+
// Call requestAnimationFrame to avoid iOS's bug.
|
|
491
|
+
requestAnimationFrame(function() {
|
|
492
|
+
resolve(img);
|
|
493
|
+
img.onload = null;
|
|
494
|
+
img.onerror = null;
|
|
495
|
+
img.onabort = null;
|
|
496
|
+
});
|
|
497
|
+
};
|
|
498
|
+
img.crossOrigin = "anonymous";
|
|
499
|
+
img.src = URL.createObjectURL(blob);
|
|
500
|
+
});
|
|
501
|
+
};
|
|
489
502
|
return Texture2DDecoder;
|
|
490
503
|
}();
|
|
491
504
|
exports.Texture2DDecoder = __decorate([
|
|
@@ -1336,15 +1349,11 @@ exports.EditorTextureLoader = /*#__PURE__*/ function(Loader1) {
|
|
|
1336
1349
|
}
|
|
1337
1350
|
var _proto = EditorTextureLoader.prototype;
|
|
1338
1351
|
_proto.load = function load(item, resourceManager) {
|
|
1339
|
-
return
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
decode(data, resourceManager.engine).then(function(texture) {
|
|
1345
|
-
resolve(texture);
|
|
1346
|
-
});
|
|
1347
|
-
}).catch(reject);
|
|
1352
|
+
return resourceManager// @ts-ignore
|
|
1353
|
+
._request(item.url, _extends({}, item, {
|
|
1354
|
+
type: "arraybuffer"
|
|
1355
|
+
})).then(function(data) {
|
|
1356
|
+
return decode(data, resourceManager.engine);
|
|
1348
1357
|
});
|
|
1349
1358
|
};
|
|
1350
1359
|
return EditorTextureLoader;
|
|
@@ -1430,79 +1439,77 @@ var AnimatorControllerLoader = /*#__PURE__*/ function(Loader1) {
|
|
|
1430
1439
|
var _proto = AnimatorControllerLoader.prototype;
|
|
1431
1440
|
_proto.load = function load(item, resourceManager) {
|
|
1432
1441
|
var _this = this;
|
|
1433
|
-
return
|
|
1434
|
-
|
|
1435
|
-
|
|
1436
|
-
|
|
1437
|
-
|
|
1438
|
-
|
|
1439
|
-
|
|
1440
|
-
|
|
1441
|
-
|
|
1442
|
-
|
|
1443
|
-
|
|
1444
|
-
|
|
1445
|
-
|
|
1446
|
-
|
|
1447
|
-
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
|
|
1453
|
-
|
|
1454
|
-
|
|
1455
|
-
|
|
1456
|
-
|
|
1457
|
-
|
|
1458
|
-
|
|
1459
|
-
state.addStateMachineScript(engineCore.Loader.getClass(script));
|
|
1460
|
-
});
|
|
1461
|
-
statesMap[id] = state;
|
|
1462
|
-
if (clipData) {
|
|
1463
|
-
promises.push(new Promise(function(resolve) {
|
|
1464
|
-
//@ts-ignore
|
|
1465
|
-
resourceManager.getResourceByRef(clipData).then(function(clip) {
|
|
1466
|
-
resolve({
|
|
1467
|
-
layerIndex: layerIndex,
|
|
1468
|
-
stateIndex: stateIndex,
|
|
1469
|
-
clip: clip
|
|
1470
|
-
});
|
|
1471
|
-
});
|
|
1472
|
-
}));
|
|
1473
|
-
}
|
|
1474
|
-
});
|
|
1475
|
-
transitions.forEach(function(transitionData) {
|
|
1476
|
-
var transition = _this._createTransition(transitionData, statesMap[transitionData.destinationStateId]);
|
|
1477
|
-
transitionsMap[transitionData.id] = transition;
|
|
1478
|
-
});
|
|
1479
|
-
states.forEach(function(stateData) {
|
|
1480
|
-
var id = stateData.id, transitions = stateData.transitions;
|
|
1481
|
-
transitions.forEach(function(transitionId) {
|
|
1482
|
-
var transition = transitionsMap[transitionId];
|
|
1483
|
-
transition && statesMap[id].addTransition(transition);
|
|
1484
|
-
});
|
|
1485
|
-
});
|
|
1486
|
-
entryTransitions.forEach(function(entryTransitionData) {
|
|
1487
|
-
stateMachine.addEntryStateTransition(_this._createTransition(entryTransitionData, statesMap[entryTransitionData.destinationStateId]));
|
|
1442
|
+
return resourceManager// @ts-ignore
|
|
1443
|
+
._request(item.url, _extends({}, item, {
|
|
1444
|
+
type: "json"
|
|
1445
|
+
})).then(function(data) {
|
|
1446
|
+
var animatorController = new engineCore.AnimatorController(resourceManager.engine);
|
|
1447
|
+
var layers = data.layers, parameters = data.parameters;
|
|
1448
|
+
var promises = [];
|
|
1449
|
+
layers.forEach(function(layerData, layerIndex) {
|
|
1450
|
+
var name = layerData.name, blendingMode = layerData.blendingMode, weight = layerData.weight, stateMachineData = layerData.stateMachine;
|
|
1451
|
+
var layer = new engineCore.AnimatorControllerLayer(name);
|
|
1452
|
+
layer.blendingMode = blendingMode;
|
|
1453
|
+
layer.weight = weight;
|
|
1454
|
+
if (stateMachineData) {
|
|
1455
|
+
var states = stateMachineData.states, transitions = stateMachineData.transitions, entryTransitions = stateMachineData.entryTransitions, anyTransitions = stateMachineData.anyTransitions;
|
|
1456
|
+
var stateMachine = layer.stateMachine;
|
|
1457
|
+
var statesMap = {};
|
|
1458
|
+
var transitionsMap = {};
|
|
1459
|
+
states.forEach(function(stateData, stateIndex) {
|
|
1460
|
+
var id = stateData.id, name = stateData.name, speed = stateData.speed, wrapMode = stateData.wrapMode, clipStartNormalizedTime = stateData.clipStartNormalizedTime, clipEndNormalizedTime = stateData.clipEndNormalizedTime, clipData = stateData.clip, scripts = stateData.scripts;
|
|
1461
|
+
var state = stateMachine.addState(name);
|
|
1462
|
+
state.speed = speed;
|
|
1463
|
+
state.wrapMode = wrapMode;
|
|
1464
|
+
state.clipStartTime = clipStartNormalizedTime;
|
|
1465
|
+
state.clipEndTime = clipEndNormalizedTime;
|
|
1466
|
+
scripts.forEach(function(script) {
|
|
1467
|
+
state.addStateMachineScript(engineCore.Loader.getClass(script));
|
|
1488
1468
|
});
|
|
1489
|
-
|
|
1490
|
-
|
|
1469
|
+
statesMap[id] = state;
|
|
1470
|
+
if (clipData) {
|
|
1471
|
+
promises.push(//@ts-ignore
|
|
1472
|
+
resourceManager.getResourceByRef(clipData).then(function(clip) {
|
|
1473
|
+
return {
|
|
1474
|
+
layerIndex: layerIndex,
|
|
1475
|
+
stateIndex: stateIndex,
|
|
1476
|
+
clip: clip
|
|
1477
|
+
};
|
|
1478
|
+
}));
|
|
1479
|
+
}
|
|
1480
|
+
});
|
|
1481
|
+
transitions.forEach(function(transitionData) {
|
|
1482
|
+
var transition = _this._createTransition(transitionData, statesMap[transitionData.destinationStateId]);
|
|
1483
|
+
transitionsMap[transitionData.id] = transition;
|
|
1484
|
+
});
|
|
1485
|
+
states.forEach(function(stateData) {
|
|
1486
|
+
var id = stateData.id, transitions = stateData.transitions;
|
|
1487
|
+
transitions.forEach(function(transitionId) {
|
|
1488
|
+
var transition = transitionsMap[transitionId];
|
|
1489
|
+
transition && statesMap[id].addTransition(transition);
|
|
1491
1490
|
});
|
|
1492
|
-
}
|
|
1493
|
-
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1491
|
+
});
|
|
1492
|
+
entryTransitions.forEach(function(entryTransitionData) {
|
|
1493
|
+
stateMachine.addEntryStateTransition(_this._createTransition(entryTransitionData, statesMap[entryTransitionData.destinationStateId]));
|
|
1494
|
+
});
|
|
1495
|
+
anyTransitions.forEach(function(anyTransitionData) {
|
|
1496
|
+
stateMachine.addAnyStateTransition(_this._createTransition(anyTransitionData, statesMap[anyTransitionData.destinationStateId]));
|
|
1497
|
+
});
|
|
1498
|
+
}
|
|
1499
|
+
animatorController.addLayer(layer);
|
|
1500
|
+
});
|
|
1501
|
+
parameters.forEach(function(parameterData) {
|
|
1502
|
+
animatorController.addParameter(parameterData.name, parameterData.defaultValue);
|
|
1503
|
+
});
|
|
1504
|
+
return new engineCore.AssetPromise(function(resolve, reject) {
|
|
1505
|
+
engineCore.AssetPromise.all(promises).then(function(clipData) {
|
|
1499
1506
|
clipData.forEach(function(data) {
|
|
1500
1507
|
var layerIndex = data.layerIndex, stateIndex = data.stateIndex, clip = data.clip;
|
|
1501
1508
|
animatorController.layers[layerIndex].stateMachine.states[stateIndex].clip = clip;
|
|
1502
1509
|
});
|
|
1503
1510
|
resolve(animatorController);
|
|
1504
|
-
});
|
|
1505
|
-
})
|
|
1511
|
+
}, reject).catch(reject);
|
|
1512
|
+
});
|
|
1506
1513
|
});
|
|
1507
1514
|
};
|
|
1508
1515
|
_proto._createTransition = function _createTransition(transitionData, destinationState) {
|