@galacean/effects-threejs 2.1.2 → 2.1.3-alpha.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.1.2
6
+ * Version: v2.1.3-alpha.1
7
7
  */
8
8
 
9
9
  import * as THREE from 'three';
@@ -10141,7 +10141,7 @@ var itemFrameFrag = "#version 100\nprecision highp float;vec4 blendColor(vec4 co
10141
10141
 
10142
10142
  var integrate = "float calculateMovement(float t,vec2 p1,vec2 p2,vec2 p3,vec2 p4){float movement=0.0;float h=(t-p1.x)*0.05;for(int i=0;i<=20;i++){float t=float(i)*h;float nt=binarySearchT(t,p1.x,p2.x,p3.x,p4.x);float y=cubicBezier(nt,p1.y,p2.y,p3.y,p4.y);float weight=(i==0||i==20)? 1.0 :(mod(float(i),2.)!=0.)? 4.0 : 2.0;movement+=weight*y;}movement*=h/3.;return movement;}float integrateFromBezierCurveFrames(float time,float frameStart,float frameCount){int start=int(frameStart);int count=int(frameCount-1.);float ret=0.;for(int i=0;i<ITR_END;i+=2){vec4 k0=lookup_curve(i+start);vec4 k1=lookup_curve(i+1+start);if(i==0&&time<k0.x){return ret;}vec2 p1=vec2(k0.x,k0.y);vec2 p2=vec2(k0.z,k0.w);vec2 p3=vec2(k1.z,k1.w);vec2 p4=vec2(k1.x,k1.y);if(time>=k1.x){ret+=calculateMovement(k1.x,p1,p2,p3,p4);}if(time>=k0.x&&time<k1.x){return ret+calculateMovement(time,p1,p2,p3,p4);}}return ret;}float integrateByTimeLineSeg(float t,vec2 p0,vec2 p1){float t0=p0.x;float t1=p1.x;float y0=p0.y;float y1=p1.y;vec4 tSqr=vec4(t,t,t0,t0);tSqr=tSqr*tSqr;vec4 a=vec4(2.*t,3.,-t0,3.)*tSqr;float t1y0=t1*y0;vec4 b=vec4(y0-y1,t0*y1-t1y0,2.*y0+y1,t1y0);float r=dot(a,b);return r/(t0-t1)*0.16666667;}float integrateLineSeg(float time,vec2 p0,vec2 p1){float h=time-p0.x;float y0=p0.y;return(y0+y0+(p1.y-y0)*h/(p1.x-p0.x))*h/2.;}float integrateFromLineSeg(float time,float frameStart,float frameCount){if(time==0.){return 0.;}int start=int(frameStart);int count=int(frameCount-1.);float ret=0.;for(int i=0;i<ITR_END;i++){if(i>count){return ret;}vec4 ks=lookup_curve(i+start);vec2 k0=ks.xy;vec2 k1=ks.zw;if(time>k0.x&&time<=k1.x){return ret+integrateLineSeg(time,k0,k1);}ret+=integrateLineSeg(k1.x,k0,k1);vec2 k2=lookup_curve(i+start+1).xy;if(time>k1.x&&time<=k2.x){return ret+integrateLineSeg(time,k1,k2);}ret+=integrateLineSeg(k2.x,k1,k2);}return ret;}float integrateByTimeFromLineSeg(float time,float frameStart,float frameCount){if(time==0.){return 0.;}int start=int(frameStart);int count=int(frameCount-1.);float ret=0.;for(int i=0;i<ITR_END;i++){if(i>count){return ret;}vec4 ks=lookup_curve(i+start);vec2 k0=ks.xy;vec2 k1=ks.zw;if(time>k0.x&&time<=k1.x){return ret+integrateByTimeLineSeg(time,k0,k1);}ret+=integrateByTimeLineSeg(k1.x,k0,k1);vec2 k2=lookup_curve(i+start+1).xy;if(time>k1.x&&time<=k2.x){return ret+integrateByTimeLineSeg(time,k1,k2);}ret+=integrateByTimeLineSeg(k2.x,k1,k2);}return ret;}float getIntegrateFromTime0(float t1,vec4 value){float type=value.x;if(type==0.){return value.y*t1;}if(type==1.){vec2 p0=vec2(0.,value.y);vec2 p1=vec2(value.w,value.z);return integrateLineSeg(t1,p0,p1);}if(type==3.){return integrateFromLineSeg(t1,value.y,value.z);}if(type==4.){return mix(value.y,value.z,aSeed)*t1;}if(type==5.){return integrateFromBezierCurveFrames(t1,value.z,value.w);}return 0.;}float getIntegrateByTimeFromTime(float t0,float t1,vec4 value){float type=value.x;if(type==0.){return value.y*(t1*t1-t0*t0)/2.;}else if(type==1.){vec2 p0=vec2(0.,value.y);vec2 p1=vec2(value.w,value.z);return integrateByTimeLineSeg(t1,p0,p1)-integrateByTimeLineSeg(t0,p0,p1);}if(type==3.){return integrateByTimeFromLineSeg(t1,value.y,value.z)-integrateByTimeFromLineSeg(t0,value.y,value.z);}if(type==4.){return mix(value.y,value.z,aSeed)*(t1*t1-t0*t0)/2.;}if(type==5.){return integrateFromBezierCurveFrames(t1,value.z,value.w)-integrateFromBezierCurveFrames(t0,value.z,value.w);}return 0.;}";
