@galacean/effects-threejs 2.1.0-alpha.1 → 2.1.0-alpha.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/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.0-alpha.1
6
+ * Version: v2.1.0-alpha.2
7
7
  */
8
8
 
9
9
  import * as THREE from 'three';
@@ -8350,7 +8350,7 @@ var seed$9 = 1;
8350
8350
  * 通过 URL 创建 Texture 对象。
8351
8351
  * @param url - 要创建的 Texture URL
8352
8352
  * @since 2.0.0
8353
- */ Texture.fromImage = function fromImage(url, engine) {
8353
+ */ Texture.fromImage = function fromImage(url, engine, options) {
8354
8354
  return _async_to_generator(function() {
8355
8355
  var image, texture;
8356
8356
  return __generator(this, function(_state) {
@@ -8362,12 +8362,13 @@ var seed$9 = 1;
8362
8362
  ];
8363
8363
  case 1:
8364
8364
  image = _state.sent();
8365
- texture = Texture.create(engine, {
8365
+ texture = Texture.create(engine, _extends({
8366
8366
  sourceType: TextureSourceType.image,
8367
8367
  image: image,
8368
+ target: glContext.TEXTURE_2D,
8368
8369
  id: generateGUID(),
8369
8370
  flipY: true
8370
- });
8371
+ }, options));
8371
8372
  texture.initialize();
8372
8373
  return [
8373
8374
  2,
@@ -10299,15 +10300,19 @@ var BezierCurve = /*#__PURE__*/ function(ValueGetter) {
10299
10300
  points: points,
10300
10301
  timeInterval: timeInterval,
10301
10302
  valueInterval: valueInterval,
10302
- curve: curve
10303
+ curve: curve,
10304
+ timeStart: Number(s.x),
10305
+ timeEnd: Number(e.x)
10303
10306
  };
10304
10307
  }
10305
10308
  };
10306
10309
  _proto.getValue = function getValue(time) {
10307
10310
  var result = 0;
10308
10311
  var keyTimeData = Object.keys(this.curveMap);
10309
- var keyTimeStart = Number(keyTimeData[0].split("&")[0]);
10310
- var keyTimeEnd = Number(keyTimeData[keyTimeData.length - 1].split("&")[1]);
10312
+ var keyTimeStart = this.curveMap[keyTimeData[0]].timeStart;
10313
+ var keyTimeEnd = this.curveMap[keyTimeData[keyTimeData.length - 1]].timeEnd;
10314
+ // const keyTimeStart = Number(keyTimeData[0].split('&')[0]);
10315
+ // const keyTimeEnd = Number(keyTimeData[keyTimeData.length - 1].split('&')[1]);
10311
10316
  if (time <= keyTimeStart) {
10312
10317
  return this.getCurveValue(keyTimeData[0], keyTimeStart);
10313
10318
  }
@@ -10315,7 +10320,9 @@ var BezierCurve = /*#__PURE__*/ function(ValueGetter) {
10315
10320
  return this.getCurveValue(keyTimeData[keyTimeData.length - 1], keyTimeEnd);
10316
10321
  }
10317
10322
  for(var i = 0; i < keyTimeData.length; i++){
10318
- var _keyTimeData_i_split = keyTimeData[i].split("&"), xMin = _keyTimeData_i_split[0], xMax = _keyTimeData_i_split[1];
10323
+ var xMin = this.curveMap[keyTimeData[i]].timeStart;
10324
+ var xMax = this.curveMap[keyTimeData[i]].timeEnd;
10325
+ // const [xMin, xMax] = keyTimeData[i].split('&');
10319
10326
  if (time >= Number(xMin) && time < Number(xMax)) {
10320
10327
  result = this.getCurveValue(keyTimeData[i], time);
10321
10328
  break;
@@ -10328,12 +10335,13 @@ var BezierCurve = /*#__PURE__*/ function(ValueGetter) {
10328
10335
  var time = (t1 - t0) / ts;
10329
10336
  var result = 0;
10330
10337
  var keyTimeData = Object.keys(this.curveMap);
10331
- var keyTimeStart = Number(keyTimeData[0].split("&")[0]);
10338
+ var keyTimeStart = this.curveMap[keyTimeData[0]].timeStart;
10332
10339
  if (time <= keyTimeStart) {
10333
10340
  return 0;
10334
10341
  }
10335
10342
  for(var i = 0; i < keyTimeData.length; i++){
10336
- var _keyTimeData_i_split = keyTimeData[i].split("&"), xMin = _keyTimeData_i_split[0], xMax = _keyTimeData_i_split[1];
10343
+ var xMin = this.curveMap[keyTimeData[i]].timeStart;
10344
+ var xMax = this.curveMap[keyTimeData[i]].timeEnd;
10337
10345
  if (time >= Number(xMax)) {
10338
10346
  result += ts * this.getCurveIntegrateValue(keyTimeData[i], Number(xMax));
10339
10347
  }
@@ -17667,6 +17675,12 @@ var particleUniformTypeMap = {
17667
17675
  var ParticleMesh = /*#__PURE__*/ function() {
17668
17676
  function ParticleMesh(engine, props) {
17669
17677
  this.particleCount = 0;
17678
+ this.cachedVelocity = new Vector3();
17679
+ this.cachedRotationVector3 = new Vector3();
17680
+ this.cachedRotationMatrix = new Matrix3();
17681
+ this.cachedLinearMove = new Vector3();
17682
+ this.tempMatrix3 = new Matrix3();
17683
+ this.tempVector3 = new Vector3();
17670
17684
  this.VERT_MAX_KEY_FRAME_COUNT = 0;
17671
17685
  var _engine_renderer;
17672
17686
  var env = ((_engine_renderer = engine.renderer) != null ? _engine_renderer : {}).env;
@@ -18070,39 +18084,40 @@ var ParticleMesh = /*#__PURE__*/ function() {
18070
18084
  // if (!uParams) {
18071
18085
  // return;
18072
18086
  // }
18073
- var localTime = new Float32Array([
18074
- this.time
18075
- ])[0];
18087
+ var localTime = this.time;
18076
18088
  var particleCount = Math.ceil(aPosArray.length / 12);
18077
18089
  // calculate particle translation
18078
18090
  var aTranslationArray = this.geometry.getAttributeData("aTranslation");
18079
18091
  if (aTranslationArray.length < particleCount * 3) {
18080
- aTranslationArray = new Float32Array(particleCount * 3);
18092
+ aTranslationArray = this.expandArray(aTranslationArray, particleCount * 3);
18081
18093
  }
18082
- var velocity = new Vector3(0, 0, 0);
18094
+ var velocity = this.cachedVelocity;
18083
18095
  for(var i = 0; i < particleCount; i++){
18084
18096
  var velOffset = i * 12 + 3;
18085
18097
  velocity.set(aVelArray[velOffset], aVelArray[velOffset + 1], aVelArray[velOffset + 2]);
18086
- var trans = this.calculateTranslation(velocity, aOffsetArray[i * 4 + 2], localTime, aOffsetArray[i * 4 + 3]);
18098
+ this.calculateTranslation(velocity, aOffsetArray[i * 4 + 2], localTime, aOffsetArray[i * 4 + 3]);
18087
18099
  var aTranslationOffset = i * 3;
18088
- aTranslationArray[aTranslationOffset] = trans.x;
18089
- aTranslationArray[aTranslationOffset + 1] = trans.y;
18090
- aTranslationArray[aTranslationOffset + 2] = trans.z;
18100
+ if (aOffsetArray[i * 4 + 2] < localTime) {
18101
+ var translation = velocity.multiply(dt / 1000);
18102
+ aTranslationArray[aTranslationOffset] += translation.x;
18103
+ aTranslationArray[aTranslationOffset + 1] += translation.y;
18104
+ aTranslationArray[aTranslationOffset + 2] += translation.z;
18105
+ }
18091
18106
  }
18092
18107
  this.geometry.setAttributeData("aTranslation", aTranslationArray);
18093
18108
  // calculate particle rotation
18094
18109
  var aRotationArray = this.geometry.getAttributeData("aRotation0");
18095
18110
  if (aRotationArray.length < particleCount * 9) {
18096
- aRotationArray = new Float32Array(particleCount * 9);
18111
+ aRotationArray = this.expandArray(aRotationArray, particleCount * 9);
18097
18112
  }
18098
18113
  for(var i1 = 0; i1 < particleCount; i1++){
18099
18114
  var time = localTime - aOffsetArray[i1 * 4 + 2];
18100
18115
  var duration = aOffsetArray[i1 * 4 + 3];
18101
18116
  var life = clamp$1(time / duration, 0.0, 1.0);
18102
18117
  var aRotOffset = i1 * 8;
18103
- var aRot = new Vector3(aRotArray[aRotOffset], aRotArray[aRotOffset + 1], aRotArray[aRotOffset + 2]);
18118
+ var aRot = this.cachedRotationVector3.set(aRotArray[aRotOffset], aRotArray[aRotOffset + 1], aRotArray[aRotOffset + 2]);
18104
18119
  var aSeed = aSeedArray[i1 * 8 + 3];
18105
- var aRotation = this.transformFromRotation(aRot, life, duration, aSeed);
18120
+ var aRotation = this.transformFromRotation(aRot, life, duration, aSeed, this.cachedRotationMatrix);
18106
18121
  var aRotationOffset = i1 * 9;
18107
18122
  var matrixArray = aRotation.toArray();
18108
18123
  aRotationArray.set(matrixArray, aRotationOffset);
@@ -18111,14 +18126,16 @@ var ParticleMesh = /*#__PURE__*/ function() {
18111
18126
  // calculate linear movement
18112
18127
  var aLinearMoveArray = this.geometry.getAttributeData("aLinearMove");
18113
18128
  if (aLinearMoveArray.length < particleCount * 3) {
18114
- aLinearMoveArray = new Float32Array(particleCount * 3);
18129
+ aLinearMoveArray = this.expandArray(aLinearMoveArray, particleCount * 3);
18115
18130
  }
18131
+ var linearMove = this.cachedLinearMove;
18116
18132
  for(var i2 = 0; i2 < particleCount; i2++){
18117
18133
  var time1 = localTime - aOffsetArray[i2 * 4 + 2];
18118
18134
  var duration1 = aOffsetArray[i2 * 4 + 3];
18119
18135
  // const life = math.clamp(time / duration, 0.0, 1.0);
18120
18136
  var aSeed1 = aSeedArray[i2 * 8 + 3];
18121
- var linearMove = this.calLinearMov(time1, duration1, aSeed1);
18137
+ linearMove.setZero();
18138
+ this.calLinearMov(time1, duration1, aSeed1, linearMove);
18122
18139
  var aLinearMoveOffset = i2 * 3;
18123
18140
  aLinearMoveArray[aLinearMoveOffset] = linearMove.x;
18124
18141
  aLinearMoveArray[aLinearMoveOffset + 1] = linearMove.y;
@@ -18138,29 +18155,23 @@ var ParticleMesh = /*#__PURE__*/ function() {
18138
18155
  var uAcceleration = this.mesh.material.getVector4("uAcceleration");
18139
18156
  var uGravityModifierValue = this.mesh.material.getVector4("uGravityModifierValue");
18140
18157
  if (!uAcceleration || !uGravityModifierValue) {
18141
- return new Vector3();
18158
+ return velocity;
18142
18159
  }
18143
18160
  var dt = t1 - t0; // 相对delay的时间
18144
- var d = this.gravityModifier.getIntegrateByTime(0, dt);
18145
- var acc = [
18146
- uAcceleration.x * d,
18147
- uAcceleration.y * d,
18148
- uAcceleration.z * d
18149
- ];
18150
- // ret.addScaledVector(velData, speedIntegrate);
18151
- // ret.addScaledVector(acc, d);
18161
+ var d = this.gravityModifier.getIntegrateValue(0, dt, duration);
18162
+ var acc = this.tempVector3.set(uAcceleration.x * d, uAcceleration.y * d, uAcceleration.z * d);
18152
18163
  // speedIntegrate = speedOverLifetime.getIntegrateValue(0, time, duration);
18153
18164
  if (this.speedOverLifetime) {
18154
18165
  // dt / dur 归一化
18155
- var speed = this.speedOverLifetime.getIntegrateValue(0, dt, duration);
18156
- return velocity.clone().multiply(speed).add(acc);
18166
+ var speed = this.speedOverLifetime.getValue(dt / duration);
18167
+ return velocity.multiply(speed).add(acc);
18157
18168
  }
18158
- return velocity.clone().multiply(dt).add(acc);
18169
+ return velocity.add(acc);
18159
18170
  };
18160
- _proto.transformFromRotation = function transformFromRotation(rot, life, dur, aSeed) {
18161
- var rotation = rot.clone();
18171
+ _proto.transformFromRotation = function transformFromRotation(rot, life, dur, aSeed, result) {
18172
+ var rotation = rot;
18162
18173
  if (!this.rotationOverLifetime) {
18163
- return new Matrix3();
18174
+ return result.setZero();
18164
18175
  }
18165
18176
  if (this.rotationOverLifetime.asRotation) {
18166
18177
  // Adjust rotation based on the specified lifetime components
@@ -18211,32 +18222,33 @@ var ParticleMesh = /*#__PURE__*/ function() {
18211
18222
  }
18212
18223
  // If the rotation vector is zero, return the identity matrix
18213
18224
  if (rotation.dot(rotation) === 0.0) {
18214
- return new Matrix3().identity();
18225
+ return result.identity();
18215
18226
  }
18216
18227
  // Return the rotation matrix derived from the rotation vector
18217
- return this.mat3FromRotation(rotation);
18228
+ return this.mat3FromRotation(rotation, result);
18218
18229
  };
18219
- _proto.mat3FromRotation = function mat3FromRotation(rotation) {
18230
+ _proto.mat3FromRotation = function mat3FromRotation(rotation, result) {
18220
18231
  var d2r = Math.PI / 180;
18221
- var sinR = rotation.clone().multiply(d2r);
18222
- sinR.x = Math.sin(sinR.x);
18223
- sinR.y = Math.sin(sinR.y);
18224
- sinR.z = Math.sin(sinR.z);
18225
- var cosR = rotation.clone().multiply(d2r);
18226
- cosR.x = Math.cos(cosR.x);
18227
- cosR.y = Math.cos(cosR.y);
18228
- cosR.z = Math.cos(cosR.z);
18229
- var rotZ = new Matrix3(cosR.z, -sinR.z, 0., sinR.z, cosR.z, 0., 0., 0., 1.);
18230
- var rotY = new Matrix3(cosR.y, 0., sinR.y, 0., 1., 0., -sinR.y, 0, cosR.y);
18231
- var rotX = new Matrix3(1., 0., 0., 0, cosR.x, -sinR.x, 0., sinR.x, cosR.x);
18232
- var result = rotZ.multiply(rotY).multiply(rotX);
18232
+ var rotationXD2r = rotation.x * d2r;
18233
+ var rotationYD2r = rotation.y * d2r;
18234
+ var rotationZD2r = rotation.z * d2r;
18235
+ var sinRX = Math.sin(rotationXD2r);
18236
+ var sinRY = Math.sin(rotationYD2r);
18237
+ var sinRZ = Math.sin(rotationZD2r);
18238
+ var cosRX = Math.cos(rotationXD2r);
18239
+ var cosRY = Math.cos(rotationYD2r);
18240
+ var cosRZ = Math.cos(rotationZD2r);
18241
+ // rotZ * rotY * rotX
18242
+ result.set(cosRZ, -sinRZ, 0., sinRZ, cosRZ, 0., 0., 0., 1.); //rotZ
18243
+ result.multiply(this.tempMatrix3.set(cosRY, 0., sinRY, 0., 1., 0., -sinRY, 0, cosRY)); //rotY
18244
+ result.multiply(this.tempMatrix3.set(1., 0., 0., 0, cosRX, -sinRX, 0., sinRX, cosRX)); //rotX
18233
18245
  return result;
18234
18246
  };
18235
- _proto.calLinearMov = function calLinearMov(time, duration, aSeed) {
18236
- var mov = new Vector3();
18247
+ _proto.calLinearMov = function calLinearMov(time, duration, aSeed, result) {
18248
+ var mov = result;
18237
18249
  var lifetime = time / duration;
18238
18250
  if (!this.linearVelOverLifetime || !this.linearVelOverLifetime.enabled) {
18239
- return new Vector3();
18251
+ return mov;
18240
18252
  }
18241
18253
  if (this.linearVelOverLifetime.asMovement) {
18242
18254
  if (this.linearVelOverLifetime.x) {
@@ -18309,7 +18321,8 @@ var ParticleMesh = /*#__PURE__*/ function() {
18309
18321
  var pointData = {
18310
18322
  aPos: new Float32Array(48),
18311
18323
  aRot: new Float32Array(32),
18312
- aOffset: new Float32Array(16)
18324
+ aOffset: new Float32Array(16),
18325
+ aTranslation: new Float32Array(12)
18313
18326
  };
18314
18327
  var useSprite = this.useSprite;
18315
18328
  if (useSprite) {
@@ -18418,6 +18431,11 @@ var ParticleMesh = /*#__PURE__*/ function() {
18418
18431
  geometry.setDrawCount(this.particleCount * 6);
18419
18432
  }
18420
18433
  };
18434
+ _proto.expandArray = function expandArray(array, newSize) {
18435
+ var newArr = new Float32Array(newSize);
18436
+ newArr.set(array);
18437
+ return newArr;
18438
+ };
18421
18439
  return ParticleMesh;
18422
18440
  }();
18423
18441
  var gl2UniformSlots = [
@@ -28068,7 +28086,7 @@ registerPlugin("sprite", SpriteLoader, VFXItem, true);
28068
28086
  registerPlugin("particle", ParticleLoader, VFXItem, true);
28069
28087
  registerPlugin("cal", CalculateLoader, VFXItem, true);
28070
28088
  registerPlugin("interact", InteractLoader, VFXItem, true);
28071
- var version$1 = "2.1.0-alpha.1";
28089
+ var version$1 = "2.1.0-alpha.2";
28072
28090
  logger.info("Core version: " + version$1 + ".");
28073
28091
 
28074
28092
  var _obj;
@@ -29749,7 +29767,7 @@ setMaxSpriteMeshItemCount(8);
29749
29767
  */ Mesh.create = function(engine, props) {
29750
29768
  return new ThreeMesh(engine, props);
29751
29769
  };
29752
- var version = "2.1.0-alpha.1";
29770
+ var version = "2.1.0-alpha.2";
29753
29771
  logger.info("THREEJS plugin version: " + version + ".");
29754
29772
 
29755
29773
  export { AbstractPlugin, ActivationPlayable, ActivationPlayableAsset, ActivationTrack, AnimationClip, AnimationClipPlayable, AssetLoader, AssetManager, BYTES_TYPE_MAP, 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, 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, FilterMode, Float16ArrayWrapper, Framebuffer, GLSLVersion, GPUCapability, Geometry, GlobalUniforms, GradientValue, HELP_LINK, HitTestType, InteractComponent, InteractLoader, InteractMesh, Item, KTXTexture, LineSegments, LinearValue, Material, MaterialDataBlock, MaterialRenderType, Mesh, ObjectBindingTrack, OrderType, PLAYER_OPTIONS_ENV_EDITOR, POST_PROCESS_SETTINGS, ParticleBehaviourPlayable, ParticleBehaviourPlayableAsset, ParticleLoader, ParticleMesh, ParticleSystem, ParticleSystemRenderer, PassTextureCache, PathSegments, PluginSystem, PostProcessVolume, 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, SemanticMap, SerializationHelper, Shader, ShaderCompileResultStatus, ShaderFactory, ShaderType, ShaderVariant, SpriteColorPlayable, 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, addByOrder, addItem, addItemWithOrder, applyMixins, assertExist, asserts, base64ToFile, blend, calculateTranslation, canvasPool, colorGradingFrag, colorStopsFromGradient, colorToArr$1 as colorToArr, combineImageTemplate, createCopyShader, createGLContext, createKeyFrameMeta, createShape, createValueGetter, decimalEqual, defaultGlobalVolume, 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, isSceneJSON, isSceneURL, isSceneWithOptions, 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, 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 };