@galacean/effects-core 2.1.0-alpha.3 → 2.1.0-alpha.4

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 core for the web
4
4
  * Author: Ant Group CO., Ltd.
5
5
  * Contributors: 燃然,飂兮,十弦,云垣,茂安,意绮
6
- * Version: v2.1.0-alpha.3
6
+ * Version: v2.1.0-alpha.4
7
7
  */
8
8
 
9
9
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
@@ -4251,6 +4251,9 @@ var MaterialBlending;
4251
4251
  /**
4252
4252
  * 自发光
4253
4253
  */ RenderMode3D["emissive"] = "emissive";
4254
+ /**
4255
+ * 漫反射
4256
+ */ RenderMode3D["diffuse"] = "diffuse";
4254
4257
  })(RenderMode3D || (RenderMode3D = {}));
4255
4258
 
4256
4259
  var TextOverflow;
@@ -10303,10 +10306,11 @@ var BezierCurve = /*#__PURE__*/ function(ValueGetter) {
10303
10306
  timeEnd: Number(e.x)
10304
10307
  };
10305
10308
  }
10309
+ this.keyTimeData = Object.keys(this.curveMap);
10306
10310
  };
10307
10311
  _proto.getValue = function getValue(time) {
10308
10312
  var result = 0;
10309
- var keyTimeData = Object.keys(this.curveMap);
10313
+ var keyTimeData = this.keyTimeData;
10310
10314
  var keyTimeStart = this.curveMap[keyTimeData[0]].timeStart;
10311
10315
  var keyTimeEnd = this.curveMap[keyTimeData[keyTimeData.length - 1]].timeEnd;
10312
10316
  // const keyTimeStart = Number(keyTimeData[0].split('&')[0]);
@@ -18070,10 +18074,10 @@ var ParticleMesh = /*#__PURE__*/ function() {
18070
18074
  };
18071
18075
  _proto.onUpdate = function onUpdate(dt) {
18072
18076
  var aPosArray = this.geometry.getAttributeData("aPos"); // vector3
18073
- var particleCount = Math.ceil(aPosArray.length / 12);
18074
- this.applyTranslation(particleCount, dt);
18075
- this.applyRotation(particleCount, dt);
18076
- this.applyLinearMove(particleCount, dt);
18077
+ var vertexCount = Math.ceil(aPosArray.length / 12);
18078
+ this.applyTranslation(vertexCount, dt);
18079
+ this.applyRotation(vertexCount, dt);
18080
+ this.applyLinearMove(vertexCount, dt);
18077
18081
  };
18078
18082
  _proto.minusTime = function minusTime(time) {
18079
18083
  var aOffset = this.geometry.getAttributeData("aOffset");
@@ -18216,13 +18220,13 @@ var ParticleMesh = /*#__PURE__*/ function() {
18216
18220
  geometry.setDrawCount(this.particleCount * 6);
18217
18221
  }
18218
18222
  };
18219
- _proto.applyTranslation = function applyTranslation(particleCount, deltaTime) {
18223
+ _proto.applyTranslation = function applyTranslation(vertexCount, deltaTime) {
18220
18224
  var localTime = this.time;
18221
18225
  var aTranslationArray = this.geometry.getAttributeData("aTranslation");
18222
18226
  var aVelArray = this.geometry.getAttributeData("aVel"); // vector3
18223
18227
  var aOffsetArray = this.geometry.getAttributeData("aOffset");
18224
- if (aTranslationArray.length < particleCount * 3) {
18225
- aTranslationArray = this.expandArray(aTranslationArray, particleCount * 3);
18228
+ if (aTranslationArray.length < vertexCount * 3) {
18229
+ aTranslationArray = this.expandArray(aTranslationArray, vertexCount * 3);
18226
18230
  }
18227
18231
  // const velocity = this.cachedVelocity;
18228
18232
  var velocityX = 0;
@@ -18230,7 +18234,7 @@ var ParticleMesh = /*#__PURE__*/ function() {
18230
18234
  var velocityZ = 0;
18231
18235
  var uAcceleration = this.mesh.material.getVector4("uAcceleration");
18232
18236
  var uGravityModifierValue = this.mesh.material.getVector4("uGravityModifierValue");
18233
- for(var i = 0; i < particleCount; i++){
18237
+ for(var i = 0; i < vertexCount; i += 4){
18234
18238
  var velOffset = i * 12 + 3;
18235
18239
  velocityX = aVelArray[velOffset];
18236
18240
  velocityY = aVelArray[velOffset + 1];
@@ -18262,24 +18266,36 @@ var ParticleMesh = /*#__PURE__*/ function() {
18262
18266
  var aTranslationOffset = i * 3;
18263
18267
  if (aOffsetArray[i * 4 + 2] < localTime) {
18264
18268
  // const translation = velocity.multiply(deltaTime / 1000);
18265
- aTranslationArray[aTranslationOffset] += velocityX * (deltaTime / 1000);
18266
- aTranslationArray[aTranslationOffset + 1] += velocityY * (deltaTime / 1000);
18267
- aTranslationArray[aTranslationOffset + 2] += velocityZ * (deltaTime / 1000);
18269
+ var aTranslationX = velocityX * (deltaTime / 1000);
18270
+ var aTranslationY = velocityY * (deltaTime / 1000);
18271
+ var aTranslationZ = velocityZ * (deltaTime / 1000);
18272
+ aTranslationArray[aTranslationOffset] += aTranslationX;
18273
+ aTranslationArray[aTranslationOffset + 1] += aTranslationY;
18274
+ aTranslationArray[aTranslationOffset + 2] += aTranslationZ;
18275
+ aTranslationArray[aTranslationOffset + 3] += aTranslationX;
18276
+ aTranslationArray[aTranslationOffset + 4] += aTranslationY;
18277
+ aTranslationArray[aTranslationOffset + 5] += aTranslationZ;
18278
+ aTranslationArray[aTranslationOffset + 6] += aTranslationX;
18279
+ aTranslationArray[aTranslationOffset + 7] += aTranslationY;
18280
+ aTranslationArray[aTranslationOffset + 8] += aTranslationZ;
18281
+ aTranslationArray[aTranslationOffset + 9] += aTranslationX;
18282
+ aTranslationArray[aTranslationOffset + 10] += aTranslationY;
18283
+ aTranslationArray[aTranslationOffset + 11] += aTranslationZ;
18268
18284
  }
18269
18285
  }
18270
18286
  this.geometry.setAttributeData("aTranslation", aTranslationArray);
18271
18287
  };
18272
- _proto.applyRotation = function applyRotation(particleCount, deltaTime) {
18288
+ _proto.applyRotation = function applyRotation(vertexCount, deltaTime) {
18273
18289
  var aRotationArray = this.geometry.getAttributeData("aRotation0");
18274
18290
  var aOffsetArray = this.geometry.getAttributeData("aOffset");
18275
18291
  var aRotArray = this.geometry.getAttributeData("aRot"); // vector3
18276
18292
  var aSeedArray = this.geometry.getAttributeData("aSeed"); // float
18277
18293
  var localTime = this.time;
18278
18294
  var aRotationMatrix = this.cachedRotationMatrix;
18279
- if (aRotationArray.length < particleCount * 9) {
18280
- aRotationArray = this.expandArray(aRotationArray, particleCount * 9);
18295
+ if (aRotationArray.length < vertexCount * 9) {
18296
+ aRotationArray = this.expandArray(aRotationArray, vertexCount * 9);
18281
18297
  }
18282
- for(var i = 0; i < particleCount; i++){
18298
+ for(var i = 0; i < vertexCount; i += 4){
18283
18299
  var time = localTime - aOffsetArray[i * 4 + 2];
18284
18300
  var duration = aOffsetArray[i * 4 + 3];
18285
18301
  var life = clamp$1(time / duration, 0.0, 1.0);
@@ -18357,20 +18373,25 @@ var ParticleMesh = /*#__PURE__*/ function() {
18357
18373
  var aRotationOffset = i * 9;
18358
18374
  var matrixArray = aRotationMatrix.elements;
18359
18375
  aRotationArray.set(matrixArray, aRotationOffset);
18376
+ if (i + 4 <= vertexCount) {
18377
+ aRotationArray.set(matrixArray, aRotationOffset + 9);
18378
+ aRotationArray.set(matrixArray, aRotationOffset + 18);
18379
+ aRotationArray.set(matrixArray, aRotationOffset + 27);
18380
+ }
18360
18381
  }
18361
18382
  this.geometry.setAttributeData("aRotation0", aRotationArray);
18362
18383
  };
18363
- _proto.applyLinearMove = function applyLinearMove(particleCount, deltaTime) {
18384
+ _proto.applyLinearMove = function applyLinearMove(vertexCount, deltaTime) {
18364
18385
  var aLinearMoveArray = this.geometry.getAttributeData("aLinearMove");
18365
18386
  var aOffsetArray = this.geometry.getAttributeData("aOffset");
18366
18387
  var aSeedArray = this.geometry.getAttributeData("aSeed"); // float
18367
18388
  var localTime = this.time;
18368
- if (aLinearMoveArray.length < particleCount * 3) {
18369
- aLinearMoveArray = this.expandArray(aLinearMoveArray, particleCount * 3);
18389
+ if (aLinearMoveArray.length < vertexCount * 3) {
18390
+ aLinearMoveArray = this.expandArray(aLinearMoveArray, vertexCount * 3);
18370
18391
  }
18371
18392
  var linearMove = this.cachedLinearMove;
18372
18393
  if (this.linearVelOverLifetime && this.linearVelOverLifetime.enabled) {
18373
- for(var i = 0; i < particleCount; i++){
18394
+ for(var i = 0; i < vertexCount; i += 4){
18374
18395
  var time = localTime - aOffsetArray[i * 4 + 2];
18375
18396
  var duration = aOffsetArray[i * 4 + 3];
18376
18397
  // const life = math.clamp(time / duration, 0.0, 1.0);
@@ -18427,6 +18448,15 @@ var ParticleMesh = /*#__PURE__*/ function() {
18427
18448
  aLinearMoveArray[aLinearMoveOffset] = linearMove.x;
18428
18449
  aLinearMoveArray[aLinearMoveOffset + 1] = linearMove.y;
18429
18450
  aLinearMoveArray[aLinearMoveOffset + 2] = linearMove.z;
18451
+ aLinearMoveArray[aLinearMoveOffset + 3] = linearMove.x;
18452
+ aLinearMoveArray[aLinearMoveOffset + 4] = linearMove.y;
18453
+ aLinearMoveArray[aLinearMoveOffset + 5] = linearMove.z;
18454
+ aLinearMoveArray[aLinearMoveOffset + 6] = linearMove.x;
18455
+ aLinearMoveArray[aLinearMoveOffset + 7] = linearMove.y;
18456
+ aLinearMoveArray[aLinearMoveOffset + 8] = linearMove.z;
18457
+ aLinearMoveArray[aLinearMoveOffset + 9] = linearMove.x;
18458
+ aLinearMoveArray[aLinearMoveOffset + 10] = linearMove.y;
18459
+ aLinearMoveArray[aLinearMoveOffset + 11] = linearMove.z;
18430
18460
  }
18431
18461
  }
18432
18462
  this.geometry.setAttributeData("aLinearMove", aLinearMoveArray);
@@ -21179,6 +21209,7 @@ var VFXItem = /*#__PURE__*/ function(EffectsObject) {
21179
21209
  var component = _step.value;
21180
21210
  if (component.enabled && !component.isStartCalled) {
21181
21211
  component.onStart();
21212
+ component.isStartCalled = true;
21182
21213
  }
21183
21214
  }
21184
21215
  for(var _iterator1 = _create_for_of_iterator_helper_loose(this.components), _step1; !(_step1 = _iterator1()).done;){
@@ -28101,7 +28132,7 @@ registerPlugin("sprite", SpriteLoader, VFXItem, true);
28101
28132
  registerPlugin("particle", ParticleLoader, VFXItem, true);
28102
28133
  registerPlugin("cal", CalculateLoader, VFXItem, true);
28103
28134
  registerPlugin("interact", InteractLoader, VFXItem, true);
28104
- var version = "2.1.0-alpha.3";
28135
+ var version = "2.1.0-alpha.4";
28105
28136
  logger.info("Core version: " + version + ".");
28106
28137
 
28107
28138
  export { AbstractPlugin, ActivationPlayable, ActivationPlayableAsset, ActivationTrack, AnimationClip, AnimationClipPlayable, AssetLoader, AssetManager, BYTES_TYPE_MAP, Behaviour, BezierCurve, BezierCurvePath, BezierCurveQuat, BinaryAsset, COMPRESSED_TEXTURE, 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, TextComponent, TextComponentBase, TextLayout, TextLoader, TextStyle, Texture, TextureFactory, TextureLoadAction, TextureSourceType, TextureStoreAction, 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, sortByOrder, index$1 as spec, spriteMeshShaderFromFilter, spriteMeshShaderFromRenderInfo, spriteMeshShaderIdFromRenderInfo, thresholdFrag, throwDestroyedError, trailVert, translatePoint, trianglesFromRect, unregisterPlugin, valIfUndefined, value, valueDefine, vecFill, vecMulCombine, version, vertexFormatType2GLType };