10143
10143
 
10144
- var itemVert = "precision highp float;attribute vec2 atlasOffset;attribute vec3 aPos;varying vec2 vTexCoord;varying vec3 vParams;varying vec4 vColor;uniform vec2 _Size;uniform vec4 _Color;uniform vec4 _TexParams;uniform vec4 _TexOffset;uniform mat4 effects_MatrixVP;uniform mat4 effects_MatrixInvV;uniform mat4 effects_ObjectToWorld;\n#ifdef ENV_EDITOR\nuniform vec4 uEditorTransform;\n#endif\nvoid main(){vec4 texParams=_TexParams;vTexCoord=vec2(atlasOffset.xy*_TexOffset.zw+_TexOffset.xy);vColor=_Color;vParams=vec3(0.0,texParams.y,texParams.x);vec4 pos=vec4(aPos.xy*_Size,aPos.z,1.0);gl_Position=effects_MatrixVP*effects_ObjectToWorld*pos;\n#ifdef ENV_EDITOR\ngl_Position=vec4(gl_Position.xy*uEditorTransform.xy+uEditorTransform.zw*gl_Position.w,gl_Position.zw);\n#endif\n}";
10144
+ var itemVert = "precision highp float;attribute vec2 atlasOffset;attribute vec3 aPos;varying vec2 vTexCoord;varying vec3 vParams;varying vec4 vColor;uniform vec2 _Size;uniform vec3 _Scale;uniform vec4 _Color;uniform vec4 _TexParams;uniform vec4 _TexOffset;uniform mat4 effects_MatrixVP;uniform mat4 effects_ObjectToWorld;uniform mat4 effects_MatrixV;\n#ifdef ENV_EDITOR\nuniform vec4 uEditorTransform;\n#endif\nvoid main(){vec4 texParams=_TexParams;vTexCoord=vec2(atlasOffset.xy*_TexOffset.zw+_TexOffset.xy);vColor=_Color;vParams=vec3(0.0,texParams.y,texParams.x);if(texParams.z==1.0){vec4 pos=vec4(aPos.xy*_Size,aPos.z,1.0);gl_Position=effects_MatrixVP*effects_ObjectToWorld*pos;}else{mat4 view=effects_MatrixV;vec3 camRight=vec3(view[0][0],view[1][0],view[2][0]);vec3 camUp=vec3(view[0][1],view[1][1],view[2][1]);vec3 worldPosition=vec3(effects_ObjectToWorld*vec4(0.0,0.0,0.0,1.0));vec3 vertexPosition=worldPosition+camRight*aPos.x*_Size.x*_Scale.x+camUp*aPos.y*_Size.y*_Scale.y;gl_Position=effects_MatrixVP*vec4(vertexPosition,1.0);}\n#ifdef ENV_EDITOR\ngl_Position=vec4(gl_Position.xy*uEditorTransform.xy+uEditorTransform.zw*gl_Position.w,gl_Position.zw);\n#endif\n}";
10145
10145
 
