@galacean/effects-threejs 1.5.0 → 1.6.0-beta.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.5.0
6
+ * Version: v1.6.0-beta.0
7
7
  */
8
8
 
9
9
  import * as THREE from 'three';
@@ -700,7 +700,7 @@ function isValidFontFamily(fontFamily) {
700
700
  * Name: @galacean/effects-specification
701
701
  * Description: Galacean Effects JSON Specification
702
702
  * Author: Ant Group CO., Ltd.
703
- * Version: v1.3.0-alpha.0
703
+ * Version: v1.3.0
704
704
  */
705
705
 
706
706
  /*********************************************/
@@ -10071,10 +10071,23 @@ var EventSystem = /** @class */ (function () {
10071
10071
  var getTouchEventValue = function (event, x, y, dx, dy) {
10072
10072
  if (dx === void 0) { dx = 0; }
10073
10073
  if (dy === void 0) { dy = 0; }
10074
- var _a = _this.target, width = _a.width, height = _a.height;
10075
- var ts = performance.now();
10076
10074
  var vx = 0;
10077
10075
  var vy = 0;
10076
+ var ts = performance.now();
10077
+ if (!_this.target) {
10078
+ logger.error('Trigger TouchEvent after EventSystem is disposed');
10079
+ return {
10080
+ x: x,
10081
+ y: y,
10082
+ vx: 0,
10083
+ vy: vy,
10084
+ dx: dx,
10085
+ dy: dy,
10086
+ ts: ts,
10087
+ width: 0, height: 0, origin: event,
10088
+ };
10089
+ }
10090
+ var _a = _this.target, width = _a.width, height = _a.height;
10078
10091
  if (lastTouch) {
10079
10092
  var dt = ts - lastTouch.ts;
10080
10093
  vx = ((dx - lastTouch.dx) / dt) || 0;
@@ -13609,10 +13622,13 @@ var InteractVFXItem = /** @class */ (function (_super) {
13609
13622
  var dragEvent;
13610
13623
  var handlerMap = {
13611
13624
  touchstart: function (event) {
13612
- var _a;
13625
+ var _a, _b;
13626
+ if (!((_a = _this.composition) === null || _a === void 0 ? void 0 : _a.interactive)) {
13627
+ return;
13628
+ }
13613
13629
  _this.dragEvent = null;
13614
13630
  _this.bouncingArg = null;
13615
- var camera = (_a = _this.composition) === null || _a === void 0 ? void 0 : _a.camera;
13631
+ var camera = (_b = _this.composition) === null || _b === void 0 ? void 0 : _b.camera;
13616
13632
  dragEvent = {
13617
13633
  x: event.x,
13618
13634
  y: event.y,
@@ -13627,6 +13643,10 @@ var InteractVFXItem = /** @class */ (function (_super) {
13627
13643
  _this.bouncingArg = event;
13628
13644
  },
13629
13645
  touchend: function (event) {
13646
+ var _a;
13647
+ if (!((_a = _this.composition) === null || _a === void 0 ? void 0 : _a.interactive)) {
13648
+ return;
13649
+ }
13630
13650
  var bouncingArg = _this.bouncingArg;
13631
13651
  if (!shouldIgnoreBouncing(bouncingArg, 3) && bouncingArg) {
13632
13652
  var speed = 5;
@@ -13651,12 +13671,12 @@ var InteractVFXItem = /** @class */ (function (_super) {
13651
13671
  // OVERRIDE
13652
13672
  };
13653
13673
  InteractVFXItem.prototype.handleDragMove = function (evt, event) {
13654
- var _a, _b;
13655
- if (!(evt && evt.cameraParam) || !this.composition) {
13674
+ var _a, _b, _c;
13675
+ if (!(evt && evt.cameraParam) || !((_a = this.composition) === null || _a === void 0 ? void 0 : _a.interactive)) {
13656
13676
  return;
13657
13677
  }
13658
13678
  var options = this.ui.options;
13659
- var _c = evt.cameraParam, position = _c.position, fov = _c.fov;
13679
+ var _d = evt.cameraParam, position = _d.position, fov = _d.fov;
13660
13680
  var dy = event.dy;
13661
13681
  var dx = event.dx * event.width / event.height;
13662
13682
  var depth = position[2];
@@ -13666,17 +13686,17 @@ var InteractVFXItem = /** @class */ (function (_super) {
13666
13686
  var nx = position[0] - width;
13667
13687
  var ny = position[1] - height;
13668
13688
  if (options.dxRange) {
13669
- var _d = __read$3(options.dxRange, 2), min = _d[0], max = _d[1];
13689
+ var _e = __read$3(options.dxRange, 2), min = _e[0], max = _e[1];
13670
13690
  nx = clamp$1(nx, min, max);
13671
13691
  if (nx !== min && nx !== max && min !== max) {
13672
- (_a = event.origin) === null || _a === void 0 ? void 0 : _a.preventDefault();
13692
+ (_b = event.origin) === null || _b === void 0 ? void 0 : _b.preventDefault();
13673
13693
  }
13674
13694
  }
13675
13695
  if (options.dyRange) {
13676
- var _e = __read$3(options.dyRange, 2), min = _e[0], max = _e[1];
13696
+ var _f = __read$3(options.dyRange, 2), min = _f[0], max = _f[1];
13677
13697
  ny = clamp$1(ny, min, max);
13678
13698
  if (ny !== min && ny !== max && min !== max) {
13679
- (_b = event.origin) === null || _b === void 0 ? void 0 : _b.preventDefault();
13699
+ (_c = event.origin) === null || _c === void 0 ? void 0 : _c.preventDefault();
13680
13700
  }
13681
13701
  }
13682
13702
  this.composition.camera.position = new Vector3(nx, ny, depth);
@@ -21881,7 +21901,7 @@ var filters = {
21881
21901
  * Name: @galacean/effects-specification
21882
21902
  * Description: Galacean Effects JSON Specification
21883
21903
  * Author: Ant Group CO., Ltd.
21884
- * Version: v1.3.0-alpha.0
21904
+ * Version: v1.3.0
21885
21905
  */
21886
21906
 
21887
21907
  /*********************************************/
@@ -25025,6 +25045,7 @@ var Composition = /** @class */ (function () {
25025
25045
  this.camera = new Camera(this.name, __assign$1(__assign$1({}, sourceContent === null || sourceContent === void 0 ? void 0 : sourceContent.camera), { aspect: width / height }));
25026
25046
  this.url = scene.url;
25027
25047
  this.assigned = true;
25048
+ this.interactive = true;
25028
25049
  this.onPlayerPause = onPlayerPause;
25029
25050
  this.onMessageItem = onMessageItem;
25030
25051
  this.onEnd = onEnd;
@@ -25404,7 +25425,7 @@ var Composition = /** @class */ (function () {
25404
25425
  * @param options - 最大求交数和求交时的回调
25405
25426
  */
25406
25427
  Composition.prototype.hitTest = function (x, y, force, options) {
25407
- if (this.isDestroyed) {
25428
+ if (this.isDestroyed || !this.interactive) {
25408
25429
  return [];
25409
25430
  }
25410
25431
  var regions = [];
@@ -27402,7 +27423,7 @@ Geometry.create = function (engine, options) {
27402
27423
  Mesh.create = function (engine, props) {
27403
27424
  return new ThreeMesh(engine, props);
27404
27425
  };
27405
- var version = "1.5.0";
27426
+ var version = "1.6.0-beta.0";
27406
27427
  logger.info('THREEJS plugin version: ' + version);
27407
27428
 
27408
27429
  export { AbstractPlugin, AssetManager, BYTES_TYPE_MAP, BezierCurve, BezierCurvePath, 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, 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, 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, decimalEqual, 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, isAlipayMiniApp, isAndroid, isArray, isFunction, isIOS, isObject, isScene, isSimulatorCellPhone, isString, isUniformStruct, isUniformStructArray, isValidFontFamily, isWebGL2, itemFrag, itemFrameFrag, itemVert, loadBinary, loadBlob, loadImage, loadMedia, loadVideo, loadWebPOptional, logger, index as math, maxSpriteMeshItemCount, maxSpriteTextureCount, modifyMaxKeyframeShader, nearestPowerOfTwo, noop, numberToFix, parsePercent$1 as parsePercent, particleFrag, particleOriginTranslateMap, particleUniformTypeMap, particleVert, pluginLoaderMap, pointOnLine, 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 };