@galacean/effects-core 1.3.0 → 1.3.2
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/comp-vfx-item.d.ts +2 -0
- package/dist/index.js +132 -125
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +132 -125
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/comp-vfx-item.d.ts
CHANGED
|
@@ -44,6 +44,8 @@ export declare class CompVFXItem extends VFXItem<void | CalculateItem> {
|
|
|
44
44
|
onItemRemoved(composition: Composition): void;
|
|
45
45
|
reset(): void;
|
|
46
46
|
handleVisibleChanged(visible: boolean): void;
|
|
47
|
+
setScale(x: number, y: number, z: number): void;
|
|
48
|
+
scale(x: number, y: number, z: number): void;
|
|
47
49
|
getUpdateTime(t: number): number;
|
|
48
50
|
removeItem(item: VFXItem<VFXItemContent>): boolean;
|
|
49
51
|
/**
|
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Description: Galacean Effects runtime core for the web
|
|
4
4
|
* Author: Ant Group CO., Ltd.
|
|
5
5
|
* Contributors: 燃然,飂兮,十弦,云垣,茂安,意绮
|
|
6
|
-
* Version: v1.3.
|
|
6
|
+
* Version: v1.3.2
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
'use strict';
|
|
@@ -7130,9 +7130,9 @@ var Float16ArrayWrapper = /** @class */ (function () {
|
|
|
7130
7130
|
this.data = new Uint16Array(num);
|
|
7131
7131
|
}
|
|
7132
7132
|
else if (num && typeof num === 'object' && Number.isInteger(num.length)) {
|
|
7133
|
-
var
|
|
7134
|
-
for (var i = 0; i <
|
|
7135
|
-
|
|
7133
|
+
var data = this.data = new Uint16Array(num.length);
|
|
7134
|
+
for (var i = 0; i < data.length; i++) {
|
|
7135
|
+
data[i] = toHalf(num[i]);
|
|
7136
7136
|
}
|
|
7137
7137
|
}
|
|
7138
7138
|
}
|
|
@@ -7505,9 +7505,9 @@ var CurveValue = /** @class */ (function (_super) {
|
|
|
7505
7505
|
CurveValue.getAllData = function (meta, halfFloat) {
|
|
7506
7506
|
var ret = new (halfFloat ? Float16ArrayWrapper : Float32Array)(meta.index * 4);
|
|
7507
7507
|
for (var i = 0, cursor = 0, curves = meta.curves; i < curves.length; i++) {
|
|
7508
|
-
var
|
|
7509
|
-
ret.set(
|
|
7510
|
-
cursor +=
|
|
7508
|
+
var data = curves[i].toData();
|
|
7509
|
+
ret.set(data, cursor);
|
|
7510
|
+
cursor += data.length;
|
|
7511
7511
|
}
|
|
7512
7512
|
return halfFloat ? ret.data : ret;
|
|
7513
7513
|
};
|
|
@@ -7516,17 +7516,17 @@ var CurveValue = /** @class */ (function (_super) {
|
|
|
7516
7516
|
var max = -Infinity;
|
|
7517
7517
|
//formatted number
|
|
7518
7518
|
if (Number.isFinite(props[0]) && Number.isFinite(props[1])) {
|
|
7519
|
-
var
|
|
7519
|
+
var keys = [];
|
|
7520
7520
|
for (var i = 2; i < props.length; i++) {
|
|
7521
7521
|
// FIXME
|
|
7522
|
-
|
|
7522
|
+
keys.push(props[i].slice(0, 4));
|
|
7523
7523
|
}
|
|
7524
|
-
this.keys =
|
|
7524
|
+
this.keys = keys;
|
|
7525
7525
|
this.min = props[0];
|
|
7526
7526
|
this.dist = props[1] - props[0];
|
|
7527
7527
|
}
|
|
7528
7528
|
else {
|
|
7529
|
-
var
|
|
7529
|
+
var keys = props.map(function (item) {
|
|
7530
7530
|
if (isArray(item)) {
|
|
7531
7531
|
min = Math.min(min, item[1]);
|
|
7532
7532
|
max = Math.max(max, item[1]);
|
|
@@ -7541,22 +7541,22 @@ var CurveValue = /** @class */ (function (_super) {
|
|
|
7541
7541
|
throw new Error('invalid keyframe');
|
|
7542
7542
|
});
|
|
7543
7543
|
var dist = max - min;
|
|
7544
|
-
this.keys =
|
|
7544
|
+
this.keys = keys;
|
|
7545
7545
|
if (dist !== 0) {
|
|
7546
|
-
for (var i = 0; i <
|
|
7547
|
-
var key =
|
|
7546
|
+
for (var i = 0; i < keys.length; i++) {
|
|
7547
|
+
var key = keys[i];
|
|
7548
7548
|
key[1] = (key[1] - min) / dist;
|
|
7549
7549
|
}
|
|
7550
7550
|
}
|
|
7551
|
-
var key0 =
|
|
7551
|
+
var key0 = keys[0];
|
|
7552
7552
|
if (key0[0] > 0) {
|
|
7553
7553
|
key0[2] = 0;
|
|
7554
|
-
|
|
7554
|
+
keys.unshift([0, key0[1], 0, 0]);
|
|
7555
7555
|
}
|
|
7556
|
-
var key1 =
|
|
7556
|
+
var key1 = keys[keys.length - 1];
|
|
7557
7557
|
if (key1[0] < 1) {
|
|
7558
7558
|
key1[3] = 0;
|
|
7559
|
-
|
|
7559
|
+
keys.push([1, key1[1], 0, 0]);
|
|
7560
7560
|
}
|
|
7561
7561
|
this.min = min;
|
|
7562
7562
|
this.dist = dist;
|
|
@@ -7931,14 +7931,14 @@ function curveValueIntegrateByTime(t1, keyframe0, keyframe1) {
|
|
|
7931
7931
|
function getKeyFrameMetaByRawValue(meta, value) {
|
|
7932
7932
|
if (value) {
|
|
7933
7933
|
var type = value[0];
|
|
7934
|
-
var
|
|
7934
|
+
var keys = value[1];
|
|
7935
7935
|
if (type === ValueType$1.CURVE) {
|
|
7936
|
-
meta.curves.push(
|
|
7937
|
-
var keyLen =
|
|
7938
|
-
if (
|
|
7936
|
+
meta.curves.push(keys);
|
|
7937
|
+
var keyLen = keys.length;
|
|
7938
|
+
if (keys[0][0] > 0) {
|
|
7939
7939
|
keyLen++;
|
|
7940
7940
|
}
|
|
7941
|
-
if (
|
|
7941
|
+
if (keys[keys.length - 1][0] < 1) {
|
|
7942
7942
|
keyLen++;
|
|
7943
7943
|
}
|
|
7944
7944
|
meta.index += keyLen;
|
|
@@ -7946,19 +7946,19 @@ function getKeyFrameMetaByRawValue(meta, value) {
|
|
|
7946
7946
|
meta.curveCount += keyLen;
|
|
7947
7947
|
}
|
|
7948
7948
|
else if (type === ValueType$1.LINE) {
|
|
7949
|
-
var keyLen =
|
|
7950
|
-
if (keyLen === 2 &&
|
|
7949
|
+
var keyLen = keys.length;
|
|
7950
|
+
if (keyLen === 2 && keys[0][0] === 0 && keys[1][0] === 1) {
|
|
7951
7951
|
return;
|
|
7952
7952
|
}
|
|
7953
|
-
if (
|
|
7953
|
+
if (keys[0][0] > 0) {
|
|
7954
7954
|
keyLen++;
|
|
7955
7955
|
}
|
|
7956
|
-
if (
|
|
7956
|
+
if (keys[keys.length - 1][0] < 1) {
|
|
7957
7957
|
keyLen++;
|
|
7958
7958
|
}
|
|
7959
7959
|
var uniformCount = Math.ceil(keyLen / 2);
|
|
7960
7960
|
meta.lineSegCount += uniformCount;
|
|
7961
|
-
meta.curves.push(
|
|
7961
|
+
meta.curves.push(keys);
|
|
7962
7962
|
meta.index += uniformCount;
|
|
7963
7963
|
meta.max = Math.max(meta.max, uniformCount);
|
|
7964
7964
|
}
|
|
@@ -10439,9 +10439,9 @@ var KTXTexture = /** @class */ (function () {
|
|
|
10439
10439
|
for (var level = 0; level < mipmapCount; level++) {
|
|
10440
10440
|
var imageSize = new Int32Array(this.arrayBuffer, this.baseOffset + dataOffset, 1)[0]; // size per face, since not supporting array cubemaps
|
|
10441
10441
|
for (var face = 0; face < this.numberOfFaces; face++) {
|
|
10442
|
-
var
|
|
10442
|
+
var data = new Uint8Array(this.arrayBuffer, this.baseOffset + dataOffset + 4, imageSize);
|
|
10443
10443
|
mipmaps.push({
|
|
10444
|
-
data:
|
|
10444
|
+
data: data,
|
|
10445
10445
|
width: width,
|
|
10446
10446
|
height: height,
|
|
10447
10447
|
});
|
|
@@ -13270,16 +13270,16 @@ var InteractVFXItem = /** @class */ (function (_super) {
|
|
|
13270
13270
|
var nx = position[0] - width;
|
|
13271
13271
|
var ny = position[1] - height;
|
|
13272
13272
|
if (options.dxRange) {
|
|
13273
|
-
var _d = __read$3(options.dxRange, 2),
|
|
13274
|
-
nx = clamp$1(nx,
|
|
13275
|
-
if (nx !==
|
|
13273
|
+
var _d = __read$3(options.dxRange, 2), min = _d[0], max = _d[1];
|
|
13274
|
+
nx = clamp$1(nx, min, max);
|
|
13275
|
+
if (nx !== min && nx !== max && min !== max) {
|
|
13276
13276
|
(_a = event.origin) === null || _a === void 0 ? void 0 : _a.preventDefault();
|
|
13277
13277
|
}
|
|
13278
13278
|
}
|
|
13279
13279
|
if (options.dyRange) {
|
|
13280
|
-
var _e = __read$3(options.dyRange, 2),
|
|
13281
|
-
ny = clamp$1(ny,
|
|
13282
|
-
if (ny !==
|
|
13280
|
+
var _e = __read$3(options.dyRange, 2), min = _e[0], max = _e[1];
|
|
13281
|
+
ny = clamp$1(ny, min, max);
|
|
13282
|
+
if (ny !== min && ny !== max && min !== max) {
|
|
13283
13283
|
(_b = event.origin) === null || _b === void 0 ? void 0 : _b.preventDefault();
|
|
13284
13284
|
}
|
|
13285
13285
|
}
|
|
@@ -13393,11 +13393,11 @@ var SpriteMesh = /** @class */ (function () {
|
|
|
13393
13393
|
var item = items[i];
|
|
13394
13394
|
var texture = item === null || item === void 0 ? void 0 : item.renderer.texture;
|
|
13395
13395
|
var textureIndex = texture ? textures.indexOf(texture) : -1;
|
|
13396
|
-
var
|
|
13397
|
-
aPointLen +=
|
|
13398
|
-
indexLen +=
|
|
13399
|
-
datas.push(
|
|
13400
|
-
pointCount +=
|
|
13396
|
+
var data = this.getItemInitData(item, i, pointCount, textureIndex);
|
|
13397
|
+
aPointLen += data.aPoint.length;
|
|
13398
|
+
indexLen += data.index.length;
|
|
13399
|
+
datas.push(data);
|
|
13400
|
+
pointCount += data.aPoint.length / 6;
|
|
13401
13401
|
this.updateItem(item, true);
|
|
13402
13402
|
}
|
|
13403
13403
|
var bundle = {
|
|
@@ -13409,10 +13409,10 @@ var SpriteMesh = /** @class */ (function () {
|
|
|
13409
13409
|
index: 0,
|
|
13410
13410
|
};
|
|
13411
13411
|
var _loop_1 = function (i) {
|
|
13412
|
-
var
|
|
13412
|
+
var data = datas[i];
|
|
13413
13413
|
Object.keys(bundle).forEach(function (name) {
|
|
13414
13414
|
var arr = bundle[name];
|
|
13415
|
-
var ta =
|
|
13415
|
+
var ta = data[name];
|
|
13416
13416
|
arr.set(ta, cursor[name]);
|
|
13417
13417
|
cursor[name] += ta.length;
|
|
13418
13418
|
});
|
|
@@ -13679,14 +13679,14 @@ var SpriteMesh = /** @class */ (function () {
|
|
|
13679
13679
|
for (var y = 0; y < row; y++) {
|
|
13680
13680
|
var base = (y * 2 + x) * 4;
|
|
13681
13681
|
// @ts-expect-error
|
|
13682
|
-
var
|
|
13683
|
-
var texOffset =
|
|
13682
|
+
var split = textureSheetAnimation ? [0, 0, 1, 1, splits[0][4]] : splits[y * 2 + x];
|
|
13683
|
+
var texOffset = split[4] ? [0, 0, 1, 0, 0, 1, 1, 1] : [0, 1, 0, 0, 1, 1, 1, 0];
|
|
13684
13684
|
var dw = ((x + x + 1) / col - 1) / 2;
|
|
13685
13685
|
var dh = ((y + y + 1) / row - 1) / 2;
|
|
13686
|
-
var tox =
|
|
13687
|
-
var toy =
|
|
13688
|
-
var tsx =
|
|
13689
|
-
var tsy =
|
|
13686
|
+
var tox = split[0];
|
|
13687
|
+
var toy = split[1];
|
|
13688
|
+
var tsx = split[4] ? split[3] : split[2];
|
|
13689
|
+
var tsy = split[4] ? split[2] : split[3];
|
|
13690
13690
|
var origin_1 = [
|
|
13691
13691
|
originData[0] / col + dw,
|
|
13692
13692
|
originData[1] / row + dh,
|
|
@@ -13783,13 +13783,13 @@ function generateFeatureTexture(engine, feather) {
|
|
|
13783
13783
|
}
|
|
13784
13784
|
else {
|
|
13785
13785
|
var len = 128;
|
|
13786
|
-
var
|
|
13786
|
+
var data = new Uint8Array(len);
|
|
13787
13787
|
for (var i = 0, s = len - 1; i < len; i++) {
|
|
13788
13788
|
var p = i / s;
|
|
13789
13789
|
var val = feather.getValue(p);
|
|
13790
|
-
|
|
13790
|
+
data[i] = Math.round(val * 255);
|
|
13791
13791
|
}
|
|
13792
|
-
tex = Texture.createWithData(engine, { width: len, height: 1, data:
|
|
13792
|
+
tex = Texture.createWithData(engine, { width: len, height: 1, data: data }, {
|
|
13793
13793
|
name: 'feather',
|
|
13794
13794
|
format: glContext.LUMINANCE,
|
|
13795
13795
|
minFilter: glContext.LINEAR,
|
|
@@ -13947,22 +13947,22 @@ var SpriteGroup = /** @class */ (function () {
|
|
|
13947
13947
|
* 需要则添加到meshToModify数组
|
|
13948
13948
|
*/
|
|
13949
13949
|
for (var i = 0; i < splits.length; i++) {
|
|
13950
|
-
var
|
|
13950
|
+
var split = splits[i];
|
|
13951
13951
|
// @ts-expect-error
|
|
13952
|
-
var spriteMesh =
|
|
13953
|
-
if (
|
|
13952
|
+
var spriteMesh = split.spriteMesh;
|
|
13953
|
+
if (split.items.length === 0) {
|
|
13954
13954
|
throw new Error('split not combined');
|
|
13955
13955
|
}
|
|
13956
|
-
if (
|
|
13957
|
-
var priority =
|
|
13956
|
+
if (split.dirty) {
|
|
13957
|
+
var priority = split.indexStart;
|
|
13958
13958
|
if (spriteMesh.mesh.priority !== priority) {
|
|
13959
13959
|
spriteMesh.mesh.priority = priority;
|
|
13960
13960
|
meshToModify.push(spriteMesh.mesh);
|
|
13961
13961
|
}
|
|
13962
|
-
spriteMesh.setItems(
|
|
13962
|
+
spriteMesh.setItems(split.items.map(function (item) { return item.content; }));
|
|
13963
13963
|
}
|
|
13964
13964
|
spriteMesh.applyChange();
|
|
13965
|
-
|
|
13965
|
+
split.dirty = false;
|
|
13966
13966
|
}
|
|
13967
13967
|
/**
|
|
13968
13968
|
* 有需要移除的meshSplit 则废弃对应的mesh 保留material
|
|
@@ -13970,8 +13970,8 @@ var SpriteGroup = /** @class */ (function () {
|
|
|
13970
13970
|
*/
|
|
13971
13971
|
if (splitsToRemove.length) {
|
|
13972
13972
|
for (var i = 0; i < splitsToRemove.length; i++) {
|
|
13973
|
-
var
|
|
13974
|
-
var sp =
|
|
13973
|
+
var split = splitsToRemove[i];
|
|
13974
|
+
var sp = split.spriteMesh;
|
|
13975
13975
|
// @ts-expect-error
|
|
13976
13976
|
var mesh = sp.mesh;
|
|
13977
13977
|
mesh.dispose({ material: { textures: exports.DestroyOptions.keep } });
|
|
@@ -14088,7 +14088,7 @@ var SpriteGroup = /** @class */ (function () {
|
|
|
14088
14088
|
addItemWithOrder(items, item, itemSortProperty);
|
|
14089
14089
|
if (isSprite(item)) {
|
|
14090
14090
|
var content = item.createContent();
|
|
14091
|
-
var
|
|
14091
|
+
var split = {
|
|
14092
14092
|
indexStart: item.listIndex,
|
|
14093
14093
|
indexEnd: item.listIndex,
|
|
14094
14094
|
items: [item],
|
|
@@ -14096,21 +14096,21 @@ var SpriteGroup = /** @class */ (function () {
|
|
|
14096
14096
|
cacheId: content.renderInfo.cacheId,
|
|
14097
14097
|
textures: [item.content.renderer.texture],
|
|
14098
14098
|
};
|
|
14099
|
-
splits.unshift(
|
|
14100
|
-
return [
|
|
14099
|
+
splits.unshift(split);
|
|
14100
|
+
return [split];
|
|
14101
14101
|
}
|
|
14102
14102
|
return [];
|
|
14103
14103
|
}
|
|
14104
14104
|
var _loop_2 = function (i) {
|
|
14105
|
-
var
|
|
14105
|
+
var split = splits[i];
|
|
14106
14106
|
var listIndex = item.listIndex;
|
|
14107
14107
|
if (isSprite(item)) {
|
|
14108
14108
|
// @ts-expect-error
|
|
14109
|
-
if (listIndex <=
|
|
14109
|
+
if (listIndex <= split.indexEnd) {
|
|
14110
14110
|
addItemWithOrder(items, item, itemSortProperty);
|
|
14111
14111
|
var itemIndex_1 = items.indexOf(item);
|
|
14112
|
-
var indexStart = Math.min(itemIndex_1, items.indexOf(
|
|
14113
|
-
var indexEnd = Math.max(itemIndex_1, items.indexOf(
|
|
14112
|
+
var indexStart = Math.min(itemIndex_1, items.indexOf(split.items[0]));
|
|
14113
|
+
var indexEnd = Math.max(itemIndex_1, items.indexOf(split.items[split.items.length - 1]));
|
|
14114
14114
|
var neoSplits_1 = this_2.getMeshSplits(items, indexStart, indexEnd);
|
|
14115
14115
|
var neoSplitIndex_1 = neoSplits_1.findIndex(function (split) { return split.items.includes(item); });
|
|
14116
14116
|
if (neoSplits_1.length === 2) {
|
|
@@ -14118,14 +14118,14 @@ var SpriteGroup = /** @class */ (function () {
|
|
|
14118
14118
|
//1 or 0
|
|
14119
14119
|
Object.keys(neoSplits_1[1 - neoSplitIndex_1]).forEach(function (key) {
|
|
14120
14120
|
// @ts-expect-error
|
|
14121
|
-
|
|
14121
|
+
split[key] = neoSplits_1[1 - neoSplitIndex_1][key];
|
|
14122
14122
|
});
|
|
14123
14123
|
return { value: [neoSplits_1[neoSplitIndex_1]] };
|
|
14124
14124
|
}
|
|
14125
14125
|
else if (neoSplits_1.length === 3) {
|
|
14126
14126
|
Object.keys(neoSplits_1[0]).forEach(function (key) {
|
|
14127
14127
|
// @ts-expect-error
|
|
14128
|
-
|
|
14128
|
+
split[key] = neoSplits_1[0][key];
|
|
14129
14129
|
});
|
|
14130
14130
|
splits.splice(i + 1, 0, neoSplits_1[1], neoSplits_1[2]);
|
|
14131
14131
|
if (neoSplitIndex_1 !== 1) {
|
|
@@ -14139,25 +14139,25 @@ var SpriteGroup = /** @class */ (function () {
|
|
|
14139
14139
|
//todo add case
|
|
14140
14140
|
Object.keys(neoSplits_1[0]).forEach(function (key) {
|
|
14141
14141
|
// @ts-expect-error
|
|
14142
|
-
|
|
14142
|
+
split[key] = neoSplits_1[0][key];
|
|
14143
14143
|
});
|
|
14144
14144
|
return { value: [] };
|
|
14145
14145
|
}
|
|
14146
14146
|
}
|
|
14147
14147
|
else {
|
|
14148
|
-
if (listIndex <
|
|
14148
|
+
if (listIndex < split.indexStart || listIndex === split.indexEnd) {
|
|
14149
14149
|
addItemWithOrder(items, item, itemSortProperty);
|
|
14150
14150
|
return { value: [] };
|
|
14151
14151
|
// @ts-expect-error
|
|
14152
14152
|
}
|
|
14153
|
-
else if (listIndex <
|
|
14153
|
+
else if (listIndex < split.indexEnd) {
|
|
14154
14154
|
addItemWithOrder(items, item, itemSortProperty);
|
|
14155
|
-
var lastItem =
|
|
14155
|
+
var lastItem = split.items[split.items.length - 1];
|
|
14156
14156
|
var endIndex = items.indexOf(lastItem);
|
|
14157
|
-
var neoSplits_2 = this_2.getMeshSplits(items, items.indexOf(
|
|
14157
|
+
var neoSplits_2 = this_2.getMeshSplits(items, items.indexOf(split.items[0]), endIndex);
|
|
14158
14158
|
Object.keys(neoSplits_2[0]).forEach(function (key) {
|
|
14159
14159
|
// @ts-expect-error
|
|
14160
|
-
|
|
14160
|
+
split[key] = neoSplits_2[0][key];
|
|
14161
14161
|
});
|
|
14162
14162
|
if (neoSplits_2.length === 2) {
|
|
14163
14163
|
splits.splice(i + 1, 0, neoSplits_2[1]);
|
|
@@ -14218,10 +14218,10 @@ var SpriteGroup = /** @class */ (function () {
|
|
|
14218
14218
|
* 遍历this.meshSplits,找到元素的listIndex在split的indexStart和indexEnd范围内的第一个meshSplit
|
|
14219
14219
|
*/
|
|
14220
14220
|
for (var i = 0; i < splits.length; i++) {
|
|
14221
|
-
var
|
|
14221
|
+
var split = splits[i];
|
|
14222
14222
|
// @ts-expect-error
|
|
14223
|
-
if (
|
|
14224
|
-
targetSplit =
|
|
14223
|
+
if (split.indexStart <= item.listIndex && split.indexEnd >= item.listIndex) {
|
|
14224
|
+
targetSplit = split;
|
|
14225
14225
|
targetSplitIndex = i;
|
|
14226
14226
|
break;
|
|
14227
14227
|
}
|
|
@@ -14331,8 +14331,8 @@ var SpriteGroup = /** @class */ (function () {
|
|
|
14331
14331
|
// FIXME: 可选性
|
|
14332
14332
|
var targetSplitIndex = void 0;
|
|
14333
14333
|
for (var i = 0; i < splits.length; i++) {
|
|
14334
|
-
var
|
|
14335
|
-
if (
|
|
14334
|
+
var split = splits[i];
|
|
14335
|
+
if (split.items.includes(item)) {
|
|
14336
14336
|
targetSplitIndex = i;
|
|
14337
14337
|
break;
|
|
14338
14338
|
}
|
|
@@ -15483,10 +15483,10 @@ var ParticleMesh = /** @class */ (function () {
|
|
|
15483
15483
|
var index = geometry.getIndexData();
|
|
15484
15484
|
for (var i = 0; i < names.length; i++) {
|
|
15485
15485
|
var name_1 = names[i];
|
|
15486
|
-
var
|
|
15487
|
-
if (
|
|
15486
|
+
var data = geometry.getAttributeData(name_1);
|
|
15487
|
+
if (data) {
|
|
15488
15488
|
// @ts-expect-error
|
|
15489
|
-
geometry.setAttributeData(name_1, new
|
|
15489
|
+
geometry.setAttributeData(name_1, new data.constructor(0));
|
|
15490
15490
|
}
|
|
15491
15491
|
}
|
|
15492
15492
|
// @ts-expect-error
|
|
@@ -16861,10 +16861,10 @@ function getGeometryTriangles(geometry, options) {
|
|
|
16861
16861
|
var segment = segments[i];
|
|
16862
16862
|
var p0 = points[i];
|
|
16863
16863
|
var p1 = points[i + 1] || points[0];
|
|
16864
|
-
var
|
|
16864
|
+
var keys = segment;
|
|
16865
16865
|
var point = [0, 0];
|
|
16866
|
-
for (var j = 0; j <
|
|
16867
|
-
var key =
|
|
16866
|
+
for (var j = 0; j < keys.length - 1; j++) {
|
|
16867
|
+
var key = keys[j];
|
|
16868
16868
|
getBezier2DValue(point, key, p0, p1, p0[4], p0[5], p1[2], p1[3]);
|
|
16869
16869
|
setPoint(point[0], point[1]);
|
|
16870
16870
|
}
|
|
@@ -16923,11 +16923,11 @@ function getGeometryByShape(shape, uvTransform) {
|
|
|
16923
16923
|
var index = 0;
|
|
16924
16924
|
for (var i = 0; i < geometries.length; i++) {
|
|
16925
16925
|
var geometry = geometries[i];
|
|
16926
|
-
var
|
|
16927
|
-
indexBase +=
|
|
16928
|
-
datas.push(
|
|
16929
|
-
aPoint +=
|
|
16930
|
-
index +=
|
|
16926
|
+
var data = getGeometryTriangles(geometry, { indexBase: indexBase, uvTransform: uvTransform });
|
|
16927
|
+
indexBase += data.aPoint.length / 5;
|
|
16928
|
+
datas.push(data);
|
|
16929
|
+
aPoint += data.aPoint.length;
|
|
16930
|
+
index += data.index.length;
|
|
16931
16931
|
}
|
|
16932
16932
|
if (datas.length === 1) {
|
|
16933
16933
|
return datas[0];
|
|
@@ -16936,11 +16936,11 @@ function getGeometryByShape(shape, uvTransform) {
|
|
|
16936
16936
|
var indexData = new Uint16Array(index);
|
|
16937
16937
|
// @ts-expect-error
|
|
16938
16938
|
for (var i = 0, pointIndex = 0, idx = 0; i < datas[i]; i++) {
|
|
16939
|
-
var
|
|
16940
|
-
aPointData.set(
|
|
16941
|
-
pointIndex +=
|
|
16942
|
-
indexData.set(
|
|
16943
|
-
idx +=
|
|
16939
|
+
var data = datas[i];
|
|
16940
|
+
aPointData.set(data.aPoint, pointIndex);
|
|
16941
|
+
pointIndex += data.aPoint.length;
|
|
16942
|
+
indexData.set(data.index, idx);
|
|
16943
|
+
idx += data.index.length;
|
|
16944
16944
|
}
|
|
16945
16945
|
return {
|
|
16946
16946
|
aPoint: aPointData,
|
|
@@ -17251,10 +17251,10 @@ var TrailMesh = /** @class */ (function () {
|
|
|
17251
17251
|
var pointCountPerTrail = this.pointCountPerTrail;
|
|
17252
17252
|
if (index >= 0 && index < pointCountPerTrail) {
|
|
17253
17253
|
var startIndex = (trail * pointCountPerTrail + index) * 24 + 8;
|
|
17254
|
-
var
|
|
17255
|
-
out.x =
|
|
17256
|
-
out.y =
|
|
17257
|
-
out.z =
|
|
17254
|
+
var data = this.geometry.getAttributeData('aColor');
|
|
17255
|
+
out.x = data[startIndex];
|
|
17256
|
+
out.y = data[1 + startIndex];
|
|
17257
|
+
out.z = data[2 + startIndex];
|
|
17258
17258
|
return out;
|
|
17259
17259
|
}
|
|
17260
17260
|
};
|
|
@@ -18660,14 +18660,14 @@ var TextMesh = /** @class */ (function (_super) {
|
|
|
18660
18660
|
for (var y_1 = 0; y_1 < row; y_1++) {
|
|
18661
18661
|
var base = (y_1 * 2 + x_1) * 4;
|
|
18662
18662
|
// @ts-expect-error
|
|
18663
|
-
var
|
|
18664
|
-
var texOffset =
|
|
18663
|
+
var split = textureSheetAnimation ? [0, 0, 1, 1, splits[0][4]] : splits[y_1 * 2 + x_1];
|
|
18664
|
+
var texOffset = split[4] ? [0, 0, 1, 0, 0, 1, 1, 1] : [0, 1, 0, 0, 1, 1, 1, 0];
|
|
18665
18665
|
var dw = ((x_1 + x_1 + 1) / col - 1) / 2;
|
|
18666
18666
|
var dh = ((y_1 + y_1 + 1) / row - 1) / 2;
|
|
18667
|
-
var tox =
|
|
18668
|
-
var toy =
|
|
18669
|
-
var tsx =
|
|
18670
|
-
var tsy =
|
|
18667
|
+
var tox = split[0];
|
|
18668
|
+
var toy = split[1];
|
|
18669
|
+
var tsx = split[4] ? split[3] : split[2];
|
|
18670
|
+
var tsy = split[4] ? split[2] : split[3];
|
|
18671
18671
|
var origin_1 = [
|
|
18672
18672
|
originData[0] / col + dw,
|
|
18673
18673
|
originData[1] / row + dh,
|
|
@@ -23347,13 +23347,13 @@ var CompositionSourceManager = /** @class */ (function () {
|
|
|
23347
23347
|
if (renderContent.renderer) {
|
|
23348
23348
|
renderContent.renderer = _this.changeTex(renderContent.renderer);
|
|
23349
23349
|
_this.processMask(renderContent.renderer);
|
|
23350
|
-
var
|
|
23350
|
+
var split = renderContent.splits && !renderContent.textureSheetAnimation && renderContent.splits[0];
|
|
23351
23351
|
if (Number.isInteger(renderContent.renderer.shape)) {
|
|
23352
23352
|
// TODO: scene.shapes 类型问题?
|
|
23353
|
-
renderContent.renderer.shape = getGeometryByShape((_a = _this.jsonScene) === null || _a === void 0 ? void 0 : _a.shapes[renderContent.renderer.shape],
|
|
23353
|
+
renderContent.renderer.shape = getGeometryByShape((_a = _this.jsonScene) === null || _a === void 0 ? void 0 : _a.shapes[renderContent.renderer.shape], split);
|
|
23354
23354
|
}
|
|
23355
23355
|
else if (renderContent.renderer.shape && isObject(renderContent.renderer.shape)) {
|
|
23356
|
-
renderContent.renderer.shape = getGeometryByShape(renderContent.renderer.shape,
|
|
23356
|
+
renderContent.renderer.shape = getGeometryByShape(renderContent.renderer.shape, split);
|
|
23357
23357
|
}
|
|
23358
23358
|
}
|
|
23359
23359
|
else {
|
|
@@ -23365,14 +23365,14 @@ var CompositionSourceManager = /** @class */ (function () {
|
|
|
23365
23365
|
if (renderContent.filter) {
|
|
23366
23366
|
renderContent.filter = __assign$1({}, renderContent.filter);
|
|
23367
23367
|
}
|
|
23368
|
-
var name_1 = item.name, _b = item.delay, delay = _b === void 0 ? 0 : _b,
|
|
23368
|
+
var name_1 = item.name, _b = item.delay, delay = _b === void 0 ? 0 : _b, id = item.id, parentId = item.parentId, duration = item.duration, endBehavior = item.endBehavior, pluginName = item.pluginName, pn = item.pn, transform = item.transform;
|
|
23369
23369
|
// FIXME: specification 下定义的 Item 不存在 refCount 类型定义
|
|
23370
23370
|
// @ts-expect-error
|
|
23371
23371
|
var refCount = item.refCount;
|
|
23372
23372
|
var _c = _this.jsonScene.plugins, plugins = _c === void 0 ? [] : _c;
|
|
23373
23373
|
option.name = name_1;
|
|
23374
23374
|
option.delay = delay;
|
|
23375
|
-
option.id =
|
|
23375
|
+
option.id = id;
|
|
23376
23376
|
if (parentId) {
|
|
23377
23377
|
option.parentId = parentId;
|
|
23378
23378
|
}
|
|
@@ -23834,8 +23834,8 @@ var AssetManager = /** @class */ (function () {
|
|
|
23834
23834
|
return [2 /*return*/, resultImage];
|
|
23835
23835
|
case 3:
|
|
23836
23836
|
// 如果是加载图片且是数组,设置变量,视频情况下不需要
|
|
23837
|
-
if (background &&
|
|
23838
|
-
variables[background.name] =
|
|
23837
|
+
if (background && Array.isArray(url_1) && variables) {
|
|
23838
|
+
variables[background.name] = resultImage.src;
|
|
23839
23839
|
}
|
|
23840
23840
|
return [4 /*yield*/, combineImageTemplate(resultImage, template, variables, this.options, img.oriY === -1)];
|
|
23841
23841
|
case 4: return [2 /*return*/, _b.sent()];
|
|
@@ -23983,14 +23983,14 @@ var AssetManager = /** @class */ (function () {
|
|
|
23983
23983
|
}());
|
|
23984
23984
|
function fixOldImageUsage(usedImages, compositions, imgUsage, images, renderLevel) {
|
|
23985
23985
|
for (var i = 0; i < compositions.length; i++) {
|
|
23986
|
-
var
|
|
23987
|
-
var ids = imgUsage[
|
|
23986
|
+
var id = compositions[i].id;
|
|
23987
|
+
var ids = imgUsage[id];
|
|
23988
23988
|
if (ids) {
|
|
23989
23989
|
for (var j = 0; j < ids.length; j++) {
|
|
23990
|
-
var
|
|
23991
|
-
var tag = images[
|
|
23990
|
+
var id_1 = ids[j];
|
|
23991
|
+
var tag = images[id_1].renderLevel;
|
|
23992
23992
|
if (passRenderLevel(tag, renderLevel)) {
|
|
23993
|
-
usedImages[
|
|
23993
|
+
usedImages[id_1] = true;
|
|
23994
23994
|
}
|
|
23995
23995
|
}
|
|
23996
23996
|
}
|
|
@@ -24096,18 +24096,14 @@ var CompVFXItem = /** @class */ (function (_super) {
|
|
|
24096
24096
|
// 设置预合成作为元素时的时长、结束行为和渲染延时
|
|
24097
24097
|
if (exports.Item.isComposition(itemProps)) {
|
|
24098
24098
|
var refId = itemProps.content.options.refId;
|
|
24099
|
-
|
|
24100
|
-
if (!props) {
|
|
24101
|
-
throw new Error("\u5F15\u7528\u7684Id: ".concat(refId, " \u7684\u9884\u5408\u6210\u4E0D\u5B58\u5728"));
|
|
24102
|
-
}
|
|
24103
|
-
props.content = itemProps.content;
|
|
24104
|
-
item = new CompVFXItem(__assign$1(__assign$1({}, props), { refId: refId, delay: itemProps.delay, id: itemProps.id, name: itemProps.name, duration: itemProps.duration, endBehavior: itemProps.endBehavior, parentId: itemProps.parentId, transform: itemProps.transform }), this.composition);
|
|
24099
|
+
item = new CompVFXItem(__assign$1({ refId: refId }, itemProps), this.composition);
|
|
24105
24100
|
item.contentProps = itemProps.content;
|
|
24106
24101
|
item.transform.parentTransform = this.transform;
|
|
24107
24102
|
this.composition.refContent.push(item);
|
|
24108
24103
|
if (item.endBehavior === END_BEHAVIOR_RESTART$1) {
|
|
24109
24104
|
this.composition.autoRefTex = false;
|
|
24110
24105
|
}
|
|
24106
|
+
item.createContent();
|
|
24111
24107
|
}
|
|
24112
24108
|
else {
|
|
24113
24109
|
item = createVFXItem(this.itemProps[i], this.composition);
|
|
@@ -24239,6 +24235,17 @@ var CompVFXItem = /** @class */ (function (_super) {
|
|
|
24239
24235
|
CompVFXItem.prototype.handleVisibleChanged = function (visible) {
|
|
24240
24236
|
this.items.forEach(function (item) { return item.setVisible(visible); });
|
|
24241
24237
|
};
|
|
24238
|
+
CompVFXItem.prototype.setScale = function (x, y, z) {
|
|
24239
|
+
if (this.content) {
|
|
24240
|
+
this.content.startSize = new Vector3(x, y, z);
|
|
24241
|
+
}
|
|
24242
|
+
};
|
|
24243
|
+
CompVFXItem.prototype.scale = function (x, y, z) {
|
|
24244
|
+
if (this.content) {
|
|
24245
|
+
var startSize = this.content.startSize.clone();
|
|
24246
|
+
this.content.startSize = new Vector3(x * startSize.x, y * startSize.y, z * startSize.z);
|
|
24247
|
+
}
|
|
24248
|
+
};
|
|
24242
24249
|
CompVFXItem.prototype.getUpdateTime = function (t) {
|
|
24243
24250
|
var startTime = this.startTimeInms;
|
|
24244
24251
|
var now = this.timeInms;
|