10146
10146
  var itemFrag = "precision highp float;varying vec4 vColor;varying vec2 vTexCoord;varying vec3 vParams;uniform sampler2D _MainTex;vec4 blendColor(vec4 color,vec4 vc,float mode){vec4 ret=color*vc;float alpha=ret.a;if(mode==1.){ret.rgb*=alpha;}else if(mode==2.){ret.rgb*=alpha;ret.a=dot(ret.rgb,vec3(0.33333333));}else if(mode==3.){alpha=color.r*alpha;ret=vec4(vc.rgb*alpha,alpha);}return ret;}void main(){vec4 color=vec4(0.);vec4 texColor=texture2D(_MainTex,vTexCoord.xy);color=blendColor(texColor,vColor,floor(0.5+vParams.y));if(vParams.z==0.&&color.a<0.04){discard;}color.a=clamp(color.a,0.0,1.0);gl_FragColor=color;}";
10147
10147
 
@@ -13216,7 +13216,7 @@ var ColorCurve = /*#__PURE__*/ function(ValueGetter) {
13216
13216
  }
13217
13217
  };
13218
13218
  _this.renderer = {
13219
- renderMode: RenderMode.BILLBOARD,
13219
+ renderMode: RenderMode.MESH,
13220
13220
  blending: BlendingMode.ALPHA,
13221
13221
  texture: _this.engine.emptyTexture,
13222
13222
  occlusion: false,
@@ -13290,6 +13290,9 @@ var ColorCurve = /*#__PURE__*/ function(ValueGetter) {
13290
13290
  renderer.setGlobalMatrix("effects_ObjectToWorld", this.transform.getWorldMatrix());
13291
13291
  }
13292
13292
  this.material.setVector2("_Size", this.transform.size);
13293
+ if (this.renderer.renderMode === RenderMode.BILLBOARD || this.renderer.renderMode === RenderMode.VERTICAL_BILLBOARD || this.renderer.renderMode === RenderMode.HORIZONTAL_BILLBOARD) {
13294
+ this.material.setVector3("_Scale", this.transform.scale);
13295
+ }
13293
13296
  renderer.drawGeometry(geo, material);
13294
13297
  };
