@galacean/effects-threejs 2.5.0-alpha.2 → 2.5.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 threejs plugin for the web
4
4
  * Author: Ant Group CO., Ltd.
5
5
  * Contributors: 燃然,飂兮,十弦,云垣,茂安,意绮
6
- * Version: v2.5.0-alpha.2
6
+ * Version: v2.5.0-alpha.4
7
7
  */
8
8
 
9
9
  import * as THREE from 'three';
@@ -12869,25 +12869,47 @@ var singleSplits = [
12869
12869
  };
12870
12870
  this.configureMaterial(this.renderer);
12871
12871
  if (baseRenderComponentData.geometry) {
12872
- this.geometry = this.engine.findObject(baseRenderComponentData.geometry);
12872
+ var baseGeometry = this.engine.findObject(baseRenderComponentData.geometry);
12873
12873
  var uvTransform = baseRenderComponentData.splits && !baseRenderComponentData.textureSheetAnimation ? baseRenderComponentData.splits[0] : singleSplits[0];
12874
12874
  var x = uvTransform[0];
12875
12875
  var y = uvTransform[1];
12876
12876
  var isRotate90 = uvTransform[4];
12877
12877
  var width = isRotate90 ? uvTransform[3] : uvTransform[2];
12878
12878
  var height = isRotate90 ? uvTransform[2] : uvTransform[3];
12879
- var aUV = this.geometry.getAttributeData("aUV");
12880
- var aPos = this.geometry.getAttributeData("aPos");
12881
- if (aUV && aPos) {
12879
+ var angle = isRotate90 === 0 ? 0 : -Math.PI / 2;
12880
+ var aUV = baseGeometry.getAttributeData("aUV");
12881
+ var aPos = baseGeometry.getAttributeData("aPos");
12882
+ var indices = baseGeometry.getIndexData();
12883
+ var tempPosition = [
12884
+ 0,
12885
+ 0
12886
+ ];
12887
+ if (aUV && aPos && indices) {
12882
12888
  var vertexCount = aUV.length / 2;
12883
12889
  for(var i = 0; i < vertexCount; i++){
12884
12890
  var positionOffset = i * 3;
12885
12891
  var uvOffset = i * 2;
12886
12892
  var positionX = aPos[positionOffset];
12887
12893
  var positionY = aPos[positionOffset + 1];
12888
- aUV[uvOffset] = (positionX + 0.5) * width + x;
12889
- aUV[uvOffset + 1] = (positionY + 0.5) * height + y;
12894
+ tempPosition[0] = positionX;
12895
+ tempPosition[1] = positionY;
12896
+ rotateVec2(tempPosition, tempPosition, angle);
12897
+ aUV[uvOffset] = (tempPosition[0] + 0.5) * width + x;
12898
+ aUV[uvOffset + 1] = (tempPosition[1] + 0.5) * height + y;
12890
12899
  }
12900
+ this.geometry.setAttributeData("aPos", aPos.slice());
12901
+ this.geometry.setAttributeData("aUV", aUV.slice());
12902
+ this.geometry.setIndexData(indices.slice());
12903
+ this.geometry.setDrawCount(indices.length);
12904
+ }
12905
+ this.geometry.subMeshes.length = 0;
12906
+ for(var _iterator = _create_for_of_iterator_helper_loose(baseGeometry.subMeshes), _step; !(_step = _iterator()).done;){
12907
+ var subMesh = _step.value;
12908
+ this.geometry.subMeshes.push({
12909
+ offset: subMesh.offset,
12910
+ indexCount: subMesh.indexCount,
12911
+ vertexCount: subMesh.vertexCount
12912
+ });
12891
12913
  }
12892
12914
  } else {
12893
12915
  this.geometry = this.defaultGeometry;
@@ -21246,7 +21268,6 @@ var LateUpdateTickData = /*#__PURE__*/ function(TickData) {
21246
21268
  /**
21247
21269
  * 合成暂停/播放 标识
21248
21270
  */ _this.paused = false;
21249
- _this.lastVideoUpdateTime = 0;
21250
21271
  _this.isEndCalled = false;
21251
21272
  _this._textures = [];
21252
21273
  var _props_reusable = props.reusable, reusable = _props_reusable === void 0 ? false : _props_reusable, _props_speed = props.speed, speed = _props_speed === void 0 ? 1 : _props_speed, _props_baseRenderOrder = props.baseRenderOrder, baseRenderOrder = _props_baseRenderOrder === void 0 ? 0 : _props_baseRenderOrder, renderer = props.renderer, event = props.event, width = props.width, height = props.height, handleItemMessage = props.handleItemMessage;
@@ -21488,7 +21509,6 @@ var LateUpdateTickData = /*#__PURE__*/ function(TickData) {
21488
21509
  var previousCompositionTime = this.time;
21489
21510
  this.updateCompositionTime(deltaTime * this.speed / 1000);
21490
21511
  var deltaTimeInMs = (this.time - previousCompositionTime) * 1000;
21491
- this.updateVideo();
21492
21512
  // 更新 model-tree-plugin
21493
21513
  this.updatePluginLoaders(deltaTimeInMs);
21494
21514
  this.sceneTicking.update.tick(deltaTimeInMs);
@@ -21522,20 +21542,6 @@ var LateUpdateTickData = /*#__PURE__*/ function(TickData) {
21522
21542
  }
21523
21543
  };
21524
21544
  /**
21525
- * 更新视频数据到纹理
21526
- * @override
21527
- */ _proto.updateVideo = function updateVideo() {
21528
- var now = performance.now();
21529
- // 视频固定30帧更新
21530
- if (now - this.lastVideoUpdateTime > 33) {
21531
- var _this_textures;
21532
- ((_this_textures = this.textures) != null ? _this_textures : []).forEach(function(tex) {
21533
- return tex == null ? void 0 : tex.uploadCurrentVideoFrame();
21534
- });
21535
- this.lastVideoUpdateTime = now;
21536
- }
21537
- };
21538
- /**
21539
21545
  * 更新相机
21540
21546
  * @override
21541
21547
  */ _proto.updateCamera = function updateCamera() {
@@ -22795,6 +22801,7 @@ var SpriteComponent = /*#__PURE__*/ function(BaseRenderComponent) {
22795
22801
  _this.engine.renderErrors.add(e);
22796
22802
  });
22797
22803
  }
22804
+ this.renderer.texture.uploadCurrentVideoFrame();
22798
22805
  }
22799
22806
  if (ta) {
22800
22807
  var _this_material_getVector4;
@@ -26808,10 +26815,10 @@ var SerializationHelper = /*#__PURE__*/ function() {
26808
26815
  }
26809
26816
  var _proto = AssetLoader.prototype;
26810
26817
  _proto.loadGUID = function loadGUID(dataPath) {
26811
- var guid = dataPath.id;
26812
26818
  if (!dataPath) {
26813
26819
  return null;
26814
26820
  }
26821
+ var guid = dataPath.id;
26815
26822
  var effectsObjectData = this.findData(guid);
26816
26823
  var effectsObject;
26817
26824
  if (!effectsObjectData) {
@@ -28391,7 +28398,7 @@ function getStandardSpriteContent(sprite, transform) {
28391
28398
  return ret;
28392
28399
  }
28393
28400
 
28394
- var version$2 = "2.5.0-alpha.2";
28401
+ var version$2 = "2.5.0-alpha.4";
28395
28402
  var v0 = /^(\d+)\.(\d+)\.(\d+)(-(\w+)\.\d+)?$/;
28396
28403
  var standardVersion = /^(\d+)\.(\d+)$/;
28397
28404
  var reverseParticle = false;
@@ -31641,7 +31648,7 @@ registerPlugin("sprite", SpriteLoader, VFXItem);
31641
31648
  registerPlugin("particle", ParticleLoader, VFXItem);
31642
31649
  registerPlugin("cal", CalculateLoader, VFXItem);
31643
31650
  registerPlugin("interact", InteractLoader, VFXItem);
31644
- var version$1 = "2.5.0-alpha.2";
31651
+ var version$1 = "2.5.0-alpha.4";
31645
31652
  logger.info("Core version: " + version$1 + ".");
31646
31653
 
31647
31654
  var _obj;
@@ -33243,7 +33250,7 @@ setMaxSpriteMeshItemCount(8);
33243
33250
  */ Mesh.create = function(engine, props) {
33244
33251
  return new ThreeMesh(engine, props);
33245
33252
  };
33246
- var version = "2.5.0-alpha.2";
33253
+ var version = "2.5.0-alpha.4";
33247
33254
  logger.info("THREEJS plugin version: " + version + ".");
33248
33255
 
33249
33256
  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, DEFAULT_FONTS, DEFAULT_FPS, Database, Deferred, DestroyOptions, Downloader, EFFECTS_COPY_MESH_NAME, EVENT_TYPE_CLICK, EVENT_TYPE_TOUCH_END, EVENT_TYPE_TOUCH_MOVE, EVENT_TYPE_TOUCH_START, EffectComponent, EffectsObject, EffectsPackage, Ellipse, Engine, EventEmitter, EventSystem, Fake3DAnimationMode, Fake3DComponent, FilterMode, Float16ArrayWrapper, FloatPropertyPlayableAsset, FloatPropertyTrack, Framebuffer, GLSLVersion, GPUCapability, Geometry, GlobalUniforms, GradientValue, GraphicsPath, HELP_LINK, HitTestType, InteractComponent, InteractLoader, InteractMesh, Item, KTXTexture, LineSegments, LinearValue, MaskMode, MaskProcessor, 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, PolyStar, Polygon, 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, ShapePath, SpriteColorPlayableAsset, SpriteColorTrack, SpriteComponent, SpriteLoader, StarType, 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, buildLine, calculateTranslation, canvasPool, closePointEps, colorGradingFrag, colorStopsFromGradient, colorToArr$1 as colorToArr, combineImageTemplate, createCopyShader, createGLContext, createKeyFrameMeta, createShape, createValueGetter, curveEps, 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, 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, isOpenHarmony, isSimulatorCellPhone, isString, isUniformStruct, isUniformStructArray, isValidFontFamily, isWebGL2, isWechatMiniApp, itemFrag, itemFrame_frag as 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, thresholdFrag, throwDestroyedError, trailVert, translatePoint, trianglesFromRect, unregisterPlugin, valIfUndefined, value, valueDefine, vecFill, vecMulCombine, version, vertexFormatType2GLType };