@galacean/effects-threejs 1.2.2 → 1.3.0-alpha.0

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: v1.2.2
6
+ * Version: v1.3.0-alpha.0
7
7
  */
8
8
 
9
9
  import * as THREE from 'three';
@@ -684,7 +684,7 @@ function asserts(condition, msg) {
684
684
  * Name: @galacean/effects-specification
685
685
  * Description: Galacean Effects JSON Specification
686
686
  * Author: Ant Group CO., Ltd.
687
- * Version: v1.0.1
687
+ * Version: v1.1.0-alpha.0
688
688
  */
689
689
 
690
690
  /*********************************************/
@@ -1065,6 +1065,16 @@ var CompositionEndBehavior$1;
1065
1065
  CompositionEndBehavior[CompositionEndBehavior["pause_destroy"] = END_BEHAVIOR_PAUSE_AND_DESTROY$1] = "pause_destroy";
1066
1066
  })(CompositionEndBehavior$1 || (CompositionEndBehavior$1 = {}));
1067
1067
 
1068
+ /**
1069
+ * 动态换图类型
1070
+ * @since 1.3.0
1071
+ */
1072
+ var BackgroundType$1;
1073
+ (function (BackgroundType) {
1074
+ BackgroundType["video"] = "video";
1075
+ BackgroundType["image"] = "image";
1076
+ })(BackgroundType$1 || (BackgroundType$1 = {}));
1077
+
1068
1078
  /*********************************************/
1069
1079
  /* 基本数值属性参数 */
1070
1080
  /*********************************************/
@@ -1354,6 +1364,7 @@ var FontStyle$1;
1354
1364
 
