@galacean/effects-threejs 1.2.0 → 1.2.1

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.2.0
6
+ * Version: v1.2.1
7
7
  */
8
8
 
9
9
  import * as THREE from 'three';
@@ -23452,6 +23452,10 @@ var AssetManager = /** @class */ (function () {
23452
23452
  */
23453
23453
  this.assets = {};
23454
23454
  this.id = seed$2++;
23455
+ /**
23456
+ * 场景加载的超时定时器
23457
+ */
23458
+ this.timers = [];
23455
23459
  this.updateOptions(options);
23456
23460
  }
23457
23461
  AssetManager.prototype.updateOptions = function (options) {
@@ -23484,25 +23488,33 @@ var AssetManager = /** @class */ (function () {
23484
23488
  compressedTexture = (_c = gpuInstance === null || gpuInstance === void 0 ? void 0 : gpuInstance.detail.compressedTexture) !== null && _c !== void 0 ? _c : 0;
23485
23489
  cancelLoading = false;
23486
23490
  waitPromise = new Promise(function (resolve, reject) {
23487
- return loadTimer = window.setTimeout(function () {
23491
+ loadTimer = window.setTimeout(function () {
23488
23492
  cancelLoading = true;
23493
+ _this.removeTimer(loadTimer);
23489
23494
  var totalTime = performance.now() - startTime;
23490
23495
  reject("Load time out: totalTime: ".concat(totalTime.toFixed(4), "ms ").concat(timeInfos.join(' '), ", url: ").concat(assetUrl));
23491
23496
  }, _this.timeout * 1000);
23497
+ _this.timers.push(loadTimer);
23492
23498
  });
23493
23499
  hookTimeInfo = function (label, func) { return __awaiter(_this, void 0, void 0, function () {
23494
- var st, result;
23500
+ var st, result, e_1;
23495
23501
  return __generator(this, function (_a) {
23496
23502
  switch (_a.label) {
23497
23503
  case 0:
23498
- if (!!cancelLoading) return [3 /*break*/, 2];
23504
+ if (!!cancelLoading) return [3 /*break*/, 4];
23499
23505
  st = performance.now();
23500
- return [4 /*yield*/, func()];
23506
+ _a.label = 1;
23501
23507
  case 1:
23508
+ _a.trys.push([1, 3, , 4]);
23509
+ return [4 /*yield*/, func()];
23510
+ case 2:
23502
23511
  result = _a.sent();
23503
23512
  timeInfos.push("[".concat(label, ": ").concat((performance.now() - st).toFixed(2), "]"));
23504
23513
  return [2 /*return*/, result];
23505
- case 2: throw new Error('load canceled.');
23514
+ case 3:
23515
+ e_1 = _a.sent();
23516
+ throw new Error("load error in ".concat(label, ", ").concat(e_1));
23517
+ case 4: throw new Error('load canceled.');
23506
23518
  }
23507
23519
  });
23508
23520
  }); };
@@ -23586,6 +23598,7 @@ var AssetManager = /** @class */ (function () {
23586
23598
  totalTime = performance.now() - startTime;
23587
23599
  logger.info("Load asset: totalTime: ".concat(totalTime.toFixed(4), "ms ").concat(timeInfos.join(' '), ", url: ").concat(assetUrl));
23588
23600
  window.clearTimeout(loadTimer);
23601
+ this.removeTimer(loadTimer);
23589
23602
  scene.totalTime = totalTime;
23590
23603
  scene.startTime = startTime;
23591
23604
  return [2 /*return*/, scene];
@@ -23894,16 +23907,26 @@ var AssetManager = /** @class */ (function () {
23894
23907
  });
23895
23908
  });
23896
23909
  };
23910
+ AssetManager.prototype.removeTimer = function (id) {
23911
+ var index = this.timers.indexOf(id);
23912
+ if (index !== -1) {
23913
+ this.timers.splice(index, 1);
23914
+ }
23915
+ };
23897
23916
  /**
23898
23917
  * 销毁方法
23899
23918
  */
23900
23919
  AssetManager.prototype.dispose = function () {
23901
23920
  var _a;
23921
+ if (this.timers.length) {
23922
+ this.timers.map(function (id) { return window.clearTimeout(id); });
23923
+ }
23902
23924
  for (var key in this.assets) {
23903
23925
  var asset = this.assets[key];
23904
23926
  (_a = asset === null || asset === void 0 ? void 0 : asset.dispose) === null || _a === void 0 ? void 0 : _a.call(asset);
23905
23927
  }
23906
23928
  this.assets = {};
23929
+ this.timers = [];
23907
23930
  };
23908
23931
  /**
23909
23932
  * 自定义文本缓存,随页面销毁而销毁
@@ -26865,7 +26888,7 @@ Geometry.create = function (engine, options) {
26865
26888
  Mesh.create = function (engine, props) {
26866
26889
  return new ThreeMesh(engine, props);
26867
26890
  };
26868
- var version = "1.2.0";
26891
+ var version = "1.2.1";
26869
26892
  logger.info('THREEJS plugin version: ' + version);
26870
26893
 
26871
26894
  export { AbstractPlugin, AssetManager, BYTES_TYPE_MAP, BezierSegments, 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, 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, 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, PathSegments, 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, 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, isAndroid, isArray, isFunction, isIOS, isObject, isScene, 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, setUniformValue, sortByOrder, index$1 as spec, spriteMeshShaderFromFilter, spriteMeshShaderFromRenderInfo, spriteMeshShaderIdFromRenderInfo, thresholdFrag, throwDestroyedError, trailVert, translatePoint, trianglesFromRect, unregisterPlugin, valIfUndefined, value, valueDefine, vecAssign, vecFill, vecMulCombine, vecNormalize, version };