@galacean/effects-threejs 2.3.0-beta.3 → 2.3.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/index.mjs CHANGED
@@ -3,7 +3,7 @@
3
3
  * Description: Galacean Effects runtime threejs plugin for the web
4
4
  * Author: Ant Group CO., Ltd.
5
5
  * Contributors: 燃然,飂兮,十弦,云垣,茂安,意绮
6
- * Version: v2.3.0-beta.3
6
+ * Version: v2.3.1
7
7
  */
8
8
 
9
9
  import * as THREE from 'three';
@@ -928,10 +928,10 @@ var PluginSystem = /*#__PURE__*/ function() {
928
928
  });
929
929
  })();
930
930
  };
931
- _proto.precompile = function precompile(compositions, renderer, options) {
931
+ _proto.precompile = function precompile(compositions, renderer) {
932
932
  for(var _iterator = _create_for_of_iterator_helper_loose(this.plugins), _step; !(_step = _iterator()).done;){
933
933
  var plugin = _step.value;
934
- plugin.precompile(compositions, renderer, options);
934
+ plugin.precompile(compositions, renderer);
935
935
  }
936
936
  };
937
937
  _proto.loadResources = function loadResources(scene, options) {
@@ -1006,7 +1006,7 @@ function getPluginUsageInfo(name) {
1006
1006
  * 在加载到 JSON 后,就可以进行提前编译
1007
1007
  * @param json
1008
1008
  * @param player
1009
- */ _proto.precompile = function precompile(compositions, renderer, options) {};
1009
+ */ _proto.precompile = function precompile(compositions, renderer) {};
1010
1010
  _proto.onCompositionConstructed = function onCompositionConstructed(composition, scene) {};
1011
1011
  _proto.onCompositionItemLifeBegin = function onCompositionItemLifeBegin(composition, item) {};
1012
1012
  _proto.onCompositionItemLifeEnd = function onCompositionItemLifeEnd(composition, item) {};
@@ -16325,7 +16325,6 @@ var ShapeComponent = /*#__PURE__*/ function(MeshComponent) {
16325
16325
  _this.hasFill = false;
16326
16326
  _this.shapeDirty = true;
16327
16327
  _this.graphicsPath = new GraphicsPath();
16328
- _this.curveValues = [];
16329
16328
  _this.vert = "\nprecision highp float;\n\nattribute vec3 aPos;//x y\n\nuniform mat4 effects_MatrixVP;\nuniform mat4 effects_MatrixInvV;\nuniform mat4 effects_ObjectToWorld;\n\nvoid main() {\n vec4 pos = vec4(aPos.xyz, 1.0);\n gl_Position = effects_MatrixVP * effects_ObjectToWorld * pos;\n}\n";
16330
16329
  _this.frag = "\nprecision highp float;\n\nuniform vec4 _Color;\n\nvoid main() {\n vec4 color = _Color;\n color.rgb *= color.a;\n gl_FragColor = color;\n}\n";
16331
16330
  if (!_this.geometry) {
@@ -16507,31 +16506,25 @@ var ShapeComponent = /*#__PURE__*/ function(MeshComponent) {
16507
16506
  var easingOuts = customShapeAtribute.easingOuts;
16508
16507
  for(var _iterator = _create_for_of_iterator_helper_loose(customShapeAtribute.shapes), _step; !(_step = _iterator()).done;){
16509
16508
  var shape = _step.value;
16510
- this.curveValues = [];
16511
16509
  var indices = shape.indexes;
16510
+ var startPoint = points[indices[0].point];
16511
+ this.graphicsPath.moveTo(startPoint.x, startPoint.y);
16512
16512
  for(var i = 1; i < indices.length; i++){
16513
16513
  var pointIndex = indices[i];
16514
16514
  var lastPointIndex = indices[i - 1];
16515
- this.curveValues.push({
16516
- point: points[pointIndex.point],
16517
- controlPoint1: easingOuts[lastPointIndex.easingOut],
16518
- controlPoint2: easingIns[pointIndex.easingIn]
16519
- });
16520
- }
16521
- // Push the last curve
16522
- this.curveValues.push({
16523
- point: points[indices[0].point],
16524
- controlPoint1: easingOuts[indices[indices.length - 1].easingOut],
16525
- controlPoint2: easingIns[indices[0].easingIn]
16526
- });
16527
- this.graphicsPath.moveTo(this.curveValues[this.curveValues.length - 1].point.x, this.curveValues[this.curveValues.length - 1].point.y);
16528
- for(var _iterator1 = _create_for_of_iterator_helper_loose(this.curveValues), _step1; !(_step1 = _iterator1()).done;){
16529
- var curveValue = _step1.value;
16530
- var point = curveValue.point;
16531
- var control1 = curveValue.controlPoint1;
16532
- var control2 = curveValue.controlPoint2;
16533
- this.graphicsPath.bezierCurveTo(control1.x, control1.y, control2.x, control2.y, point.x, point.y, 1);
16515
+ var point = points[pointIndex.point];
16516
+ var lastPoint = points[lastPointIndex.point];
16517
+ var control1 = easingOuts[lastPointIndex.easingOut];
16518
+ var control2 = easingIns[pointIndex.easingIn];
16519
+ this.graphicsPath.bezierCurveTo(control1.x + lastPoint.x, control1.y + lastPoint.y, control2.x + point.x, control2.y + point.y, point.x, point.y, 1);
16534
16520
  }
16521
+ var pointIndex1 = indices[0];
16522
+ var lastPointIndex1 = indices[indices.length - 1];
16523
+ var point1 = points[pointIndex1.point];
16524
+ var lastPoint1 = points[lastPointIndex1.point];
16525
+ var control11 = easingOuts[lastPointIndex1.easingOut];
16526
+ var control21 = easingIns[pointIndex1.easingIn];
16527
+ this.graphicsPath.bezierCurveTo(control11.x + lastPoint1.x, control11.y + lastPoint1.y, control21.x + point1.x, control21.y + point1.y, point1.x, point1.y, 1);
16535
16528
  if (shape.close) {
16536
16529
  this.graphicsPath.closePath();
16537
16530
  }
@@ -26652,14 +26645,36 @@ function getStandardInteractContent(ui) {
26652
26645
  // @ts-expect-error
26653
26646
  customShapeComponent.fill = customShapeComponent.shapes[0].fill;
26654
26647
  }
26648
+ // easingIn 和 easingOut 绝对坐标转相对坐标
26649
+ var easingInFlag = new Array(customShapeComponent.easingIns.length);
26650
+ var easingOutFlag = new Array(customShapeComponent.easingOuts.length).fill(false);
26651
+ for(var _iterator1 = _create_for_of_iterator_helper_loose(customShapeComponent.shapes), _step1; !(_step1 = _iterator1()).done;){
26652
+ var shape = _step1.value;
26653
+ for(var _iterator2 = _create_for_of_iterator_helper_loose(shape.indexes), _step2; !(_step2 = _iterator2()).done;){
26654
+ var index = _step2.value;
26655
+ var point = customShapeComponent.points[index.point];
26656
+ var easingIn = customShapeComponent.easingIns[index.easingIn];
26657
+ var easingOut = customShapeComponent.easingOuts[index.easingOut];
26658
+ if (!easingInFlag[index.easingIn]) {
26659
+ easingIn.x -= point.x;
26660
+ easingIn.y -= point.y;
26661
+ easingInFlag[index.easingIn] = true;
26662
+ }
26663
+ if (!easingOutFlag[index.easingOut]) {
26664
+ easingOut.x -= point.x;
26665
+ easingOut.y -= point.y;
26666
+ easingOutFlag[index.easingOut] = true;
26667
+ }
26668
+ }
26669
+ }
26655
26670
  }
26656
26671
  }
26657
26672
  }
26658
26673
  // Composition id 转 guid
26659
26674
  var compositionId = json.compositionId;
26660
26675
  var compositionIdToGUIDMap = {};
26661
- for(var _iterator1 = _create_for_of_iterator_helper_loose(json.compositions), _step1; !(_step1 = _iterator1()).done;){
26662
- var composition = _step1.value;
26676
+ for(var _iterator3 = _create_for_of_iterator_helper_loose(json.compositions), _step3; !(_step3 = _iterator3()).done;){
26677
+ var composition = _step3.value;
26663
26678
  var guid = generateGUID();
26664
26679
  compositionIdToGUIDMap[composition.id] = guid;
26665
26680
  if (composition.id === compositionId) {
@@ -26668,8 +26683,8 @@ function getStandardInteractContent(ui) {
26668
26683
  composition.id = guid;
26669
26684
  }
26670
26685
  // 预合成元素 refId 同步改为生成的合成 guid
26671
- for(var _iterator2 = _create_for_of_iterator_helper_loose(json.items), _step2; !(_step2 = _iterator2()).done;){
26672
- var item = _step2.value;
26686
+ for(var _iterator4 = _create_for_of_iterator_helper_loose(json.items), _step4; !(_step4 = _iterator4()).done;){
26687
+ var item = _step4.value;
26673
26688
  if (item.content) {
26674
26689
  var compositionOptions = item.content.options;
26675
26690
  if (compositionOptions && compositionOptions.refId !== undefined) {
@@ -27523,8 +27538,10 @@ function getStandardJSON(json) {
27523
27538
  json = version30Migration(version21Migration(json));
27524
27539
  }
27525
27540
  // 3.x 版本格式转换
27526
- if (mainVersion < 4 || mainVersion === 4 && minorVersion < 2) {
27527
- json = version31Migration(json);
27541
+ if (mainVersion < 4) {
27542
+ if (mainVersion === 3 && minorVersion < 2) {
27543
+ json = version31Migration(json);
27544
+ }
27528
27545
  }
27529
27546
  return json;
27530
27547
  }
@@ -32077,7 +32094,7 @@ registerPlugin("sprite", SpriteLoader, VFXItem);
32077
32094
  registerPlugin("particle", ParticleLoader, VFXItem);
32078
32095
  registerPlugin("cal", CalculateLoader, VFXItem);
32079
32096
  registerPlugin("interact", InteractLoader, VFXItem);
32080
- var version$1 = "2.3.0-beta.3";
32097
+ var version$1 = "2.3.1";
32081
32098
  logger.info("Core version: " + version$1 + ".");
32082
32099
 
32083
32100
  var _obj;
@@ -33337,6 +33354,7 @@ var ThreeRenderer = /*#__PURE__*/ function(Renderer) {
33337
33354
  _this.baseCompositionIndex = 0;
33338
33355
  var width = options.width, height = options.height, camera = options.camera;
33339
33356
  _this.renderer = new ThreeRenderer(context);
33357
+ _this.assetService = new AssetService(_this.renderer.engine);
33340
33358
  _this.width = width;
33341
33359
  _this.height = height;
33342
33360
  _this.camera = camera;
@@ -33346,63 +33364,109 @@ var ThreeRenderer = /*#__PURE__*/ function(Renderer) {
33346
33364
  _proto.loadScene = function loadScene(scene, options) {
33347
33365
  var _this = this;
33348
33366
  return _async_to_generator(function() {
33349
- var composition, baseOrder;
33367
+ var last, scenes, compositions, _options_autoplay, autoplay, baseOrder, _scenes, i, compositionNames, firstFrameTime, _iterator, _step, composition;
33350
33368
  return __generator(this, function(_state) {
33351
33369
  switch(_state.label){
33352
33370
  case 0:
33371
+ assertExist(_this.renderer, "Renderer is not exist, maybe the Player has been disabled or in gl 'debug-disable' mode.");
33372
+ last = performance.now();
33373
+ scenes = [];
33374
+ compositions = [];
33375
+ autoplay = (_options_autoplay = options == null ? void 0 : options.autoplay) != null ? _options_autoplay : true;
33353
33376
  baseOrder = _this.baseCompositionIndex;
33354
- if (!isArray(scene)) return [
33355
- 3,
33356
- 2
33357
- ];
33358
- _this.baseCompositionIndex += scene.length;
33377
+ if (isArray(scene)) {
33378
+ (_scenes = scenes).push.apply(_scenes, [].concat(scene));
33379
+ } else {
33380
+ scenes.push(scene);
33381
+ }
33359
33382
  return [
33360
33383
  4,
33361
- Promise.all(scene.map(/*#__PURE__*/ _async_to_generator(function(scn, index) {
33362
- var res;
33384
+ Promise.all(scenes.map(/*#__PURE__*/ _async_to_generator(function(url, index) {
33385
+ var _this_assetService_assembleSceneLoadOptions, source, opts, assetManager, _$scene, composition;
33363
33386
  return __generator(this, function(_state) {
33364
33387
  switch(_state.label){
33365
33388
  case 0:
33389
+ _this_assetService_assembleSceneLoadOptions = _this.assetService.assembleSceneLoadOptions(url, _extends({
33390
+ autoplay: autoplay
33391
+ }, options)), source = _this_assetService_assembleSceneLoadOptions.source, opts = _this_assetService_assembleSceneLoadOptions.options;
33392
+ assetManager = new AssetManager(opts);
33366
33393
  return [
33367
33394
  4,
33368
- _this.createComposition(scn, options)
33395
+ assetManager.loadScene(source, _this.renderer, {
33396
+ env: _this.env
33397
+ })
33369
33398
  ];
33370
33399
  case 1:
33371
- res = _state.sent();
33372
- res.setIndex(baseOrder + index);
33400
+ _$scene = _state.sent();
33401
+ _this.assetService.prepareAssets(_$scene, assetManager.getAssets());
33402
+ _this.assetService.updateTextVariables(_$scene, assetManager.options.variables);
33403
+ _this.assetService.initializeTexture(_$scene);
33404
+ _$scene.pluginSystem.precompile(_$scene.jsonScene.compositions, _this.renderer);
33405
+ composition = _this.createComposition(_$scene, opts);
33406
+ _this.baseCompositionIndex += 1;
33407
+ composition.setIndex(baseOrder + index);
33408
+ compositions[index] = composition;
33373
33409
  return [
33374
- 2,
33375
- res
33410
+ 2
33376
33411
  ];
33377
33412
  }
33378
33413
  });
33379
33414
  })))
33380
33415
  ];
33381
33416
  case 1:
33382
- composition = _state.sent();
33383
- return [
33384
- 3,
33385
- 4
33386
- ];
33387
- case 2:
33388
- _this.baseCompositionIndex += 1;
33389
- return [
33390
- 4,
33391
- _this.createComposition(scene, options)
33392
- ];
33393
- case 3:
33394
- composition = _state.sent();
33395
- composition.setIndex(baseOrder);
33396
- _state.label = 4;
33397
- case 4:
33417
+ _state.sent();
33418
+ for(i = 0; i < compositions.length; i++){
33419
+ if (autoplay) {
33420
+ compositions[i].play();
33421
+ } else {
33422
+ compositions[i].pause();
33423
+ }
33424
+ }
33425
+ compositionNames = compositions.map(function(composition) {
33426
+ return composition.name;
33427
+ });
33428
+ firstFrameTime = performance.now() - last;
33429
+ for(_iterator = _create_for_of_iterator_helper_loose(compositions); !(_step = _iterator()).done;){
33430
+ composition = _step.value;
33431
+ composition.statistic.firstFrameTime = firstFrameTime;
33432
+ }
33433
+ logger.info("First frame [" + compositionNames + "]: " + firstFrameTime.toFixed(4) + "ms.");
33398
33434
  return [
33399
33435
  2,
33400
- composition
33436
+ isArray(scene) ? compositions : compositions[0]
33401
33437
  ];
33402
33438
  }
33403
33439
  });
33404
33440
  })();
33405
33441
  };
33442
+ _proto.createComposition = function createComposition(scene, options) {
33443
+ var _this = this;
33444
+ if (options === void 0) options = {};
33445
+ var composition = new ThreeComposition(_extends({}, options, {
33446
+ width: this.width,
33447
+ height: this.height,
33448
+ renderer: this.renderer,
33449
+ handleItemMessage: function(message) {
33450
+ _this.dispatchEvent({
33451
+ type: "message",
33452
+ message: message
33453
+ });
33454
+ }
33455
+ }), scene);
33456
+ composition.on("end", function() {
33457
+ _this.dispatchEvent({
33458
+ type: "end",
33459
+ composition: composition
33460
+ });
33461
+ });
33462
+ this.renderer.engine.setOptions({
33463
+ threeCamera: this.camera,
33464
+ threeGroup: this,
33465
+ composition: composition
33466
+ });
33467
+ this.compositions.push(composition);
33468
+ return composition;
33469
+ };
33406
33470
  _proto.pause = function pause() {
33407
33471
  this.dispatchEvent({
33408
33472
  type: "pause"
@@ -33416,99 +33480,6 @@ var ThreeRenderer = /*#__PURE__*/ function(Renderer) {
33416
33480
  composition.resume();
33417
33481
  });
33418
33482
  };
33419
- _proto.createComposition = function createComposition(url, options) {
33420
- if (options === void 0) options = {};
33421
- var _this = this;
33422
- return _async_to_generator(function() {
33423
- var last, opts, source, scene, engine, i, composition, firstFrameTime;
33424
- return __generator(this, function(_state) {
33425
- switch(_state.label){
33426
- case 0:
33427
- last = performance.now();
33428
- opts = _extends({
33429
- autoplay: true
33430
- }, options);
33431
- source = url;
33432
- if (Scene.isURL(url)) {
33433
- if (!Scene.isJSONObject(url)) {
33434
- source = url.url;
33435
- }
33436
- if (Scene.isWithOptions(url)) {
33437
- opts = _extends({}, opts, url.options || {});
33438
- }
33439
- }
33440
- if (_this.assetManager) {
33441
- _this.assetManager.updateOptions(opts);
33442
- } else {
33443
- _this.assetManager = new AssetManager(opts);
33444
- }
33445
- return [
33446
- 4,
33447
- _this.assetManager.loadScene(source, _this.renderer, {
33448
- env: _this.env
33449
- })
33450
- ];
33451
- case 1:
33452
- scene = _state.sent();
33453
- engine = _this.renderer.engine;
33454
- // TODO 多 json 之间目前不共用资源,如果后续需要多 json 共用,这边缓存机制需要额外处理
33455
- engine.clearResources();
33456
- engine.addPackageDatas(scene);
33457
- for(i = 0; i < scene.textureOptions.length; i++){
33458
- scene.textureOptions[i] = engine.assetLoader.loadGUID(scene.textureOptions[i].id);
33459
- scene.textureOptions[i].initialize();
33460
- }
33461
- if (!engine.database) return [
33462
- 3,
33463
- 3
33464
- ];
33465
- return [
33466
- 4,
33467
- engine.createVFXItems(scene)
33468
- ];
33469
- case 2:
33470
- _state.sent();
33471
- _state.label = 3;
33472
- case 3:
33473
- composition = new ThreeComposition(_extends({}, opts, {
33474
- width: _this.width,
33475
- height: _this.height,
33476
- renderer: _this.renderer,
33477
- handleItemMessage: function(message) {
33478
- _this.dispatchEvent({
33479
- type: "message",
33480
- message: message
33481
- });
33482
- }
33483
- }), scene);
33484
- composition.on("end", function() {
33485
- _this.dispatchEvent({
33486
- type: "end",
33487
- composition: composition
33488
- });
33489
- });
33490
- _this.renderer.engine.setOptions({
33491
- threeCamera: _this.camera,
33492
- threeGroup: _this,
33493
- composition: composition
33494
- });
33495
- if (opts.autoplay) {
33496
- composition.play();
33497
- } else {
33498
- composition.pause();
33499
- }
33500
- firstFrameTime = performance.now() - last + composition.statistic.loadTime;
33501
- composition.statistic.firstFrameTime = firstFrameTime;
33502
- logger.info("First frame: [" + composition.name + "]" + firstFrameTime.toFixed(4) + "ms.");
33503
- _this.compositions.push(composition);
33504
- return [
33505
- 2,
33506
- composition
33507
- ];
33508
- }
33509
- });
33510
- })();
33511
- };
33512
33483
  /**
33513
33484
  *
33514
33485
  * @param delta
@@ -33723,7 +33694,7 @@ setMaxSpriteMeshItemCount(8);
33723
33694
  */ Mesh.create = function(engine, props) {
33724
33695
  return new ThreeMesh(engine, props);
33725
33696
  };
33726
- var version = "2.3.0-beta.3";
33697
+ var version = "2.3.1";
33727
33698
  logger.info("THREEJS plugin version: " + version + ".");
33728
33699
 
33729
33700
  export { AbstractPlugin, ActivationPlayable, ActivationPlayableAsset, ActivationTrack, AnimationClip, AnimationClipPlayable, Asset, AssetLoader, AssetManager, AssetService, BYTES_TYPE_MAP, BaseRenderComponent, Behaviour, BezierCurve, BezierCurvePath, BezierCurveQuat, BinaryAsset, COMPRESSED_TEXTURE, CONSTANT_MAP_BLEND, CONSTANT_MAP_DEPTH, CONSTANT_MAP_STENCIL_FUNC, CONSTANT_MAP_STENCIL_OP, COPY_FRAGMENT_SHADER, COPY_MESH_SHADER_ID, COPY_VERTEX_SHADER, CalculateLoader, Camera, CameraController, CameraVFXItemLoader, ColorCurve, ColorPropertyPlayableAsset, ColorPropertyTrack, Component, Composition, CompositionComponent, CompositionSourceManager, DEFAULT_FONTS, DEFAULT_FPS, Database, DestroyOptions, Downloader, EFFECTS_COPY_MESH_NAME, EVENT_TYPE_CLICK, EVENT_TYPE_TOUCH_END, EVENT_TYPE_TOUCH_MOVE, EVENT_TYPE_TOUCH_START, EffectComponent, EffectsObject, EffectsPackage, Engine, EventEmitter, EventSystem, Fake3DAnimationMode, Fake3DComponent, FilterMode, Float16ArrayWrapper, FloatPropertyPlayableAsset, FloatPropertyTrack, Framebuffer, GLSLVersion, GPUCapability, Geometry, GlobalUniforms, GradientValue, HELP_LINK, HitTestType, InteractComponent, InteractLoader, InteractMesh, Item, KTXTexture, LineSegments, LinearValue, Material, MaterialDataBlock, MaterialRenderType, MaterialTrack, Mesh, MeshCollider, ObjectBindingTrack, OrderType, PLAYER_OPTIONS_ENV_EDITOR, POST_PROCESS_SETTINGS, ParticleBehaviourPlayable, ParticleBehaviourPlayableAsset, ParticleLoader, ParticleMesh, ParticleSystem, ParticleSystemRenderer, ParticleTrack, PassTextureCache, PathSegments, PluginSystem, PostProcessVolume, PropertyTrack, RENDER_PASS_NAME_PREFIX, RENDER_PREFER_LOOKUP_TEXTURE, RUNTIME_ENV, RandomSetValue, RandomValue, RandomVectorValue, RenderFrame, RenderPass, RenderPassAttachmentStorageType, RenderPassDestroyAttachmentType, RenderPassPriorityNormal, RenderPassPriorityPostprocess, RenderPassPriorityPrepare, RenderTargetHandle, RenderTextureFormat, Renderbuffer, Renderer, RendererComponent, RuntimeClip, SEMANTIC_MAIN_PRE_COLOR_ATTACHMENT_0, SEMANTIC_MAIN_PRE_COLOR_ATTACHMENT_SIZE_0, SEMANTIC_PRE_COLOR_ATTACHMENT_0, SEMANTIC_PRE_COLOR_ATTACHMENT_SIZE_0, SPRITE_VERTEX_STRIDE, Scene, SemanticMap, SerializationHelper, Shader, ShaderCompileResultStatus, ShaderFactory, ShaderType, ShaderVariant, ShapeComponent, SpriteColorPlayableAsset, SpriteColorTrack, SpriteComponent, SpriteLoader, StaticValue, SubCompositionPlayableAsset, SubCompositionTrack, TEMPLATE_USE_OFFSCREEN_CANVAS, TEXTURE_UNIFORM_MAP, TextComponent, TextComponentBase, TextLayout, TextLoader, TextStyle, Texture, TextureFactory, TextureLoadAction, TextureSourceType, TextureStoreAction, ThreeComposition, ThreeDisplayObject, ThreeEngine, ThreeMaterial, ThreeSpriteComponent, ThreeTextComponent, ThreeTexture, Ticker, TimelineAsset, TimelineClip, TimelinePlayable, TrackAsset, TrackSortWrapper, TrackType, Transform, TransformAnimationPlayable, TransformPlayableAsset, TransformTrack, VFXItem, ValueGetter, Vector2Curve, Vector2PropertyPlayableAsset, Vector2PropertyTrack, Vector4Curve, Vector4PropertyPlayableAsset, Vector4PropertyTrack, addByOrder, addItem, addItemWithOrder, applyMixins, assertExist, asserts, base64ToFile, blend, calculateTranslation, canvasPool, colorGradingFrag, colorStopsFromGradient, colorToArr$1 as colorToArr, combineImageTemplate, createCopyShader, createGLContext, createKeyFrameMeta, createShape, createValueGetter, decimalEqual, defaultPlugins, deserializeMipmapTexture, earcut, effectsClass, effectsClassStore, enlargeBuffer, ensureFixedNumber, ensureVec3, findPreviousRenderPass, gaussianDown_frag as gaussianDownFrag, gaussianDownHFrag, gaussianDownVFrag, gaussianUpFrag, generateEmptyTypedArray, generateGUID, generateHalfFloatTexture, generateTransparentTexture, generateWhiteTexture, getBackgroundImage, getColorFromGradientStops, getConfig, getDefaultTextureFactory, getGeometryByShape, getGeometryTriangles, getImageItemRenderInfo, getKTXTextureOptions, getKeyFrameMetaByRawValue, getMergedStore, getParticleMeshShader, getPixelRatio, getPreMultiAlpha, getStandardComposition, getStandardImage, getStandardItem, getStandardJSON, getTextureSize, glContext, glType2VertexFormatType, gpuTimer, imageDataFromColor, imageDataFromGradient, initErrors, initGLContext, integrate, interpolateColor, isAlipayMiniApp, isAndroid, isArray, isCanvas, isFunction, isIOS, isIOSByUA, isMiniProgram, isObject, isSimulatorCellPhone, isString, isUniformStruct, isUniformStructArray, isValidFontFamily, isWebGL2, isWechatMiniApp, itemFrag, itemFrameFrag, itemVert, loadAVIFOptional, loadBinary, loadBlob, loadImage, loadMedia, loadVideo, loadWebPOptional, logger, index as math, maxSpriteMeshItemCount, modifyMaxKeyframeShader, nearestPowerOfTwo, noop, normalizeColor, numberToFix, parsePercent$1 as parsePercent, particleFrag, particleOriginTranslateMap$1 as particleOriginTranslateMap, particleUniformTypeMap, particleVert, passRenderLevel, pluginLoaderMap, randomInRange, registerPlugin, removeItem, rotateVec2, screenMeshVert, serialize, setBlendMode, setConfig, setDefaultTextureFactory, setMaskMode, setMaxSpriteMeshItemCount, setRayFromCamera, setSideMode, setSpriteMeshMaxItemCountByGPU, setUniformValue, sortByOrder, index$1 as spec, spriteMeshShaderFromFilter, spriteMeshShaderFromRenderInfo, spriteMeshShaderIdFromRenderInfo, thresholdFrag, throwDestroyedError, trailVert, translatePoint, trianglesFromRect, unregisterPlugin, valIfUndefined, value, valueDefine, vecFill, vecMulCombine, version, vertexFormatType2GLType };