@realsee/five 6.3.0-alpha.8 → 6.3.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.
Files changed (98) hide show
  1. package/docs/assets/navigation.js +1 -1
  2. package/docs/assets/search.js +1 -1
  3. package/docs/classes/five.AnimationFrameLoop.html +8 -4
  4. package/docs/classes/five.Camera.html +1 -1
  5. package/docs/classes/five.CustomShader.html +9 -0
  6. package/docs/classes/five.Fetcher.html +2 -2
  7. package/docs/classes/five.Five.html +46 -45
  8. package/docs/classes/five.InternalWebGLRenderer.html +1 -1
  9. package/docs/classes/five.Model.html +7 -6
  10. package/docs/classes/five.NetworkProxyError.html +2 -0
  11. package/docs/classes/five.NetworkSubscribe.html +11 -10
  12. package/docs/classes/five.PBMMeshMaterial.html +39 -35
  13. package/docs/classes/five.PBMPointCloud.html +2 -2
  14. package/docs/classes/five.PBMPointCloudMaterial.html +37 -35
  15. package/docs/classes/five.Subscribe.html +12 -11
  16. package/docs/classes/five.Tile.html +2 -2
  17. package/docs/classes/five.Tile3DModel.html +1 -1
  18. package/docs/classes/five.Tileset.html +1 -1
  19. package/docs/classes/five.Trajectory.html +2 -2
  20. package/docs/classes/five.Work.html +14 -14
  21. package/docs/functions/five.loadAt3d.html +1 -1
  22. package/docs/functions/five.loadB3dm.html +1 -1
  23. package/docs/functions/five.loadDome.html +1 -1
  24. package/docs/functions/five.loadDomez.html +1 -1
  25. package/docs/functions/five.loadFbx.html +1 -0
  26. package/docs/functions/five.loadGlb.html +1 -1
  27. package/docs/functions/five.loadPbm.html +1 -1
  28. package/docs/functions/five.loadPly.html +1 -1
  29. package/docs/functions/five.loadPnts.html +1 -1
  30. package/docs/functions/five.parseWork.html +1 -1
  31. package/docs/interfaces/five.AnimationFrame.html +2 -2
  32. package/docs/interfaces/five.AnimationFrameContext.html +3 -0
  33. package/docs/interfaces/five.ClipperParameter.html +2 -2
  34. package/docs/interfaces/five.CustomShaderInitArgs.html +6 -0
  35. package/docs/interfaces/five.EventCallback.html +2 -2
  36. package/docs/interfaces/five.FiveInitArgs.html +6 -4
  37. package/docs/interfaces/five.FragmentShaderChunks.html +5 -0
  38. package/docs/interfaces/five.PBMPanoPicture.html +5 -5
  39. package/docs/interfaces/five.PBMParameters.html +27 -31
  40. package/docs/interfaces/five.SubscribeMixinType.emit.html +1 -1
  41. package/docs/interfaces/five.SubscribeMixinType.hasListener.html +1 -1
  42. package/docs/interfaces/five.SubscribeMixinType.off.html +1 -1
  43. package/docs/interfaces/five.SubscribeMixinType.on.html +1 -1
  44. package/docs/interfaces/five.SubscribeMixinType.once.html +1 -1
  45. package/docs/interfaces/five.SubscribeMixinType.waitUnitl.html +1 -1
  46. package/docs/interfaces/five.TilesetHeader.html +2 -2
  47. package/docs/interfaces/five.VertexShaderChunks.html +4 -0
  48. package/docs/interfaces/five.WorkCubeImage.html +8 -8
  49. package/docs/interfaces/five.WorkImage.html +10 -10
  50. package/docs/interfaces/five.WorkInitial.html +8 -8
  51. package/docs/interfaces/five.WorkModel.html +6 -6
  52. package/docs/interfaces/five.WorkObserver.html +20 -20
  53. package/docs/interfaces/five.WorkResolvedObserver.html +20 -20
  54. package/docs/interfaces/five.WorkTile.html +2 -2
  55. package/docs/interfaces/five.WorkVideo.html +4 -4
  56. package/docs/interfaces/five.XRGestureEvent.html +2 -2
  57. package/docs/modules/five.SubscribeMixinType.html +1 -1
  58. package/docs/modules/five.html +8 -0
  59. package/docs/types/five.AnimationFrameLoopType.html +1 -0
  60. package/docs/types/five.LegacyEventType.html +2 -2
  61. package/docs/types/five.ModelMaterialValues.html +1 -1
  62. package/docs/types/five.Models.html +5 -5
  63. package/docs/types/five.ParseWorkOptions.html +1 -1
  64. package/docs/types/five.ParsedResultType.html +1 -1
  65. package/docs/types/five.TileContentData.html +1 -1
  66. package/docs/types/five.TrajectoryContentData.html +1 -1
  67. package/docs/types/five.Works.html +1 -1
  68. package/docs/variables/five.defaultPbmParameters.html +1 -1
  69. package/five/index.d.ts +127 -56
  70. package/five/index.js +92 -92
  71. package/five/index.mjs +9545 -7550
  72. package/gltf-loader/index.js +3 -3
  73. package/gltf-loader/index.mjs +3 -3
  74. package/line/index.js +3 -3
  75. package/line/index.mjs +10 -10
  76. package/package.json +6 -1
  77. package/plugins/index.js +2 -2
  78. package/plugins/index.mjs +2 -2
  79. package/react/index.js +2 -2
  80. package/react/index.mjs +2 -2
  81. package/shader-lib/index.d.ts +25 -0
  82. package/shader-lib/index.js +399 -0
  83. package/shader-lib/index.mjs +541 -0
  84. package/sticker/index.js +3 -3
  85. package/sticker/index.mjs +7 -7
  86. package/umd/five-gltf-loader.js +3 -3
  87. package/umd/five-line.js +3 -3
  88. package/umd/five-plugins.js +2 -2
  89. package/umd/five-react.js +2 -2
  90. package/umd/five-shader-lib.js +399 -0
  91. package/umd/five-sticker.js +3 -3
  92. package/umd/five-vfx.js +2 -2
  93. package/umd/five-vue.js +2 -2
  94. package/umd/five.js +85 -85
  95. package/vfx/index.js +2 -2
  96. package/vfx/index.mjs +2 -2
  97. package/vue/index.js +2 -2
  98. package/vue/index.mjs +2 -2