13295
13298
  _proto.onStart = function onStart() {
@@ -18806,7 +18809,7 @@ var SpriteComponent = /*#__PURE__*/ function(BaseRenderComponent) {
18806
18809
  this.interaction = interaction;
18807
18810
  var _renderer_renderMode, _renderer_blending, _renderer_texture, _renderer_side, _renderer_mask, _renderer_maskMode;
18808
18811
  this.renderer = {
18809
- renderMode: (_renderer_renderMode = renderer.renderMode) != null ? _renderer_renderMode : RenderMode.BILLBOARD,
18812
+ renderMode: (_renderer_renderMode = renderer.renderMode) != null ? _renderer_renderMode : RenderMode.MESH,
18810
18813
  blending: (_renderer_blending = renderer.blending) != null ? _renderer_blending : BlendingMode.ALPHA,
18811
18814
  texture: (_renderer_texture = renderer.texture) != null ? _renderer_texture : this.engine.emptyTexture,
18812
18815
  occlusion: !!renderer.occlusion,
@@ -23900,6 +23903,9 @@ var SerializationHelper = /*#__PURE__*/ function() {
23900
23903
  _proto.onUpdate = function onUpdate(dt) {
23901
23904
  var time = this.time;
23902
23905
  this.timelinePlayable.setTime(time);
23906
+ // The properties of the object may change dynamically,
23907
+ // so reset the track binding to avoid invalidation of the previously obtained binding object.
23908
+ this.resolveBindings();
23903
23909
  this.graph.evaluate(dt);
23904
23910
  };
23905
23911
  _proto.createContent = function createContent() {
@@ -24541,8 +24547,6 @@ var TimelinePlayable = /*#__PURE__*/ function(Playable) {
24541
24547
  };
24542
24548
  _proto.evaluate = function evaluate() {
24543
24549
  var time = this.getTime();
24544
- // update all tracks binding
24545
- this.updateTrackAnimatedObject(this.masterTrackInstances);
24546
24550
  // TODO search active clips
24547
24551
  for(var _iterator = _create_for_of_iterator_helper_loose(this.clips), _step; !(_step = _iterator()).done;){
24548
24552
  var clip = _step.value;
@@ -24580,17 +24584,6 @@ var TimelinePlayable = /*#__PURE__*/ function(Playable) {
24580
24584
  }
24581
24585
  }
24582
24586
  };
24583
- _proto.updateTrackAnimatedObject = function updateTrackAnimatedObject(trackInstances) {
24584
- for(var _iterator = _create_for_of_iterator_helper_loose(trackInstances), _step; !(_step = _iterator()).done;){
24585
- var trackInstance = _step.value;
24586
- var trackAsset = trackInstance.trackAsset;
24587
- // update track binding use custom method
24588
- trackAsset.updateAnimatedObject();
24589
- trackInstance.output.setUserData(trackAsset.boundObject);
24590
- // update children tracks
24591
- this.updateTrackAnimatedObject(trackInstance.children);
24592
- }
24593
- };
24594
24587
  return TimelinePlayable;
24595
24588
  }(Playable);
24596
24589
  var TrackSortWrapper = function TrackSortWrapper(track, originalIndex) {
@@ -24906,7 +24899,7 @@ var TextComponent = /*#__PURE__*/ function(BaseRenderComponent) {
24906
24899
  this.interaction = interaction;
24907
24900
  var _renderer_renderMode, _renderer_blending, _renderer_texture, _renderer_side, _renderer_mask, _renderer_maskMode;
24908
24901
  this.renderer = {
24909
- renderMode: (_renderer_renderMode = renderer.renderMode) != null ? _renderer_renderMode : RenderMode.BILLBOARD,
24902
+ renderMode: (_renderer_renderMode = renderer.renderMode) != null ? _renderer_renderMode : RenderMode.MESH,
24910
24903
  blending: (_renderer_blending = renderer.blending) != null ? _renderer_blending : BlendingMode.ALPHA,
24911
24904
  texture: (_renderer_texture = renderer.texture) != null ? _renderer_texture : this.engine.emptyTexture,
24912
24905
  occlusion: !!renderer.occlusion,
@@ -27674,7 +27667,7 @@ var seed$1 = 1;
27674
27667
  _this_options = _this.options, useCompressedTexture = _this_options.useCompressedTexture, variables = _this_options.variables;
27675
27668
  baseUrl = _this.baseUrl;
27676
27669
  jobs = images.map(/*#__PURE__*/ _async_to_generator(function(img, idx) {
27677
- var png, webp, avif, imageURL, webpURL, avifURL, template, background, url, isVideo, loadFn, resultImage, e, compressed, src, bufferURL, _ref, url1, image, _tmp;
27670
+ var png, webp, avif, imageURL, webpURL, avifURL, id, template, background, url, isVideo, loadFn, resultImage, e, compressed, src, bufferURL, _ref, url1, image, _tmp;
27678
27671
  return __generator(this, function(_state) {
27679
27672
  switch(_state.label){
27680
27673
  case 0:
@@ -27685,6 +27678,7 @@ var seed$1 = 1;
27685
27678
  webpURL = webp && new URL(webp, baseUrl).href;
27686
27679
  // eslint-disable-next-line compat/compat
27687
27680
  avifURL = avif && new URL(avif, baseUrl).href;
27681
+ id = img.id;
27688
27682
  if (!("template" in img)) return [
27689
27683
  3,
27690
27684
  8
@@ -27719,7 +27713,7 @@ var seed$1 = 1;
27719
27713
  3,
27720
27714
  3
27721
27715
  ];
27722
- _this.sourceFrom[idx] = {
27716
+ _this.sourceFrom[id] = {
27723
27717
  url: resultImage.src,
27724
27718
  type: TextureSourceType.video
27725
27719
  };
@@ -27732,7 +27726,7 @@ var seed$1 = 1;
27732
27726
  if (background && Array.isArray(url) && variables) {
27733
27727
  variables[background.name] = resultImage.src;
27734
27728
  }
27735
- _this.sourceFrom[idx] = {
27729
+ _this.sourceFrom[id] = {
27736
27730
  url: resultImage.src,
27737
27731
  type: TextureSourceType.image
27738
27732
  };
@@ -27769,7 +27763,7 @@ var seed$1 = 1;
27769
27763
  }
27770
27764
  if (src) {
27771
27765
  bufferURL = new URL(src, baseUrl).href;
27772
- _this.sourceFrom[idx] = {
27766
+ _this.sourceFrom[id] = {
27773
27767
  url: bufferURL,
27774
27768
  type: TextureSourceType.compressed
27775
27769
  };
@@ -27810,7 +27804,7 @@ var seed$1 = 1;
27810
27804
  _state.label = 13;
27811
27805
  case 13:
27812
27806
  _ref = _tmp, url1 = _ref.url, image = _ref.image;
27813
- _this.sourceFrom[idx] = {
27807
+ _this.sourceFrom[id] = {
27814
27808
  url: url1,
27815
27809
  type: TextureSourceType.image
27816
27810
  };
@@ -27902,7 +27896,7 @@ var seed$1 = 1;
27902
27896
  };
27903
27897
  });
27904
27898
  jobs = textures.map(/*#__PURE__*/ _async_to_generator(function(textureOptions, idx) {
27905
- var e, source, id, image, texture;
27899
+ var e, source, id, image, imageId, texture;
27906
27900
  return __generator(this, function(_state) {
27907
27901
  switch(_state.label){
27908
27902
  case 0:
@@ -27938,11 +27932,13 @@ var seed$1 = 1;
27938
27932
  throw new Error("Load texture " + idx + " fails, error message: " + e + ".");
27939
27933
  case 4:
27940
27934
  source = textureOptions.source, id = textureOptions.id;
27935
+ imageId = "";
27941
27936
  if (!isObject(source)) return [
27942
27937
  3,
27943
27938
  5
27944
27939
  ];
27945
27940
  image = _this.assets[source.id];
27941
+ imageId = source.id;
27946
27942
  return [
27947
27943
  3,
27948
27944
  7
@@ -27961,7 +27957,7 @@ var seed$1 = 1;
27961
27957
  _state.label = 7;
27962
27958
  case 7:
27963
27959
  if (image) {
27964
- texture = createTextureOptionsBySource(image, _this.sourceFrom[idx], id);
27960
+ texture = createTextureOptionsBySource(image, _this.sourceFrom[imageId], id);
27965
27961
  return [
27966
27962
  2,
27967
27963
  texture.sourceType === TextureSourceType.compressed ? texture : _extends({}, texture, textureOptions)
@@ -31376,7 +31372,7 @@ registerPlugin("sprite", SpriteLoader, VFXItem, true);
31376
31372
  registerPlugin("particle", ParticleLoader, VFXItem, true);
31377
31373
  registerPlugin("cal", CalculateLoader, VFXItem, true);
31378
31374
  registerPlugin("interact", InteractLoader, VFXItem, true);
31379
- var version$1 = "2.1.2";
31375
+ var version$1 = "2.1.3-alpha.1";
31380
31376
  logger.info("Core version: " + version$1 + ".");
31381
31377
 
31382
31378
  var _obj;
@@ -33003,7 +32999,7 @@ setMaxSpriteMeshItemCount(8);
33003
32999
  */ Mesh.create = function(engine, props) {
33004
33000
  return new ThreeMesh(engine, props);
33005
33001
  };
33006
- var version = "2.1.2";
33002
+ var version = "2.1.3-alpha.1";
33007
33003
  logger.info("THREEJS plugin version: " + version + ".");
33008
33004
 
33009
33005
  export { AbstractPlugin, ActivationPlayable, ActivationPlayableAsset, ActivationTrack, AnimationClip, AnimationClipPlayable, Asset, AssetLoader, AssetManager, 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, 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, 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 };