1355
1365
  var index$1 = /*#__PURE__*/Object.freeze({
1356
1366
  __proto__: null,
1367
+ get BackgroundType () { return BackgroundType$1; },
1357
1368
  get BezierKeyframeType () { return BezierKeyframeType$1; },
1358
1369
  get BlendingMode () { return BlendingMode$1; },
1359
1370
  BloomFilterThresholdAvgColor: BloomFilterThresholdAvgColor,
@@ -10151,10 +10162,8 @@ function loadBlob(url) {
10151
10162
  /**
10152
10163
  * 异步加载一个视频文件
10153
10164
  * @param url - 视频文件的 URL 或 MediaProvider 对象
10154
- * @param options - 加载参数
10155
10165
  */
10156
- function loadVideo(url, options) {
10157
- if (options === void 0) { options = {}; }
10166
+ function loadVideo(url) {
10158
10167
  return __awaiter(this, void 0, void 0, function () {
10159
10168
  var video;
10160
10169
  return __generator(this, function (_a) {
@@ -10167,9 +10176,6 @@ function loadVideo(url, options) {
10167
10176
  }
10168
10177
  video.crossOrigin = 'anonymous';
10169
10178
  video.muted = true;
10170
- if (options.loop) {
10171
- video.addEventListener('ended', function () { return video.play(); });
10172
- }
10173
10179
  if (isAndroid()) {
10174
10180
  video.setAttribute('renderer', 'standard');
10175
10181
  }
@@ -19653,6 +19659,26 @@ function getBackgroundImage(template, variables) {
19653
19659
  }
19654
19660
  return templateBackground;
19655
19661
  }
19662
+ function loadMedia(url, loadFn) {
19663
+ return __awaiter(this, void 0, void 0, function () {
19664
+ return __generator(this, function (_a) {
19665
+ switch (_a.label) {
19666
+ case 0:
19667
+ if (!Array.isArray(url)) return [3 /*break*/, 5];
19668
+ _a.label = 1;
19669
+ case 1:
19670
+ _a.trys.push([1, 3, , 5]);
19671
+ return [4 /*yield*/, loadFn(url[0])];
19672
+ case 2: return [2 /*return*/, _a.sent()];
19673
+ case 3:
19674
+ _a.sent();
19675
+ return [4 /*yield*/, loadFn(url[1])];
19676
+ case 4: return [2 /*return*/, _a.sent()];
19677
+ case 5: return [2 /*return*/, loadFn(url)];
19678
+ }
19679
+ });
19680
+ });
19681
+ }
19656
19682
  function drawImageAndTemplate(viewer, image, template, variables, opt) {
19657
19683
  var _a;
19658
19684
  return __awaiter(this, void 0, void 0, function () {
@@ -21544,7 +21570,7 @@ var filters = {
21544
21570
  * Name: @galacean/effects-specification
21545
21571
  * Description: Galacean Effects JSON Specification
21546
21572
  * Author: Ant Group CO., Ltd.
21547
- * Version: v1.0.1
21573
+ * Version: v1.1.0-alpha.0
21548
21574
  */
21549
21575
 
21550
21576
  /*********************************************/
@@ -21923,6 +21949,16 @@ var CompositionEndBehavior;
21923
21949
  CompositionEndBehavior[CompositionEndBehavior["pause_destroy"] = END_BEHAVIOR_PAUSE_AND_DESTROY] = "pause_destroy";
21924
21950
  })(CompositionEndBehavior || (CompositionEndBehavior = {}));
21925
21951
 
21952
+ /**
21953
+ * 动态换图类型
21954
+ * @since 1.3.0
21955
+ */
21956
+ var BackgroundType;
21957
+ (function (BackgroundType) {
21958
+ BackgroundType["video"] = "video";
21959
+ BackgroundType["image"] = "image";
21960
+ })(BackgroundType || (BackgroundType = {}));
21961
+
21926
21962
  /*********************************************/
21927
21963
  /* 基本数值属性参数 */
21928
21964
  /*********************************************/
@@ -23007,11 +23043,9 @@ function getStandardImage(image, index, imageTags) {
23007
23043
  else if (image.url) {
23008
23044
  return {
23009
23045
  url: image.url,
23010
- type: image.type,
23011
23046
  webp: image.webp,
23012
23047
  renderLevel: renderLevel,
23013
23048
  oriY: oriY,
23014
- loop: image.loop,
23015
23049
  };
23016
23050
  }
23017
23051
  else if (image && image.sourceType) {
@@ -23468,6 +23502,26 @@ var AssetManager = /** @class */ (function () {
23468
23502
  var _a = options.timeout, timeout = _a === void 0 ? 10 : _a;
23469
23503
  this.timeout = timeout;
23470
23504
  };
23505
+ /**
23506
+ * 根据用户传入的参数修改场景数据
23507
+ */
23508
+ AssetManager.prototype.updateSceneData = function (compositions) {
23509
+ var variables = this.options.variables;
23510
+ if (!variables || Object.keys(variables).length <= 0) {
23511
+ return compositions;
23512
+ }
23513
+ compositions.forEach(function (composition) {
23514
+ composition.items.forEach(function (item) {
23515
+ if (item.type === ItemType$1.text) {
23516
+ var textVariable = variables[item.name];
23517
+ if (textVariable) {
23518
+ item.content.options.text = textVariable;
23519
+ }
23520
+ }
23521
+ });
23522
+ });
23523
+ return compositions;
23524
+ };
23471
23525
  /**
23472
23526
  * 场景创建,通过 json 创建出场景对象,并进行提前编译等工作
23473
23527
  * @param url - json 的 URL 链接或者 json 对象
@@ -23559,6 +23613,7 @@ var AssetManager = /** @class */ (function () {
23559
23613
  for (i = 0; i < scene.images.length; i++) {
23560
23614
  scene.textureOptions[i].image = scene.images[i];
23561
23615
  }
23616
+ scene.jsonScene.compositions = this.updateSceneData(scene.jsonScene.compositions);
23562
23617
  _e.label = 5;
23563
23618
  case 5: return [3 /*break*/, 12];
23564
23619
  case 6: return [4 /*yield*/, hookTimeInfo('processJSON', function () { return _this.processJSON(rawJSON); })];
@@ -23578,6 +23633,7 @@ var AssetManager = /** @class */ (function () {
23578
23633
  return [4 /*yield*/, hookTimeInfo('processTextures', function () { return _this.processTextures(loadedImages_1, loadedBins_1, jsonScene_1); })];
23579
23634
  case 10:
23580
23635
  loadedTextures = _e.sent();
23636
+ jsonScene_1.compositions = this.updateSceneData(jsonScene_1.compositions);
23581
23637
  scene = {
23582
23638
  url: url,
23583
23639
  renderLevel: this.options.renderLevel,
@@ -23741,79 +23797,61 @@ var AssetManager = /** @class */ (function () {
23741
23797
  _a = this.options, useCompressedTexture = _a.useCompressedTexture, variables = _a.variables;
23742
23798
  baseUrl = this.baseUrl;
23743
23799
  jobs = images.map(function (img, idx) { return __awaiter(_this, void 0, void 0, function () {
23744
- var png, webp, imageURL, webpURL, template, result, url_1, name_1, templateImage, loop, compressed, src, bufferURL, _a, url, image;
23745
- var _b, _c, _d;
23746
- return __generator(this, function (_e) {
23747
- switch (_e.label) {
23800
+ var png, webp, imageURL, webpURL, template, isTemplateV2, background, url_1, isVideo, loadFn, resultImage, resultImage, compressed, src, bufferURL, _a, url, image;
23801
+ return __generator(this, function (_b) {
23802
+ switch (_b.label) {
23748
23803
  case 0:
23749
- if (!usage[idx]) return [3 /*break*/, 19];
23804
+ if (!usage[idx]) {
23805
+ return [2 /*return*/, undefined];
23806
+ }
23750
23807
  png = img.url, webp = img.webp;
23751
23808
  imageURL = new URL(png, baseUrl).href;
23752
23809
  webpURL = webp && new URL(webp, baseUrl).href;
23753
- if (!('template' in img)) return [3 /*break*/, 16];
23810
+ if (!('template' in img)) return [3 /*break*/, 13];
23754
23811
  template = img.template;
23755
- result = void 0;
23756
- if (!('v' in template && template.v === 2 && template.background)) return [3 /*break*/, 9];
23812
+ isTemplateV2 = 'v' in template && template.v === 2 && template.background;
23813
+ background = isTemplateV2 ? template.background : undefined;
23814
+ if (!(isTemplateV2 && background)) return [3 /*break*/, 8];
23757
23815
  url_1 = getBackgroundImage(template, variables);
23758
- if (!(url_1 instanceof Array)) return [3 /*break*/, 6];
23759
- name_1 = template.background.name;
23760
- _e.label = 1;
23816
+ isVideo = background.type === BackgroundType$1.video;
23817
+ loadFn = background && isVideo ? loadVideo : loadImage;
23818
+ _b.label = 1;
23761
23819
  case 1:
23762
- _e.trys.push([1, 3, , 5]);
23763
- _b = {};
23764
- return [4 /*yield*/, loadImage(url_1[0])];
23820
+ _b.trys.push([1, 6, , 7]);
23821
+ return [4 /*yield*/, loadMedia(url_1, loadFn)];
23765
23822
  case 2:
23766
- result = (_b.image = _e.sent(),
23767
- _b.url = url_1[0],
23768
- _b);
23769
- return [3 /*break*/, 5];
23823
+ resultImage = _b.sent();
23824
+ if (!(resultImage instanceof HTMLVideoElement)) return [3 /*break*/, 3];
23825
+ return [2 /*return*/, resultImage];
23770
23826
  case 3:
23771
- _e.sent();
23772
- _c = {};
23773
- return [4 /*yield*/, loadImage(url_1[1])];
23774
- case 4:
23775
- result = (_c.image = _e.sent(),
23776
- _c.url = url_1[1],
23777
- _c);
23778
- return [3 /*break*/, 5];
23779
- case 5:
23780
- if (variables) {
23781
- variables[name_1] = result.url;
23827
+ // 如果是加载图片且是数组,设置变量,视频情况下不需要
23828
+ if (background && !Array.isArray(url_1) && variables) {
23829
+ variables[background.name] = url_1;
23782
23830
  }
23783
- return [3 /*break*/, 8];
23831
+ return [4 /*yield*/, combineImageTemplate(resultImage, template, variables, this.options, img.oriY === -1)];
23832
+ case 4: return [2 /*return*/, _b.sent()];
23833
+ case 5: return [3 /*break*/, 7];
23784
23834
  case 6:
23785
- if (!(typeof url_1 === 'string')) return [3 /*break*/, 8];
23786
- _d = {};
23787
- return [4 /*yield*/, loadImage(url_1)];
23788
- case 7:
23789
- result = (_d.image = _e.sent(),
23790
- _d.url = url_1,
23791
- _d);
23792
- _e.label = 8;
23793
- case 8: return [3 /*break*/, 11];
23794
- case 9: return [4 /*yield*/, loadWebPOptional(imageURL, webpURL)];
23795
- case 10:
23796
- // 测试场景:'年兽大爆炸——8个彩蛋t1'
23797
- result = _e.sent();
23798
- _e.label = 11;
23835
+ _b.sent();
23836
+ throw new Error("Failed to load. Check the template or if the URL is ".concat(isVideo ? 'video' : 'image', " type, URL: ").concat(url_1, "."));
23837
+ case 7: return [3 /*break*/, 12];
23838
+ case 8:
23839
+ _b.trys.push([8, 11, , 12]);
23840
+ return [4 /*yield*/, loadWebPOptional(imageURL, webpURL)];
23841
+ case 9:
23842
+ resultImage = _b.sent();
23843
+ return [4 /*yield*/, combineImageTemplate(resultImage.image, template, variables, this.options, img.oriY === -1)];
23844
+ case 10: return [2 /*return*/, _b.sent()];
23799
23845
  case 11:
23800
- templateImage = void 0;
23801
- _e.label = 12;
23802
- case 12:
23803
- _e.trys.push([12, 14, , 15]);
23804
- return [4 /*yield*/, combineImageTemplate(result.image, template, variables, this.options, img.oriY === -1)];
23846
+ _b.sent();
23847
+ throw new Error("Failed to load. Check the template, URL: ".concat(imageURL, "."));
23848
+ case 12: return [3 /*break*/, 14];
23805
23849
  case 13:
23806
- templateImage = _e.sent();
23807
- return [3 /*break*/, 15];
23808
- case 14:
23809
- _e.sent();
23810
- throw new Error("image template fail: ".concat(imageURL));
23811
- case 15: return [2 /*return*/, templateImage];
23812
- case 16:
23813
23850
  if ('type' in img && img.type === 'video') {
23814
- loop = img.loop;
23815
23851
  // 视频
23816
- return [2 /*return*/, loadVideo(img.url, { loop: loop })];
23852
+ // TODO: 2024.03.28 后面考虑下掉非推荐的视频元素使用方式
23853
+ console.warn('The video element is deprecated. Use template BackgroundType.video instead.');
23854
+ return [2 /*return*/, loadVideo(img.url)];
23817
23855
  }
23818
23856
  else if ('compressed' in img && useCompressedTexture && compressedTexture) {
23819
23857
  compressed = img.compressed;
@@ -23839,13 +23877,12 @@ var AssetManager = /** @class */ (function () {
23839
23877
  img instanceof Texture) {
23840
23878
  return [2 /*return*/, img];
23841
23879
  }
23842
- _e.label = 17;
23843
- case 17: return [4 /*yield*/, loadWebPOptional(imageURL, webpURL)];
23844
- case 18:
23845
- _a = _e.sent(), url = _a.url, image = _a.image;
23880
+ _b.label = 14;
23881
+ case 14: return [4 /*yield*/, loadWebPOptional(imageURL, webpURL)];
23882
+ case 15:
23883
+ _a = _b.sent(), url = _a.url, image = _a.image;
23846
23884
  this.assets[idx] = { url: url, type: TextureSourceType.image };
23847
23885
  return [2 /*return*/, image];
23848
- case 19: return [2 /*return*/, undefined];
23849
23886
  }
23850
23887
  });
23851
23888
  }); });
@@ -26889,8 +26926,8 @@ Geometry.create = function (engine, options) {
26889
26926
  Mesh.create = function (engine, props) {
26890
26927
  return new ThreeMesh(engine, props);
26891
26928
  };
26892
- var version = "1.2.2";
26929
+ var version = "1.3.0-alpha.0";
26893
26930
  logger.info('THREEJS plugin version: ' + version);
26894
26931
 
26895
- export { AbstractPlugin, AssetManager, BYTES_TYPE_MAP, BezierSegments, 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, CalculateItem, CalculateLoader, CalculateVFXItem, Camera, CameraController, CameraVFXItem, CameraVFXItemLoader, Composition, CompositionSourceManager, CurveValue, DEFAULT_FONTS, DestroyOptions, Downloader, EFFECTS_COPY_MESH_NAME, EVENT_TYPE_CLICK, EVENT_TYPE_TOUCH_END, EVENT_TYPE_TOUCH_MOVE, EVENT_TYPE_TOUCH_START, Engine, EventSystem, FILTER_NAME_NONE, FilterMode, FilterSpriteVFXItem, Float16ArrayWrapper, FrameBuffer, GLSLVersion, GPUCapability, Geometry, GlobalUniforms, GradientValue, HELP_LINK, HitTestType, InteractBehavior$1 as InteractBehavior, InteractItem, InteractLoader, InteractMesh, InteractVFXItem, Item, KTXTexture, LineSegments, LinearValue, Material, MaterialDataBlock, MaterialRenderType, Mesh, OrderType, PLAYER_OPTIONS_ENV_EDITOR, POST_PROCESS_SETTINGS, ParticleLoader, ParticleMesh, ParticleSystem, ParticleVFXItem, PassTextureCache, PathSegments, PluginSystem, QCanvasViewer, QText, QTextWrapMode, RENDER_PASS_NAME_PREFIX, RENDER_PREFER_LOOKUP_TEXTURE, RUNTIME_ENV, RandomSetValue, RandomValue, RandomVectorValue, RenderBuffer, RenderFrame, RenderPass, RenderPassAttachmentStorageType, RenderPassDestroyAttachmentType, RenderPassPriorityNormal, RenderPassPriorityPostprocess, RenderPassPriorityPrepare, RenderTargetHandle, RenderTextureFormat, Renderer, 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, SemanticMap, Shader, ShaderCompileResultStatus, ShaderType, SpriteItem, SpriteLoader, SpriteMesh, SpriteVFXItem, StaticValue, TEMPLATE_USE_OFFSCREEN_CANVAS, TEXTURE_UNIFORM_MAP, TextItem, TextLoader, TextMesh, TextVFXItem, Texture, TextureFactory, TextureLoadAction, TextureSourceType, TextureStoreAction, ThreeComposition, ThreeDisplayObject, ThreeMaterial, ThreeTexture, Ticker, TimelineComponent, Transform, VFXItem, ValueGetter, addByOrder, addItem, addItemWithOrder, alphaFrameFrag, alphaMaskFrag, assertExist, asserts, blend, bloomMixVert, bloomThresholdVert, calculateTranslation, cameraMove_frag as cameraMoveFrag, cameraMoveVert, canvasPool, colorGradingFrag, colorStopsFromGradient, colorToArr$1 as colorToArr, combineImageTemplate, combineImageTemplate1, combineImageTemplate1Async, combineImageTemplate2, combineImageTemplate2Async, combineImageTemplateAsync, compatible_frag as compatibleFrag, compatible_vert as compatibleVert, convertAnchor, copyFrag, createCopyShader, createFilter, createFilterShaders, createGLContext, createKeyFrameMeta, createShaderWithMarcos, createShape, createVFXItem, createValueGetter, deepClone, defaultGlobalVolume, defaultPlugins, delayFrag, deserializeMipmapTexture, distortionFrag, distortionVert, earcut, enlargeBuffer, ensureVec3, filters, findPreviousRenderPass, gaussianDown_frag as gaussianDownFrag, gaussianDownHFrag, gaussianDownVFrag, gaussianUpFrag, generateEmptyTypedArray, generateHalfFloatTexture, getBackgroundImage, getColorFromGradientStops, getConfig, getDefaultTemplateCanvasPool, getDefaultTextureFactory, getGeometryByShape, getGeometryTriangles, getImageItemRenderInfo, getKTXTextureOptions, getKeyFrameMetaByRawValue, getParticleMeshShader, getPixelRatio, getPreMultiAlpha, getStandardComposition, getStandardImage, getStandardItem, getStandardJSON, getTextureSize, glContext, gpuTimer, imageDataFromColor, imageDataFromGradient, initErrors, initGLContext, integrate, interpolateColor, isAndroid, isArray, isFunction, isIOS, isObject, isScene, isSimulatorCellPhone, isString, isUniformStruct, isUniformStructArray, isWebGL2, item_define as itemDefine, itemFrag, itemFrameFrag, itemVert, loadBinary, loadBlob, loadImage, loadVideo, loadWebPOptional, logger, index as math, maxSpriteMeshItemCount, maxSpriteTextureCount, modifyMaxKeyframeShader, nearestPowerOfTwo, noop, parsePercent$1 as parsePercent, particleFrag, particleOriginTranslateMap, particleVert, pluginLoaderMap, random, registerFilter, registerFilters, registerPlugin, removeItem, requestAsync, rotateVec2, screenMeshVert, setBlendMode, setConfig, setDefaultTextureFactory, setMaskMode, setMaxSpriteMeshItemCount, setRayFromCamera, setSideMode, setSpriteMeshMaxFragmentTextures, setSpriteMeshMaxItemCountByGPU, setUniformValue, sortByOrder, index$1 as spec, spriteMeshShaderFromFilter, spriteMeshShaderFromRenderInfo, spriteMeshShaderIdFromRenderInfo, thresholdFrag, throwDestroyedError, trailVert, translatePoint, trianglesFromRect, unregisterPlugin, valIfUndefined, value, valueDefine, vecAssign, vecFill, vecMulCombine, vecNormalize, version };
26932
+ export { AbstractPlugin, AssetManager, BYTES_TYPE_MAP, BezierSegments, 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, CalculateItem, CalculateLoader, CalculateVFXItem, Camera, CameraController, CameraVFXItem, CameraVFXItemLoader, Composition, CompositionSourceManager, CurveValue, DEFAULT_FONTS, DestroyOptions, Downloader, EFFECTS_COPY_MESH_NAME, EVENT_TYPE_CLICK, EVENT_TYPE_TOUCH_END, EVENT_TYPE_TOUCH_MOVE, EVENT_TYPE_TOUCH_START, Engine, EventSystem, FILTER_NAME_NONE, FilterMode, FilterSpriteVFXItem, Float16ArrayWrapper, FrameBuffer, GLSLVersion, GPUCapability, Geometry, GlobalUniforms, GradientValue, HELP_LINK, HitTestType, InteractBehavior$1 as InteractBehavior, InteractItem, InteractLoader, InteractMesh, InteractVFXItem, Item, KTXTexture, LineSegments, LinearValue, Material, MaterialDataBlock, MaterialRenderType, Mesh, OrderType, PLAYER_OPTIONS_ENV_EDITOR, POST_PROCESS_SETTINGS, ParticleLoader, ParticleMesh, ParticleSystem, ParticleVFXItem, PassTextureCache, PathSegments, PluginSystem, QCanvasViewer, QText, QTextWrapMode, RENDER_PASS_NAME_PREFIX, RENDER_PREFER_LOOKUP_TEXTURE, RUNTIME_ENV, RandomSetValue, RandomValue, RandomVectorValue, RenderBuffer, RenderFrame, RenderPass, RenderPassAttachmentStorageType, RenderPassDestroyAttachmentType, RenderPassPriorityNormal, RenderPassPriorityPostprocess, RenderPassPriorityPrepare, RenderTargetHandle, RenderTextureFormat, Renderer, 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, SemanticMap, Shader, ShaderCompileResultStatus, ShaderType, SpriteItem, SpriteLoader, SpriteMesh, SpriteVFXItem, StaticValue, TEMPLATE_USE_OFFSCREEN_CANVAS, TEXTURE_UNIFORM_MAP, TextItem, TextLoader, TextMesh, TextVFXItem, Texture, TextureFactory, TextureLoadAction, TextureSourceType, TextureStoreAction, ThreeComposition, ThreeDisplayObject, ThreeMaterial, ThreeTexture, Ticker, TimelineComponent, Transform, VFXItem, ValueGetter, addByOrder, addItem, addItemWithOrder, alphaFrameFrag, alphaMaskFrag, assertExist, asserts, blend, bloomMixVert, bloomThresholdVert, calculateTranslation, cameraMove_frag as cameraMoveFrag, cameraMoveVert, canvasPool, colorGradingFrag, colorStopsFromGradient, colorToArr$1 as colorToArr, combineImageTemplate, combineImageTemplate1, combineImageTemplate1Async, combineImageTemplate2, combineImageTemplate2Async, combineImageTemplateAsync, compatible_frag as compatibleFrag, compatible_vert as compatibleVert, convertAnchor, copyFrag, createCopyShader, createFilter, createFilterShaders, createGLContext, createKeyFrameMeta, createShaderWithMarcos, createShape, createVFXItem, createValueGetter, deepClone, defaultGlobalVolume, defaultPlugins, delayFrag, deserializeMipmapTexture, distortionFrag, distortionVert, earcut, enlargeBuffer, ensureVec3, filters, findPreviousRenderPass, gaussianDown_frag as gaussianDownFrag, gaussianDownHFrag, gaussianDownVFrag, gaussianUpFrag, generateEmptyTypedArray, generateHalfFloatTexture, getBackgroundImage, getColorFromGradientStops, getConfig, getDefaultTemplateCanvasPool, getDefaultTextureFactory, getGeometryByShape, getGeometryTriangles, getImageItemRenderInfo, getKTXTextureOptions, getKeyFrameMetaByRawValue, getParticleMeshShader, getPixelRatio, getPreMultiAlpha, getStandardComposition, getStandardImage, getStandardItem, getStandardJSON, getTextureSize, glContext, gpuTimer, imageDataFromColor, imageDataFromGradient, initErrors, initGLContext, integrate, interpolateColor, isAndroid, isArray, isFunction, isIOS, isObject, isScene, isSimulatorCellPhone, isString, isUniformStruct, isUniformStructArray, isWebGL2, item_define as itemDefine, itemFrag, itemFrameFrag, itemVert, loadBinary, loadBlob, loadImage, loadMedia, loadVideo, loadWebPOptional, logger, index as math, maxSpriteMeshItemCount, maxSpriteTextureCount, modifyMaxKeyframeShader, nearestPowerOfTwo, noop, parsePercent$1 as parsePercent, particleFrag, particleOriginTranslateMap, particleVert, pluginLoaderMap, random, registerFilter, registerFilters, registerPlugin, removeItem, requestAsync, rotateVec2, screenMeshVert, setBlendMode, setConfig, setDefaultTextureFactory, setMaskMode, setMaxSpriteMeshItemCount, setRayFromCamera, setSideMode, setSpriteMeshMaxFragmentTextures, setSpriteMeshMaxItemCountByGPU, setUniformValue, sortByOrder, index$1 as spec, spriteMeshShaderFromFilter, spriteMeshShaderFromRenderInfo, spriteMeshShaderIdFromRenderInfo, thresholdFrag, throwDestroyedError, trailVert, translatePoint, trianglesFromRect, unregisterPlugin, valIfUndefined, value, valueDefine, vecAssign, vecFill, vecMulCombine, vecNormalize, version };
26896
26933
  //# sourceMappingURL=index.mjs.map