package/five/index.d.ts CHANGED
@@ -27,19 +27,28 @@ export declare interface AnimationFrame {
27
27
  order: number;
28
28
  }
29
29
 
30
+ export declare interface AnimationFrameContext {
31
+ requestAnimationFrame(...args: any[]): any;
32
+ cancelAnimationFrame(requestId: any): void;
33
+ }
34
+
30
35
  export declare class AnimationFrameLoop {
31
36
  private frames;
32
- private time;
33
- private stoped;
34
- private context?;
37
+ private loopType;
38
+ private isAnimating;
39
+ private context;
35
40
  private requestId;
41
+ private loop;
36
42
  private static sharedInstance?;
37
43
  static get shared(): AnimationFrameLoop;
38
44
  static getFrameTime(): number;
39
45
  constructor();
40
- private loop;
41
- setContext(context: any): void;
42
- getContext(): any;
46
+ start(): void;
47
+ stop(): void;
48
+ setContext(context: AnimationFrameContext | null): void;
49
+ getContext<T extends AnimationFrameContext>(): T | null;
50
+ setLoopType(type: AnimationFrameLoopType): void;
51
+ getLoopType(): AnimationFrameLoopType;
43
52
  private requestAnimationFrame;
44
53
  private cancelAnimationFrame;
45
54
  private remove;
@@ -52,9 +61,11 @@ export declare class AnimationFrameLoop {
52
61
  * @returns 移除动画循环函数
53
62
  */
54
63
  add(callback: AnimationFrame["callback"], once?: boolean, delay?: number, order?: number): () => void;
55
- disponse(): void;
64
+ clear(): void;
56
65
  }
57
66
 
67
+ export declare type AnimationFrameLoopType = 'raf' | 'sto';
68
+
58
69
  export declare interface BaseEvent {
59
70
  type: string;
60
71
  timeStamp: number;
@@ -145,7 +156,7 @@ export declare class Camera extends THREE_2.Camera {
145
156
  get perspectiveProjectionMatrixInverse(): THREE_2.Matrix4;
146
157
  get orthographicProjectionMatrix(): THREE_2.Matrix4;
147
158
  get orthographicProjectionMatrixInverse(): THREE_2.Matrix4;
148
- updateTime(time: number, _deltaTime: number): void;
159
+ updateTime(time: number): void;
149
160
  get isPerspectiveCamera(): boolean;
150
161
  get isOrthographicCamera(): boolean;
151
162
  copy(source: this, recursive?: boolean): this;
@@ -257,6 +268,33 @@ export declare class CullingVolume {
257
268
  computeVisibilityWithPlaneMask(boundingVolume: BoundingVolume, parentPlaneMask: number): number;
258
269
  }
259
270
 
271
+ export declare class CustomShader {
272
+ uniforms: {
273
+ [key: string]: THREE_2.Uniform;
274
+ };
275
+ defines: {
276
+ [key: string]: any;
277
+ };
278
+ type: CustomShaderInitArgs['type'];
279
+ vertex: VertexShaderChunks;
280
+ fragment: FragmentShaderChunks;
281
+ constructor(initArgs: CustomShaderInitArgs);
282
+ getHash(): string;
283
+ onBeforeCompile(shader: THREE_2.Shader, renderer: THREE_2.WebGLRenderer): void;
284
+ }
285
+
286
+ export declare interface CustomShaderInitArgs {
287
+ type: Array<'none' | 'basic' | 'phong' | 'pointcloud'>;
288
+ vertex?: Partial<VertexShaderChunks>;
289
+ fragment?: Partial<FragmentShaderChunks>;
290
+ uniforms?: {
291
+ [key: string]: any;
292
+ };
293
+ defines?: {
294
+ [key: string]: any;
295
+ };
296
+ }
297
+
260
298
  /**
261
299
  * URL 地址的转换
262
300
  * @param source - url 原地址
@@ -968,6 +1006,10 @@ export declare interface FiveInitArgs {
968
1006
  * 着色器精度. 可以是 "highp", "mediump" 或者 "lowp". 如果设备支持
969
1007
  */
970
1008
  precision?: 'highp' | 'mediump' | 'lowp';
1009
+ /**
1010
+ * 性能参数
1011
+ */
1012
+ powerPreference?: 'high-performance' | 'low-power' | 'default';
971
1013
  /**
972
1014
  * 是否使用webgl2渲染执行环境, 默认值 false
973
1015
  */
@@ -1095,6 +1137,13 @@ export declare interface FloorplanControllerCustomInitArgs {
1095
1137
  intersectMeshCreator?: () => IntersectMeshInterface;
1096
1138
  }
1097
1139
 
1140
+ export declare interface FragmentShaderChunks {
1141
+ mainBefore: string;
1142
+ mainStart: string;
1143
+ mainModelColor: string;
1144
+ mainEnd: string;
1145
+ }
1146
+
1098
1147
  export declare interface GestureEvent extends StateEvent {
1099
1148
  target: EventTarget | null;
1100
1149
  pointerType: 'touch' | 'pen' | 'mouse' | 'kinect';
@@ -1185,7 +1234,7 @@ export declare interface ImageURLOptions {
1185
1234
  }
1186
1235
 
1187
1236
  export declare class InternalWebGLRenderer extends THREE_2.WebGLRenderer {
1188
- constructor({ preserveDrawingBuffer, premultipliedAlpha, stencil, backgroundColor, backgroundAlpha, pixelRatio, antialias, webgl2, logarithmicDepthBuffer, precision, }: {
1237
+ constructor({ preserveDrawingBuffer, premultipliedAlpha, stencil, backgroundColor, backgroundAlpha, pixelRatio, antialias, webgl2, logarithmicDepthBuffer, precision, powerPreference, }: {
1189
1238
  preserveDrawingBuffer?: boolean;
1190
1239
  premultipliedAlpha?: boolean;
1191
1240
  stencil?: boolean;
@@ -1196,6 +1245,7 @@ export declare class InternalWebGLRenderer extends THREE_2.WebGLRenderer {
1196
1245
  webgl2?: boolean;
1197
1246
  logarithmicDepthBuffer?: boolean;
1198
1247
  precision?: 'highp' | 'mediump' | 'lowp';
1248
+ powerPreference?: 'high-performance' | 'low-power' | 'default';
1199
1249
  });
1200
1250
  }
1201
1251
 
@@ -1647,40 +1697,45 @@ export declare type LegacyEventType = {
1647
1697
  network(source: string, type: NetworkType, state: NetworkState, detail: string): void;
1648
1698
  };
1649
1699
 
1650
- export declare function loadAt3d(url: string, options: {
1700
+ export declare function loadAt3d(url: string, options?: {
1651
1701
  textureOptions?: TextureOptions;
1652
1702
  textureBaseUri?: string;
1653
1703
  textureArray?: string[];
1654
- fetcher: Fetcher;
1704
+ fetcher?: Fetcher;
1655
1705
  }): Promise<ParsedResultType>;
1656
1706
 
1657
- export declare function loadB3dm(url: string, options: {
1658
- upAxis: 'X' | 'Y' | 'Z';
1659
- fetcher: Fetcher;
1707
+ export declare function loadB3dm(url: string, options?: {
1708
+ upAxis?: 'X' | 'Y' | 'Z';
1709
+ fetcher?: Fetcher;
1660
1710
  }): Promise<ParsedResultType>;
1661
1711
 
1662
- export declare function loadDome(url: string, options: {
1663
- textureOptions: TextureOptions;
1712
+ export declare function loadDome(url: string, options?: {
1713
+ textureOptions?: TextureOptions;
1664
1714
  textureBaseUri?: string;
1665
- fetcher: Fetcher;
1715
+ fetcher?: Fetcher;
1666
1716
  }): Promise<ParsedResultType>;
1667
1717
 
1668
- export declare function loadDomez(url: string, options: {
1669
- textureOptions: TextureOptions;
1718
+ export declare function loadDomez(url: string, options?: {
1719
+ textureOptions?: TextureOptions;
1670
1720
  textureBaseUri?: string;
1671
- fetcher: Fetcher;
1721
+ fetcher?: Fetcher;
1672
1722
  }): Promise<ParsedResultType>;
1673
1723
 
1674
- export declare function loadGlb(url: string, options: {
1675
- upAxis: 'Y' | 'Z';
1676
- fetcher: Fetcher;
1724
+ export declare function loadFbx(url: string, options?: {
1725
+ materialType?: 'basic' | 'phong';
1726
+ fetcher?: Fetcher;
1677
1727
  }): Promise<ParsedResultType>;
1678
1728
 
1679
- export declare function loadPbm(url: string, options: {
1729
+ export declare function loadGlb(url: string, options?: {
1730
+ upAxis?: 'Y' | 'Z';
1731
+ fetcher?: Fetcher;
1732
+ }): Promise<ParsedResultType>;
1733
+
1734
+ export declare function loadPbm(url: string, options?: {
1680
1735
  textureOptions?: TextureOptions;
1681
1736
  textureBaseUri?: string;
1682
1737
  textureArray?: string[];
1683
- fetcher: Fetcher;
1738
+ fetcher?: Fetcher;
1684
1739
  }): Promise<ParsedResultType>;
1685
1740
 
1686
1741
  export declare function loadPly<Type extends 'geometry' | 'mesh' | 'points' | 'line' | 'pbmPointCloud', ResultType = {
@@ -1689,15 +1744,15 @@ export declare function loadPly<Type extends 'geometry' | 'mesh' | 'points' | 'l
1689
1744
  'points': THREE_2.Points<THREE_2.BufferGeometry, THREE_2.PointsMaterial>;
1690
1745
  'line': THREE_2.Line<THREE_2.BufferGeometry, THREE_2.LineBasicMaterial>;
1691
1746
  'pbmPointCloud': PBMPointCloud;
1692
- }[Type]>(url: string, options: {
1747
+ }[Type]>(url: string, options?: {
1693
1748
  propertyNameMapping?: Record<string, string>;
1694
1749
  customPropertyMapping?: Record<string, string[]>;
1695
1750
  type?: Type;
1696
- fetcher: Fetcher;
1751
+ fetcher?: Fetcher;
1697
1752
  }): Promise<ParsedResultType<ResultType>>;
1698
1753
 
1699
- export declare function loadPnts(url: string, options: {
1700
- fetcher: Fetcher;
1754
+ export declare function loadPnts(url: string, options?: {
1755
+ fetcher?: Fetcher;
1701
1756
  computeBoundingBox?: boolean;
1702
1757
  }): Promise<ParsedResultType>;
1703
1758
 
@@ -1930,6 +1985,8 @@ export declare class Model extends THREE_2.Object3D {
1930
1985
  */
1931
1986
  get clippers(): PBMParameters['clippers'];
1932
1987
  set clippers(clippers: PBMParameters['clippers']);
1988
+ get customShaders(): PBMParameters['customShaders'];
1989
+ set customShaders(customShaders: PBMParameters['customShaders']);
1933
1990
  /**
1934
1991
  * 获取模型边界线
1935
1992
  * @param sphere - 获取区域
@@ -1998,7 +2055,7 @@ export declare interface ModelEvent extends BaseEvent {
1998
2055
  error: Error | null;
1999
2056
  }
2000
2057
 
2001
- export declare type ModelMaterialValues = Omit<PBMParameters, 'clippers' | 'shownFloorIndex' | 'brightness'>;
2058
+ export declare type ModelMaterialValues = Omit<PBMParameters, 'clippers' | 'shownFloorIndex' | 'brightness' | 'customShaders'>;
2002
2059
 
2003
2060
  export declare type Models = Model[] & {
2004
2061
  needsRender: boolean;
@@ -2163,6 +2220,10 @@ export declare interface NetworkOptions {
2163
2220
 
2164
2221
  export declare type NetworkProgressCallback = (percent: number) => void;
2165
2222
 
2223
+ export declare class NetworkProxyError extends Error {
2224
+ constructor(source: string, type: NetworkType, reason: string);
2225
+ }
2226
+
2166
2227
  export declare interface NetworkResourceEvent extends BaseEvent {
2167
2228
  source: string;
2168
2229
  requestType: NetworkType;
@@ -2413,7 +2474,7 @@ export declare interface PanoTextureEvent extends BaseEvent {
2413
2474
  }
2414
2475
 
2415
2476
  export declare type ParsedResultType<Scene = THREE_2.Object3D> = {
2416
- type: 'none' | 'b3dm' | 'pnts' | 'at3d' | 'pbm' | 'dome' | 'domez' | 'glb' | 'ply' | 'obj';
2477
+ type: 'none' | 'b3dm' | 'pnts' | 'at3d' | 'pbm' | 'dome' | 'domez' | 'glb' | 'ply' | 'obj' | 'fbx';
2417
2478
  byteLength: number;
2418
2479
  uri: string;
2419
2480
  scene: Scene;
@@ -2505,6 +2566,14 @@ export declare class PBMMeshMaterial extends THREE_2.ShaderMaterial implements P
2505
2566
  displacementScale: number;
2506
2567
  displacementBias: number;
2507
2568
  shininess: number;
2569
+ /** 自定义材质*/
2570
+ customShaders: CustomShader[];
2571
+ /** 上一次的customShader*/
2572
+ customShaderHash: string;
2573
+ /** 上一次的customShaderUniforms*/
2574
+ customShaderUniforms: Record<string, THREE_2.Uniform | undefined>;
2575
+ /** 上一次的customShaderDefines*/
2576
+ customShaderDefines: Record<string, any>;
2508
2577
  /** 起始点 */
2509
2578
  pano0: PBMParameters['pano0'];
2510
2579
  /** 结束点 */
@@ -2543,10 +2612,6 @@ export declare class PBMMeshMaterial extends THREE_2.ShaderMaterial implements P
2543
2612
  pointScale: PBMParameters['pointScale'];
2544
2613
  /** 点云背面绘制方式*/
2545
2614
  pointBack: PBMParameters['pointBack'];
2546
- /** 点云出现动画时间 */
2547
- pointAppearAnimationDuration: PBMParameters['pointAppearAnimationDuration'];
2548
- /** 点云特效 */
2549
- pointEffect: number;
2550
2615
  /** 点云像素最小值*/
2551
2616
  pointMinPixel: PBMParameters['pointMinPixel'];
2552
2617
  /** 点云像素最大值*/
@@ -2559,13 +2624,12 @@ export declare class PBMMeshMaterial extends THREE_2.ShaderMaterial implements P
2559
2624
  colorBrightness: number;
2560
2625
  /** 所属楼层*/
2561
2626
  floor: number;
2562
- /** 点云平整度*/
2563
- evennessPlane: PBMParameters['evennessPlane'];
2564
2627
  constructor(shaderType?: 'none' | 'basic' | 'phong', parameters?: Partial<PBMParameters>);
2565
2628
  onBeforeCompile(shader: THREE_2.Shader, renderer: THREE_2.WebGLRenderer): void;
2566
2629
  refreshUniforms(renderer?: THREE_2.WebGLRenderer): void;
2567
2630
  update(renderer: THREE_2.WebGLRenderer, camera: Camera, model: Model): void;
2568
2631
  copy(source: PBMMeshMaterial): this;
2632
+ clone(): any;
2569
2633
  }
2570
2634
 
2571
2635
  export declare interface PBMPanoPicture {
@@ -2581,6 +2645,8 @@ export declare interface PBMPanoPicture {
2581
2645
 
2582
2646
  /** PBM 材质参数 */
2583
2647
  export declare interface PBMParameters {
2648
+ /** 自定义材质*/
2649
+ customShaders: CustomShader[];
2584
2650
  /** 起始点 */
2585
2651
  pano0: PBMPanoPicture | null;
2586
2652
  /** 结束点 */
@@ -2619,10 +2685,6 @@ export declare interface PBMParameters {
2619
2685
  pointBack: 'VISIBLE' | 'HIDDEN' | 'DARK';
2620
2686
  /** 点云基础大小*/
2621
2687
  pointScale: number;
2622
- /** 点云出现动画时间 */
2623
- pointAppearAnimationDuration: number;
2624
- /** 点云特效 */
2625
- pointEffect: number;
2626
2688
  /** 点云最小尺寸*/
2627
2689
  pointMinPixel: number;
2628
2690
  /** 点云最大尺寸*/
@@ -2633,11 +2695,6 @@ export declare interface PBMParameters {
2633
2695
  colorBrightness: number;
2634
2696
  /** 高程着色材质*/
2635
2697
  gradientTexture: THREE_2.Texture | null;
2636
- /** 点云平整度*/
2637
- evennessPlane: {
2638
- depth: number;
2639
- points: THREE_2.Vector3[];
2640
- };
2641
2698
  }
2642
2699
 
2643
2700
  /** PBM 对象 */
@@ -2648,6 +2705,14 @@ export declare class PBMPointCloud extends THREE_2.Points<THREE_2.BufferGeometry
2648
2705
  }
2649
2706
 
2650
2707
  export declare class PBMPointCloudMaterial extends THREE_2.ShaderMaterial implements PBMParameters {
2708
+ /** 自定义材质*/
2709
+ customShaders: CustomShader[];
2710
+ /** 上一次的customShader*/
2711
+ customShaderHash: string;
2712
+ /** 上一次的customShaderUniforms*/
2713
+ customShaderUniforms: Record<string, THREE_2.Uniform | undefined>;
2714
+ /** 上一次的customShaderDefines*/
2715
+ customShaderDefines: Record<string, any>;
2651
2716
  /** 更新版本 */
2652
2717
  syncModelVersion?: string;
2653
2718
  /** 起始点 */
@@ -2686,10 +2751,6 @@ export declare class PBMPointCloudMaterial extends THREE_2.ShaderMaterial implem
2686
2751
  pointScale: PBMParameters['pointScale'];
2687
2752
  /** 点云背面绘制方式*/
2688
2753
  pointBack: PBMParameters['pointBack'];
2689
- /** 点云出现动画时间 */
2690
- pointAppearAnimationDuration: PBMParameters['pointAppearAnimationDuration'];
2691
- /** 点云特效 */
2692
- pointEffect: number;
2693
2754
  /** 点云像素最小值*/
2694
2755
  pointMinPixel: PBMParameters['pointMinPixel'];
2695
2756
  /** 点云像素最大值*/
@@ -2702,11 +2763,6 @@ export declare class PBMPointCloudMaterial extends THREE_2.ShaderMaterial implem
2702
2763
  colorSaturation: number;
2703
2764
  /** HSV亮度调整值*/
2704
2765
  colorBrightness: number;
2705
- /** 点云平整度*/
2706
- evennessPlane: {
2707
- depth: number;
2708
- points: THREE_2.Vector3[];
2709
- };
2710
2766
  constructor(parameters?: Partial<PBMParameters>);
2711
2767
  onBeforeCompile(shader: THREE_2.Shader, renderer: THREE_2.WebGLRenderer): void;
2712
2768
  update(renderer: THREE_2.WebGLRenderer, camera: Camera, model: Model): void;
@@ -2907,10 +2963,11 @@ export declare class Subscribe<T extends SubscribeEventMap> {
2907
2963
  /**
2908
2964
  * 等待事件
2909
2965
  * @param name - 事件类型
2966
+ * @param filter - 事件类型
2910
2967
  * @returns 触发事件的数据
2911
2968
  * @template K - 预设的监听事件名称
2912
2969
  */
2913
- waitUnitl<K extends keyof T>(name: K): Promise<Parameters<T[K]>>;
2970
+ waitUntil<K extends keyof T>(name: K, filter?: (...args: Parameters<T[K]>) => boolean | void): Promise<Parameters<T[K]>>;
2914
2971
  }
2915
2972
 
2916
2973
  export declare type SubscribeEventMap = {
@@ -3027,6 +3084,8 @@ export declare class Tile {
3027
3084
  boundingVolume?: BoundingVolume;
3028
3085
  data?: TileContentData;
3029
3086
  loadState: 'LOADING' | 'UNLOADED' | 'READY' | 'FAILED';
3087
+ loadStateUpdateTime: number;
3088
+ loadfailRetryDelay: number;
3030
3089
  byteLength: number;
3031
3090
  } | null;
3032
3091
  level: number;
@@ -3439,6 +3498,10 @@ export declare interface TilesetHeader {
3439
3498
  pose_ecef_to_enu: number[];
3440
3499
  pose_enu_to_ecef: number[];
3441
3500
  };
3501
+ taskParameters?: {
3502
+ homo_point_density?: string;
3503
+ point_homogenization?: string;
3504
+ };
3442
3505
  };
3443
3506
  }
3444
3507
 
@@ -3471,6 +3534,8 @@ export declare class Trajectory {
3471
3534
  color: THREE_2.Color;
3472
3535
  data?: TrajectoryContentData;
3473
3536
  loadState: 'LOADING' | 'UNLOADED' | 'READY' | 'FAILED';
3537
+ loadStateUpdateTime: number;
3538
+ loadfailRetryDelay: number;
3474
3539
  byteLength: number;
3475
3540
  };
3476
3541
  constructor(index: number, header: TrajectoryHeader, tileset: Tileset);
@@ -3498,6 +3563,12 @@ export declare class TrajectoryNode extends THREE_2.Object3D {
3498
3563
  dispose(): void;
3499
3564
  }
3500
3565
 
3566
+ export declare interface VertexShaderChunks {
3567
+ mainBefore: string;
3568
+ mainStart: string;
3569
+ mainEnd: string;
3570
+ }
3571
+
3501
3572
  export declare enum VolumePlaneIntersect {
3502
3573
  Outside = -1,
3503
3574
  Intersecting = 0,