@galacean/engine 1.2.0-beta.0 → 1.2.0-beta.1
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/browser.js +121 -169
- package/dist/browser.min.js +1 -1
- package/dist/main.js +1 -1
- package/dist/miniprogram.js +1 -1
- package/dist/module.js +1 -1
- package/package.json +5 -5
package/dist/browser.js
CHANGED
|
@@ -11760,6 +11760,7 @@
|
|
|
11760
11760
|
this._isContentLost = false;
|
|
11761
11761
|
};
|
|
11762
11762
|
_proto._onDestroy = function _onDestroy() {
|
|
11763
|
+
GraphicsResource1.prototype._onDestroy.call(this);
|
|
11763
11764
|
this._platformPrimitive.destroy();
|
|
11764
11765
|
this._vertexElementMap = null;
|
|
11765
11766
|
};
|
|
@@ -40472,114 +40473,68 @@
|
|
|
40472
40473
|
};
|
|
40473
40474
|
GLTFUtils.getAccessorBuffer = function getAccessorBuffer(context, bufferViews, accessor) {
|
|
40474
40475
|
var componentType = accessor.componentType;
|
|
40475
|
-
var
|
|
40476
|
-
var
|
|
40477
|
-
var
|
|
40478
|
-
|
|
40479
|
-
|
|
40480
|
-
|
|
40481
|
-
|
|
40482
|
-
var
|
|
40483
|
-
var
|
|
40484
|
-
|
|
40485
|
-
|
|
40486
|
-
|
|
40487
|
-
|
|
40488
|
-
|
|
40489
|
-
|
|
40490
|
-
|
|
40491
|
-
|
|
40492
|
-
|
|
40493
|
-
|
|
40494
|
-
|
|
40495
|
-
|
|
40496
|
-
|
|
40497
|
-
|
|
40498
|
-
|
|
40499
|
-
|
|
40500
|
-
|
|
40501
|
-
|
|
40502
|
-
|
|
40476
|
+
var TypedArray = GLTFUtils.getComponentType(componentType);
|
|
40477
|
+
var dataElementSize = GLTFUtils.getAccessorTypeSize(accessor.type);
|
|
40478
|
+
var dataElementBytes = TypedArray.BYTES_PER_ELEMENT;
|
|
40479
|
+
var elementStride = dataElementSize * dataElementBytes;
|
|
40480
|
+
var accessorCount = accessor.count;
|
|
40481
|
+
var promise;
|
|
40482
|
+
if (accessor.bufferView !== undefined) {
|
|
40483
|
+
var bufferViewIndex = accessor.bufferView;
|
|
40484
|
+
var bufferView = bufferViews[bufferViewIndex];
|
|
40485
|
+
promise = context.get(exports.GLTFParserType.BufferView, accessor.bufferView).then(function(bufferViewData) {
|
|
40486
|
+
var bufferIndex = bufferView.buffer;
|
|
40487
|
+
var _bufferViewData_byteOffset;
|
|
40488
|
+
var bufferByteOffset = (_bufferViewData_byteOffset = bufferViewData.byteOffset) != null ? _bufferViewData_byteOffset : 0;
|
|
40489
|
+
var _accessor_byteOffset;
|
|
40490
|
+
var byteOffset = (_accessor_byteOffset = accessor.byteOffset) != null ? _accessor_byteOffset : 0;
|
|
40491
|
+
var bufferStride = bufferView.byteStride;
|
|
40492
|
+
var bufferInfo;
|
|
40493
|
+
// According to the glTF official documentation only byteStride not undefined is allowed
|
|
40494
|
+
if (bufferStride !== undefined && bufferStride !== elementStride) {
|
|
40495
|
+
var bufferSlice = Math.floor(byteOffset / bufferStride);
|
|
40496
|
+
var bufferCacheKey = bufferViewIndex + ":" + componentType + ":" + bufferSlice + ":" + accessorCount;
|
|
40497
|
+
var accessorBufferCache = context.accessorBufferCache;
|
|
40498
|
+
bufferInfo = accessorBufferCache[bufferCacheKey];
|
|
40499
|
+
if (!bufferInfo) {
|
|
40500
|
+
var offset = bufferByteOffset + bufferSlice * bufferStride;
|
|
40501
|
+
var count = accessorCount * (bufferStride / dataElementBytes);
|
|
40502
|
+
var data = new TypedArray(bufferViewData.buffer, offset, count);
|
|
40503
|
+
accessorBufferCache[bufferCacheKey] = bufferInfo = new BufferInfo(data, true, bufferStride);
|
|
40504
|
+
bufferInfo.restoreInfo = new BufferDataRestoreInfo(new RestoreDataAccessor(bufferIndex, TypedArray, offset, count));
|
|
40505
|
+
}
|
|
40506
|
+
} else {
|
|
40507
|
+
var offset1 = bufferByteOffset + byteOffset;
|
|
40508
|
+
var count1 = accessorCount * dataElementSize;
|
|
40509
|
+
var data1 = new TypedArray(bufferViewData.buffer, offset1, count1);
|
|
40510
|
+
bufferInfo = new BufferInfo(data1, false, elementStride);
|
|
40511
|
+
bufferInfo.restoreInfo = new BufferDataRestoreInfo(new RestoreDataAccessor(bufferIndex, TypedArray, offset1, count1));
|
|
40503
40512
|
}
|
|
40504
|
-
|
|
40505
|
-
|
|
40506
|
-
|
|
40507
|
-
|
|
40508
|
-
|
|
40509
|
-
|
|
40510
|
-
|
|
40511
|
-
|
|
40512
|
-
|
|
40513
|
-
|
|
40514
|
-
|
|
40515
|
-
|
|
40516
|
-
|
|
40517
|
-
});
|
|
40513
|
+
return bufferInfo;
|
|
40514
|
+
});
|
|
40515
|
+
} else {
|
|
40516
|
+
var count = accessorCount * dataElementSize;
|
|
40517
|
+
var data = new TypedArray(count);
|
|
40518
|
+
var bufferInfo = new BufferInfo(data, false, elementStride);
|
|
40519
|
+
bufferInfo.restoreInfo = new BufferDataRestoreInfo(new RestoreDataAccessor(undefined, TypedArray, undefined, count));
|
|
40520
|
+
promise = Promise.resolve(bufferInfo);
|
|
40521
|
+
}
|
|
40522
|
+
return accessor.sparse ? promise.then(function(bufferInfo) {
|
|
40523
|
+
return GLTFUtils.processingSparseData(context, accessor, bufferInfo).then(function() {
|
|
40524
|
+
return bufferInfo;
|
|
40525
|
+
});
|
|
40526
|
+
}) : promise;
|
|
40518
40527
|
};
|
|
40519
|
-
GLTFUtils.bufferToVector3Array = function bufferToVector3Array(
|
|
40520
|
-
var
|
|
40521
|
-
var
|
|
40522
|
-
var
|
|
40523
|
-
var
|
|
40528
|
+
GLTFUtils.bufferToVector3Array = function bufferToVector3Array(buffer, byteOffset, count, normalized, componentType) {
|
|
40529
|
+
var baseOffset = byteOffset / buffer.BYTES_PER_ELEMENT;
|
|
40530
|
+
var stride = buffer.length / count;
|
|
40531
|
+
var vertices = new Array(count);
|
|
40532
|
+
var factor = normalized ? GLTFUtils.getNormalizedComponentScale(componentType) : 1;
|
|
40524
40533
|
for(var i = 0; i < count; i++){
|
|
40525
|
-
var index =
|
|
40526
|
-
|
|
40534
|
+
var index = baseOffset + i * stride;
|
|
40535
|
+
vertices[i] = new Vector3(buffer[index] * factor, buffer[index + 1] * factor, buffer[index + 2] * factor);
|
|
40527
40536
|
}
|
|
40528
|
-
return
|
|
40529
|
-
};
|
|
40530
|
-
/**
|
|
40531
|
-
* @deprecated
|
|
40532
|
-
* Get accessor data.
|
|
40533
|
-
*/ GLTFUtils.getAccessorData = function getAccessorData(glTF, accessor, buffers) {
|
|
40534
|
-
var bufferViews = glTF.bufferViews;
|
|
40535
|
-
var _accessor_bufferView;
|
|
40536
|
-
var bufferView = bufferViews[(_accessor_bufferView = accessor.bufferView) != null ? _accessor_bufferView : 0];
|
|
40537
|
-
var arrayBuffer = buffers[bufferView.buffer];
|
|
40538
|
-
var accessorByteOffset = accessor.hasOwnProperty("byteOffset") ? accessor.byteOffset : 0;
|
|
40539
|
-
var bufferViewByteOffset = bufferView.hasOwnProperty("byteOffset") ? bufferView.byteOffset : 0;
|
|
40540
|
-
var byteOffset = accessorByteOffset + bufferViewByteOffset;
|
|
40541
|
-
var accessorTypeSize = GLTFUtils.getAccessorTypeSize(accessor.type);
|
|
40542
|
-
var length = accessorTypeSize * accessor.count;
|
|
40543
|
-
var _bufferView_byteStride;
|
|
40544
|
-
var byteStride = (_bufferView_byteStride = bufferView.byteStride) != null ? _bufferView_byteStride : 0;
|
|
40545
|
-
var arrayType = GLTFUtils.getComponentType(accessor.componentType);
|
|
40546
|
-
var uint8Array;
|
|
40547
|
-
if (byteStride) {
|
|
40548
|
-
var accessorByteSize = accessorTypeSize * arrayType.BYTES_PER_ELEMENT;
|
|
40549
|
-
uint8Array = new Uint8Array(accessor.count * accessorByteSize);
|
|
40550
|
-
var originalBufferView = new Uint8Array(arrayBuffer, bufferViewByteOffset, bufferView.byteLength);
|
|
40551
|
-
for(var i = 0; i < accessor.count; i++){
|
|
40552
|
-
for(var j = 0; j < accessorByteSize; j++){
|
|
40553
|
-
uint8Array[i * accessorByteSize + j] = originalBufferView[i * byteStride + accessorByteOffset + j];
|
|
40554
|
-
}
|
|
40555
|
-
}
|
|
40556
|
-
} else {
|
|
40557
|
-
uint8Array = new Uint8Array(arrayBuffer.slice(byteOffset, byteOffset + length * arrayType.BYTES_PER_ELEMENT));
|
|
40558
|
-
}
|
|
40559
|
-
var typedArray = new arrayType(uint8Array.buffer);
|
|
40560
|
-
if (accessor.sparse) {
|
|
40561
|
-
var _accessor_sparse = accessor.sparse, count = _accessor_sparse.count, indices = _accessor_sparse.indices, values = _accessor_sparse.values;
|
|
40562
|
-
var indicesBufferView = bufferViews[indices.bufferView];
|
|
40563
|
-
var valuesBufferView = bufferViews[values.bufferView];
|
|
40564
|
-
var indicesArrayBuffer = buffers[indicesBufferView.buffer];
|
|
40565
|
-
var valuesArrayBuffer = buffers[valuesBufferView.buffer];
|
|
40566
|
-
var _indices_byteOffset, _indicesBufferView_byteOffset;
|
|
40567
|
-
var indicesByteOffset = ((_indices_byteOffset = indices.byteOffset) != null ? _indices_byteOffset : 0) + ((_indicesBufferView_byteOffset = indicesBufferView.byteOffset) != null ? _indicesBufferView_byteOffset : 0);
|
|
40568
|
-
var indicesByteLength = indicesBufferView.byteLength;
|
|
40569
|
-
var _values_byteOffset, _valuesBufferView_byteOffset;
|
|
40570
|
-
var valuesByteOffset = ((_values_byteOffset = values.byteOffset) != null ? _values_byteOffset : 0) + ((_valuesBufferView_byteOffset = valuesBufferView.byteOffset) != null ? _valuesBufferView_byteOffset : 0);
|
|
40571
|
-
var valuesByteLength = valuesBufferView.byteLength;
|
|
40572
|
-
var indicesType = GLTFUtils.getComponentType(indices.componentType);
|
|
40573
|
-
var indicesArray = new indicesType(indicesArrayBuffer, indicesByteOffset, indicesByteLength / indicesType.BYTES_PER_ELEMENT);
|
|
40574
|
-
var valuesArray = new arrayType(valuesArrayBuffer, valuesByteOffset, valuesByteLength / arrayType.BYTES_PER_ELEMENT);
|
|
40575
|
-
for(var i1 = 0; i1 < count; i1++){
|
|
40576
|
-
var replaceIndex = indicesArray[i1];
|
|
40577
|
-
for(var j1 = 0; j1 < accessorTypeSize; j1++){
|
|
40578
|
-
typedArray[replaceIndex * accessorTypeSize + j1] = valuesArray[i1 * accessorTypeSize + j1];
|
|
40579
|
-
}
|
|
40580
|
-
}
|
|
40581
|
-
}
|
|
40582
|
-
return typedArray;
|
|
40537
|
+
return vertices;
|
|
40583
40538
|
};
|
|
40584
40539
|
GLTFUtils.getBufferViewData = function getBufferViewData(bufferView, buffers) {
|
|
40585
40540
|
var _bufferView_byteOffset = bufferView.byteOffset, byteOffset = _bufferView_byteOffset === void 0 ? 0 : _bufferView_byteOffset;
|
|
@@ -41883,16 +41838,16 @@
|
|
|
41883
41838
|
var frame = restoreInfo.blendShape.frames[0];
|
|
41884
41839
|
var position = restoreInfo.position;
|
|
41885
41840
|
var positionData = _this._getBufferData(buffers, position.buffer);
|
|
41886
|
-
frame.deltaPositions = GLTFUtils.bufferToVector3Array(positionData, position.
|
|
41841
|
+
frame.deltaPositions = GLTFUtils.bufferToVector3Array(positionData, position.byteOffset, position.count, position.normalized, position.componentType);
|
|
41887
41842
|
if (restoreInfo.normal) {
|
|
41888
41843
|
var normal = restoreInfo.normal;
|
|
41889
41844
|
var normalData = _this._getBufferData(buffers, normal.buffer);
|
|
41890
|
-
frame.deltaNormals = GLTFUtils.bufferToVector3Array(normalData, normal.
|
|
41845
|
+
frame.deltaNormals = GLTFUtils.bufferToVector3Array(normalData, normal.byteOffset, normal.count, normal.normalized, normal.componentType);
|
|
41891
41846
|
}
|
|
41892
41847
|
if (restoreInfo.tangent) {
|
|
41893
41848
|
var tangent = restoreInfo.tangent;
|
|
41894
41849
|
var tangentData = _this._getBufferData(buffers, tangent.buffer);
|
|
41895
|
-
frame.deltaTangents = GLTFUtils.bufferToVector3Array(tangentData, tangent.
|
|
41850
|
+
frame.deltaTangents = GLTFUtils.bufferToVector3Array(tangentData, tangent.byteOffset, tangent.count, tangent.normalized, tangent.componentType);
|
|
41896
41851
|
}
|
|
41897
41852
|
}
|
|
41898
41853
|
mesh.uploadData(true);
|
|
@@ -41904,8 +41859,13 @@
|
|
|
41904
41859
|
};
|
|
41905
41860
|
_proto._getBufferData = function _getBufferData(buffers, restoreInfo) {
|
|
41906
41861
|
var main = restoreInfo.main;
|
|
41907
|
-
var
|
|
41908
|
-
|
|
41862
|
+
var data;
|
|
41863
|
+
if (main) {
|
|
41864
|
+
var buffer = buffers[main.bufferIndex];
|
|
41865
|
+
data = new main.TypedArray(buffer, main.byteOffset, main.length);
|
|
41866
|
+
} else {
|
|
41867
|
+
data = new main.TypedArray(main.length);
|
|
41868
|
+
}
|
|
41909
41869
|
var sparseCount = restoreInfo.sparseCount;
|
|
41910
41870
|
if (sparseCount) {
|
|
41911
41871
|
var sparseIndex = restoreInfo.sparseIndices;
|
|
@@ -41978,11 +41938,12 @@
|
|
|
41978
41938
|
};
|
|
41979
41939
|
/**
|
|
41980
41940
|
* @internal
|
|
41981
|
-
*/ var BlendShapeDataRestoreInfo = function BlendShapeDataRestoreInfo(buffer,
|
|
41941
|
+
*/ var BlendShapeDataRestoreInfo = function BlendShapeDataRestoreInfo(buffer, byteOffset, count, normalized, componentType) {
|
|
41982
41942
|
this.buffer = buffer;
|
|
41983
|
-
this.stride = stride;
|
|
41984
41943
|
this.byteOffset = byteOffset;
|
|
41985
41944
|
this.count = count;
|
|
41945
|
+
this.normalized = normalized;
|
|
41946
|
+
this.componentType = componentType;
|
|
41986
41947
|
};
|
|
41987
41948
|
/**
|
|
41988
41949
|
* Base class of glTF extension parser.
|
|
@@ -42599,23 +42560,7 @@
|
|
|
42599
42560
|
var meshRestoreInfo = new ModelMeshRestoreInfo();
|
|
42600
42561
|
meshRestoreInfo.mesh = mesh1;
|
|
42601
42562
|
context.contentRestorer.meshes.push(meshRestoreInfo);
|
|
42602
|
-
exports.GLTFMeshParser._parseMeshFromGLTFPrimitive(context, mesh1, meshRestoreInfo, meshInfo, gltfPrimitive, glTF,
|
|
42603
|
-
return null;
|
|
42604
|
-
}, function(attributeName, shapeIndex) {
|
|
42605
|
-
var shapeAccessorIdx = gltfPrimitive.targets[shapeIndex];
|
|
42606
|
-
var attributeAccessorIdx = shapeAccessorIdx[attributeName];
|
|
42607
|
-
if (attributeAccessorIdx) {
|
|
42608
|
-
var accessor = glTF.accessors[attributeAccessorIdx];
|
|
42609
|
-
return GLTFUtils.getAccessorBuffer(context, context.glTF.bufferViews, accessor);
|
|
42610
|
-
} else {
|
|
42611
|
-
return null;
|
|
42612
|
-
}
|
|
42613
|
-
}, function() {
|
|
42614
|
-
var indexAccessor = glTF.accessors[gltfPrimitive.indices];
|
|
42615
|
-
return context.get(exports.GLTFParserType.Buffer).then(function(buffers) {
|
|
42616
|
-
return GLTFUtils.getAccessorData(glTF, indexAccessor, buffers);
|
|
42617
|
-
});
|
|
42618
|
-
}, context.params.keepMeshData).then(resolve);
|
|
42563
|
+
exports.GLTFMeshParser._parseMeshFromGLTFPrimitive(context, mesh1, meshRestoreInfo, meshInfo, gltfPrimitive, glTF, context.params.keepMeshData).then(resolve);
|
|
42619
42564
|
}
|
|
42620
42565
|
});
|
|
42621
42566
|
};
|
|
@@ -42628,7 +42573,7 @@
|
|
|
42628
42573
|
};
|
|
42629
42574
|
/**
|
|
42630
42575
|
* @internal
|
|
42631
|
-
*/ GLTFMeshParser1._parseMeshFromGLTFPrimitive = function _parseMeshFromGLTFPrimitive(context, mesh, meshRestoreInfo, gltfMesh, gltfPrimitive, gltf,
|
|
42576
|
+
*/ GLTFMeshParser1._parseMeshFromGLTFPrimitive = function _parseMeshFromGLTFPrimitive(context, mesh, meshRestoreInfo, gltfMesh, gltfPrimitive, gltf, keepMeshData) {
|
|
42632
42577
|
var _loop = function _loop(attribute) {
|
|
42633
42578
|
var accessor = accessors[attributes[attribute]];
|
|
42634
42579
|
var promise = GLTFUtils.getAccessorBuffer(context, gltf.bufferViews, accessor).then(function(accessorBuffer) {
|
|
@@ -42723,61 +42668,68 @@
|
|
|
42723
42668
|
}
|
|
42724
42669
|
// BlendShapes
|
|
42725
42670
|
if (targets) {
|
|
42726
|
-
promises.push(exports.GLTFMeshParser._createBlendShape(mesh, meshRestoreInfo, gltfMesh,
|
|
42671
|
+
promises.push(exports.GLTFMeshParser._createBlendShape(context, mesh, meshRestoreInfo, gltfMesh, gltfPrimitive, targets));
|
|
42727
42672
|
}
|
|
42728
42673
|
return Promise.all(promises).then(function() {
|
|
42729
42674
|
mesh.uploadData(!keepMeshData);
|
|
42730
|
-
return
|
|
42675
|
+
return mesh;
|
|
42731
42676
|
});
|
|
42732
42677
|
});
|
|
42733
42678
|
};
|
|
42679
|
+
GLTFMeshParser1._getBlendShapeData = function _getBlendShapeData(context, glTF, accessor) {
|
|
42680
|
+
return GLTFUtils.getAccessorBuffer(context, glTF.bufferViews, accessor).then(function(bufferInfo) {
|
|
42681
|
+
var buffer = bufferInfo.data;
|
|
42682
|
+
var _accessor_byteOffset;
|
|
42683
|
+
var byteOffset = bufferInfo.interleaved ? ((_accessor_byteOffset = accessor.byteOffset) != null ? _accessor_byteOffset : 0) % bufferInfo.stride : 0;
|
|
42684
|
+
var count = accessor.count, normalized = accessor.normalized, componentType = accessor.componentType;
|
|
42685
|
+
var vertices = GLTFUtils.bufferToVector3Array(buffer, byteOffset, count, normalized, componentType);
|
|
42686
|
+
var restoreInfo = new BlendShapeDataRestoreInfo(bufferInfo.restoreInfo, byteOffset, count, normalized, componentType);
|
|
42687
|
+
return {
|
|
42688
|
+
vertices: vertices,
|
|
42689
|
+
restoreInfo: restoreInfo
|
|
42690
|
+
};
|
|
42691
|
+
});
|
|
42692
|
+
};
|
|
42734
42693
|
/**
|
|
42735
42694
|
* @internal
|
|
42736
|
-
*/ GLTFMeshParser1._createBlendShape = function _createBlendShape(mesh, meshRestoreInfo, glTFMesh,
|
|
42737
|
-
var _loop = function _loop(i
|
|
42695
|
+
*/ GLTFMeshParser1._createBlendShape = function _createBlendShape(context, mesh, meshRestoreInfo, glTFMesh, gltfPrimitive, glTFTargets) {
|
|
42696
|
+
var _this = this, _loop = function _loop(i) {
|
|
42697
|
+
var blendShapeData = {};
|
|
42698
|
+
blendShapeCollection[i] = blendShapeData;
|
|
42738
42699
|
var name = blendShapeNames ? blendShapeNames[i] : "blendShape" + i;
|
|
42700
|
+
var targets = gltfPrimitive.targets[i];
|
|
42701
|
+
var normalTarget = targets["NORMAL"];
|
|
42702
|
+
var tangentTarget = targets["TANGENT"];
|
|
42703
|
+
var hasNormal = normalTarget !== undefined;
|
|
42704
|
+
var hasTangent = tangentTarget !== undefined;
|
|
42739
42705
|
var promise = Promise.all([
|
|
42740
|
-
|
|
42741
|
-
|
|
42742
|
-
|
|
42743
|
-
]).then(function(
|
|
42744
|
-
var
|
|
42745
|
-
var
|
|
42746
|
-
var tanBufferInfo = infos[2];
|
|
42747
|
-
var target = glTFTargets[i];
|
|
42748
|
-
var posAccessor;
|
|
42749
|
-
var norAccessor;
|
|
42750
|
-
var tanAccessor;
|
|
42751
|
-
var positions = null;
|
|
42752
|
-
if (posBufferInfo) {
|
|
42753
|
-
posAccessor = accessors[target["POSITION"]];
|
|
42754
|
-
var _posAccessor_byteOffset;
|
|
42755
|
-
positions = GLTFUtils.bufferToVector3Array(posBufferInfo.data, posBufferInfo.stride, (_posAccessor_byteOffset = posAccessor.byteOffset) != null ? _posAccessor_byteOffset : 0, posAccessor.count);
|
|
42756
|
-
}
|
|
42757
|
-
var normals = null;
|
|
42758
|
-
if (norBufferInfo) {
|
|
42759
|
-
norAccessor = accessors[target["NORMAL"]];
|
|
42760
|
-
var _norAccessor_byteOffset;
|
|
42761
|
-
normals = GLTFUtils.bufferToVector3Array(norBufferInfo.data, norBufferInfo.stride, (_norAccessor_byteOffset = norAccessor.byteOffset) != null ? _norAccessor_byteOffset : 0, norAccessor.count);
|
|
42762
|
-
}
|
|
42763
|
-
var tangents = null;
|
|
42764
|
-
if (tanBufferInfo) {
|
|
42765
|
-
tanAccessor = accessors[target["NORMAL"]];
|
|
42766
|
-
var _tanAccessor_byteOffset;
|
|
42767
|
-
tangents = GLTFUtils.bufferToVector3Array(tanBufferInfo.data, tanBufferInfo.stride, (_tanAccessor_byteOffset = tanAccessor.byteOffset) != null ? _tanAccessor_byteOffset : 0, tanAccessor.count);
|
|
42768
|
-
}
|
|
42706
|
+
_this._getBlendShapeData(context, glTF, accessors[targets["POSITION"]]),
|
|
42707
|
+
hasNormal ? _this._getBlendShapeData(context, glTF, accessors[normalTarget]) : null,
|
|
42708
|
+
hasTangent ? _this._getBlendShapeData(context, glTF, accessors[tangentTarget]) : null
|
|
42709
|
+
]).then(function(vertices) {
|
|
42710
|
+
var _tangentData;
|
|
42711
|
+
var positionData = vertices[0], normalData = vertices[1], tangentData = vertices[2];
|
|
42769
42712
|
var blendShape = new BlendShape(name);
|
|
42770
|
-
blendShape.addFrame(1.0,
|
|
42771
|
-
|
|
42772
|
-
|
|
42773
|
-
meshRestoreInfo.blendShapes.push(new BlendShapeRestoreInfo(blendShape, new BlendShapeDataRestoreInfo(posBufferInfo.restoreInfo, posBufferInfo.stride, (_posAccessor_byteOffset1 = posAccessor.byteOffset) != null ? _posAccessor_byteOffset1 : 0, posAccessor.count), norBufferInfo ? new BlendShapeDataRestoreInfo(norBufferInfo.restoreInfo, norBufferInfo.stride, (_norAccessor_byteOffset1 = norAccessor.byteOffset) != null ? _norAccessor_byteOffset1 : 0, norAccessor.count) : null, tanBufferInfo ? new BlendShapeDataRestoreInfo(tanBufferInfo.restoreInfo, tanBufferInfo.stride, (_tanAccessor_byteOffset1 = tanAccessor.byteOffset) != null ? _tanAccessor_byteOffset1 : 0, tanAccessor.count) : null));
|
|
42713
|
+
blendShape.addFrame(1.0, positionData.vertices, hasNormal ? normalData.vertices : null, hasTangent ? tangentData.vertices : null);
|
|
42714
|
+
blendShapeData.blendShape = blendShape;
|
|
42715
|
+
blendShapeData.restoreInfo = new BlendShapeRestoreInfo(blendShape, positionData.restoreInfo, hasNormal ? normalData.restoreInfo : null, hasTangent ? (_tangentData = tangentData) == null ? void 0 : _tangentData.restoreInfo : null);
|
|
42774
42716
|
});
|
|
42775
42717
|
promises.push(promise);
|
|
42776
42718
|
};
|
|
42719
|
+
var glTF = context.glTF;
|
|
42720
|
+
var accessors = glTF.accessors;
|
|
42777
42721
|
var blendShapeNames = glTFMesh.extras ? glTFMesh.extras.targetNames : null;
|
|
42778
42722
|
var promises = new Array();
|
|
42779
|
-
|
|
42780
|
-
|
|
42723
|
+
var blendShapeCount = glTFTargets.length;
|
|
42724
|
+
var blendShapeCollection = new Array(blendShapeCount);
|
|
42725
|
+
for(var i = 0; i < blendShapeCount; i++)_loop(i);
|
|
42726
|
+
return Promise.all(promises).then(function() {
|
|
42727
|
+
for(var _iterator = _create_for_of_iterator_helper_loose(blendShapeCollection), _step; !(_step = _iterator()).done;){
|
|
42728
|
+
var blendShape = _step.value;
|
|
42729
|
+
mesh.addBlendShape(blendShape.blendShape);
|
|
42730
|
+
meshRestoreInfo.blendShapes.push(blendShape.restoreInfo);
|
|
42731
|
+
}
|
|
42732
|
+
});
|
|
42781
42733
|
};
|
|
42782
42734
|
return GLTFMeshParser1;
|
|
42783
42735
|
}(GLTFParser), function() {
|
|
@@ -44989,7 +44941,7 @@
|
|
|
44989
44941
|
], KHR_materials_anisotropy);
|
|
44990
44942
|
|
|
44991
44943
|
//@ts-ignore
|
|
44992
|
-
var version = "1.2.0-beta.
|
|
44944
|
+
var version = "1.2.0-beta.1";
|
|
44993
44945
|
console.log("Galacean engine version: " + version);
|
|
44994
44946
|
for(var key in CoreObjects){
|
|
44995
44947
|
Loader.registerClass(key, CoreObjects[key]);
|