@galacean/effects 1.2.3 → 1.2.5

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/weapp.mjs CHANGED
@@ -9237,10 +9237,10 @@ var VFXItem = /** @class */ (function () {
9237
9237
  };
9238
9238
  VFXItem.prototype.translateByPixel = function (x, y) {
9239
9239
  if (this.composition) {
9240
+ // @ts-expect-error
9241
+ var _a = this.composition.renderer.canvas.getBoundingClientRect(), width = _a.width, height = _a.height;
9240
9242
  var z = this.transform.getWorldPosition().z;
9241
- var _a = this.composition.camera.getInverseVPRatio(z), rx = _a.x, ry = _a.y;
9242
- var width = this.composition.renderer.getWidth() / 2;
9243
- var height = this.composition.renderer.getHeight() / 2;
9243
+ var _b = this.composition.camera.getInverseVPRatio(z), rx = _b.x, ry = _b.y;
9244
9244
  this.transform.translate(2 * x * rx / width, -2 * y * ry / height, 0);
9245
9245
  }
9246
9246
  };
@@ -13136,9 +13136,13 @@ var InteractVFXItem = /** @class */ (function (_super) {
13136
13136
  this.handleDragMove(this.dragEvent, this.bouncingArg);
13137
13137
  }
13138
13138
  };
13139
- InteractVFXItem.prototype.onItemRemoved = function (composition) {
13139
+ InteractVFXItem.prototype.onEnd = function () {
13140
+ if (this.composition) {
13141
+ this.composition.removeInteractiveItem(this, this.ui.options.type);
13142
+ }
13143
+ };
13144
+ InteractVFXItem.prototype.onItemRemoved = function () {
13140
13145
  var _a;
13141
- composition.removeInteractiveItem(this, this.ui.options.type);
13142
13146
  this.clickable = false;
13143
13147
  (_a = this.previewContent) === null || _a === void 0 ? void 0 : _a.mesh.dispose();
13144
13148
  this.endDragTarget();
@@ -21346,8 +21350,9 @@ var Camera = /** @class */ (function () {
21346
21350
  Camera.prototype.getInverseVPRatio = function (z) {
21347
21351
  var pos = new Vector3(0, 0, z);
21348
21352
  var mat = this.getViewProjectionMatrix();
21349
- var nz = pos.applyMatrix(mat).z;
21350
- return new Vector3(1, 1, nz).applyMatrix(mat);
21353
+ var inverseVP = this.getInverseViewProjectionMatrix();
21354
+ var nz = mat.projectPoint(pos).z;
21355
+ return inverseVP.projectPoint(new Vector3(1, 1, nz));
21351
21356
  };
21352
21357
  /**
21353
21358
  * 设置相机的旋转四元数
@@ -21359,7 +21364,6 @@ var Camera = /** @class */ (function () {
21359
21364
  this.dirty = true;
21360
21365
  }
21361
21366
  else {
21362
- this.options.quat;
21363
21367
  if (!this.options.quat.equals(value)) {
21364
21368
  this.options.quat.copyFrom(value);
21365
21369
  this.dirty = true;
@@ -23691,16 +23695,17 @@ var AssetManager = /** @class */ (function () {
23691
23695
  };
23692
23696
  AssetManager.prototype.processBins = function (bins) {
23693
23697
  return __awaiter(this, void 0, void 0, function () {
23694
- var renderLevel, jobs;
23698
+ var renderLevel, baseUrl, jobs;
23695
23699
  var _this = this;
23696
23700
  return __generator(this, function (_a) {
23697
23701
  renderLevel = this.options.renderLevel;
23702
+ baseUrl = this.baseUrl;
23698
23703
  jobs = bins.map(function (bin) {
23699
23704
  if (bin instanceof ArrayBuffer) {
23700
23705
  return bin;
23701
23706
  }
23702
23707
  if (passRenderLevel(bin.renderLevel, renderLevel)) {
23703
- return _this.loadBins(bin.url);
23708
+ return _this.loadBins(new URL(bin.url, baseUrl).href);
23704
23709
  }
23705
23710
  throw new Error("Invalid bins source: ".concat(JSON.stringify(bins)));
23706
23711
  });
@@ -23718,13 +23723,14 @@ var AssetManager = /** @class */ (function () {
23718
23723
  return [2 /*return*/];
23719
23724
  }
23720
23725
  jobs = fonts.map(function (font) { return __awaiter(_this, void 0, void 0, function () {
23721
- var fontFace;
23726
+ var url, fontFace;
23722
23727
  var _a;
23723
23728
  return __generator(this, function (_b) {
23724
23729
  switch (_b.label) {
23725
23730
  case 0:
23726
23731
  if (!(font.fontURL && !AssetManager.fonts.has(font.fontFamily))) return [3 /*break*/, 4];
23727
- fontFace = new FontFace((_a = font.fontFamily) !== null && _a !== void 0 ? _a : '', 'url(' + font.fontURL + ')');
23732
+ url = new URL(font.fontURL, this.baseUrl).href;
23733
+ fontFace = new FontFace((_a = font.fontFamily) !== null && _a !== void 0 ? _a : '', 'url(' + url + ')');
23728
23734
  _b.label = 1;
23729
23735
  case 1:
23730
23736
  _b.trys.push([1, 3, , 4]);
@@ -23737,7 +23743,7 @@ var AssetManager = /** @class */ (function () {
23737
23743
  return [3 /*break*/, 4];
23738
23744
  case 3:
23739
23745
  _b.sent();
23740
- logger.warn("Invalid fonts source: ".concat(JSON.stringify(font.fontURL)));
23746
+ logger.warn("Invalid fonts source: ".concat(JSON.stringify(url)));
23741
23747
  return [3 /*break*/, 4];
23742
23748
  case 4: return [2 /*return*/];
23743
23749
  }
@@ -23969,7 +23975,7 @@ function createTextureOptionsBySource(image, sourceFrom) {
23969
23975
  return image.source;
23970
23976
  }
23971
23977
  else if (image instanceof HTMLImageElement ||
23972
- image instanceof HTMLCanvasElement) {
23978
+ isCanvas(image)) {
23973
23979
  return {
23974
23980
  image: image,
23975
23981
  sourceType: TextureSourceType.image,
@@ -24006,6 +24012,11 @@ function createTextureOptionsBySource(image, sourceFrom) {
24006
24012
  }
24007
24013
  throw new Error('Invalid texture options');
24008
24014
  }
24015
+ function isCanvas(cavnas) {
24016
+ var _a;
24017
+ // 小程序 Canvas 无法使用 instanceof HTMLCanvasElement 判断
24018
+ return typeof cavnas === 'object' && cavnas !== null && ((_a = cavnas.tagName) === null || _a === void 0 ? void 0 : _a.toUpperCase()) === 'CANVAS';
24019
+ }
24009
24020
 
24010
24021
  var CompVFXItem = /** @class */ (function (_super) {
24011
24022
  __extends(CompVFXItem, _super);
@@ -29589,6 +29600,7 @@ var Player = /** @class */ (function () {
29589
29600
  this.displayScale = 1;
29590
29601
  this.resumePending = false;
29591
29602
  this.disposed = false;
29603
+ this.assetManagers = [];
29592
29604
  this.speed = 1;
29593
29605
  this.baseCompositionIndex = 0;
29594
29606
  /**
@@ -29871,7 +29883,7 @@ var Player = /** @class */ (function () {
29871
29883
  Player.prototype.createComposition = function (url, options) {
29872
29884
  if (options === void 0) { options = {}; }
29873
29885
  return __awaiter(this, void 0, void 0, function () {
29874
- var renderer, last, opts, source, scene, composition, firstFrameTime;
29886
+ var renderer, last, opts, source, assetManager, scene, composition, firstFrameTime;
29875
29887
  var _this = this;
29876
29888
  return __generator(this, function (_a) {
29877
29889
  switch (_a.label) {
@@ -29886,13 +29898,9 @@ var Player = /** @class */ (function () {
29886
29898
  else {
29887
29899
  source = url;
29888
29900
  }
29889
- if (this.assetManager) {
29890
- this.assetManager.updateOptions(opts);
29891
- }
29892
- else {
29893
- this.assetManager = new AssetManager(opts);
29894
- }
29895
- return [4 /*yield*/, this.assetManager.loadScene(source, this.renderer, { env: this.env })];
29901
+ assetManager = new AssetManager(opts);
29902
+ this.assetManagers.push(assetManager);
29903
+ return [4 /*yield*/, assetManager.loadScene(source, this.renderer, { env: this.env })];
29896
29904
  case 1:
29897
29905
  scene = _a.sent();
29898
29906
  // 加载期间 player 销毁
@@ -30222,7 +30230,7 @@ var Player = /** @class */ (function () {
30222
30230
  * @param keepCanvas - 是否保留 canvas 画面,默认不保留,canvas 不能再被使用
30223
30231
  */
30224
30232
  Player.prototype.dispose = function (keepCanvas) {
30225
- var _a, _b;
30233
+ var _a;
30226
30234
  logger.info("call player destroy: ".concat(this.name));
30227
30235
  if (this.disposed) {
30228
30236
  return;
@@ -30230,7 +30238,7 @@ var Player = /** @class */ (function () {
30230
30238
  playerMap.delete(this.canvas);
30231
30239
  this.pause();
30232
30240
  (_a = this.ticker) === null || _a === void 0 ? void 0 : _a.stop();
30233
- (_b = this.assetManager) === null || _b === void 0 ? void 0 : _b.dispose();
30241
+ this.assetManagers.forEach(function (assetManager) { return assetManager.dispose(); });
30234
30242
  this.compositions.forEach(function (comp) { return comp.dispose(); });
30235
30243
  this.compositions.length = 0;
30236
30244
  this.renderer.context.removeLostHandler({ lost: this.lost });
@@ -30436,7 +30444,7 @@ Renderer.create = function (canvas, framework, renderOptions) {
30436
30444
  Engine.create = function (gl) {
30437
30445
  return new GLEngine(gl);
30438
30446
  };
30439
- var version = "1.2.3";
30447
+ var version = "1.2.5";
30440
30448
  logger.info('player version: ' + version);
30441
30449
 
30442
30450
  export { AbstractPlugin, AssetManager, BYTES_TYPE_MAP, BezierSegments, COMPRESSED_TEXTURE, COPY_FRAGMENT_SHADER, COPY_MESH_SHADER_ID, COPY_VERTEX_SHADER, CalculateItem, CalculateLoader, CalculateVFXItem, Camera, CameraController, CameraVFXItem, CameraVFXItemLoader, Composition, CompositionSourceManager, CurveValue, 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, GLEngine, GLGeometry, GLRenderer, GLSLVersion, GPUCapability, Geometry, GlobalUniforms, GradientValue, HELP_LINK$1 as 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, PathSegments, Player, 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, TextItem, TextLoader, TextMesh, TextVFXItem, Texture, TextureFactory, TextureLoadAction, TextureSourceType, TextureStoreAction, 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, deepClone, defaultGlobalVolume, defaultPlugins, delayFrag, deserializeMipmapTexture, disableAllPlayer, distortionFrag, distortionVert, earcut, enlargeBuffer, ensureVec3, filters, findPreviousRenderPass, gaussianDown_frag as gaussianDownFrag, gaussianDownHFrag, gaussianDownVFrag, gaussianUpFrag, generateEmptyTypedArray, generateHalfFloatTexture, getActivePlayers, getBackgroundImage, getColorFromGradientStops, getConfig, getDefaultTemplateCanvasPool, getDefaultTextureFactory, getGeometryByShape, getGeometryTriangles, getImageItemRenderInfo, getKTXTextureOptions, getKeyFrameMetaByRawValue, getParticleMeshShader, getPixelRatio, getPlayerByCanvas, getPreMultiAlpha, getStandardComposition, getStandardImage, getStandardItem, getStandardJSON, getTextureSize, glContext, gpuTimer, imageDataFromColor, imageDataFromGradient, initErrors, initGLContext, integrate, interpolateColor, isAndroid, isArray, isCanvasUsedByPlayer, isFunction, isIOS, isObject, isScene, isSceneWithOptions, isSimulatorCellPhone, isString, isUniformStruct, isUniformStructArray, isWebGL2, item_define as itemDefine, itemFrag, itemFrameFrag, itemVert, loadBinary, loadBlob, loadImage, loadVideo, loadWebPOptional, logger, index as math, maxSpriteMeshItemCount, maxSpriteTextureCount, modifyMaxKeyframeShader, nearestPowerOfTwo, noop, parsePercent$1 as parsePercent, particleFrag, particleOriginTranslateMap, particleVert, pluginLoaderMap, random, registerFilter, registerFilters, registerPlugin, removeItem, requestAsync, rotateVec2, screenMeshVert, setBlendMode, setConfig, setDefaultTextureFactory, setMaskMode, setMaxSpriteMeshItemCount, setRayFromCamera, setSideMode, setSpriteMeshMaxFragmentTextures, setSpriteMeshMaxItemCountByGPU, sortByOrder, index$1 as spec, spriteMeshShaderFromFilter, spriteMeshShaderFromRenderInfo, spriteMeshShaderIdFromRenderInfo, thresholdFrag, throwDestroyedError$1 as throwDestroyedError, trailVert, translatePoint, trianglesFromRect, unregisterPlugin, valIfUndefined, value, valueDefine, vecAssign, vecFill, vecMulCombine, vecNormalize, version };