s3m-three 0.3.14 → 0.4.16

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.
@@ -0,0 +1,207 @@
1
+ /**
2
+ * GPU 描边后处理(深度 + 法线)
3
+ *
4
+ * 为什么不用「材质里求法线导数」:`dFdx` 只在 2×2 quad 内求差,quad 里落到三角形外的
5
+ * 像素是**同一个三角形的外推值**,不是隔壁三角形的真实值 —— 所以片元着色器永远看不到
6
+ * 三角形边界,而平面着色几何的折边恰好就是三角形边界,一条都描不出来(实测法线导数
7
+ * 恒为 0)。业界做描边都走「法线/深度缓冲 + 后处理」,就是这里这套。
8
+ *
9
+ * 流程(每帧):
10
+ * 1. 用 `MeshNormalMaterial` 覆盖材质把整个场景渲进一张 RT:颜色 = 视空间法线,
11
+ * 深度 = 深度纹理。这一遍没有贴图、没有光照,成本基本就是几何 + 填充。
12
+ * 2. 画一个全屏 quad:在 RT 上按 `uRadius` 采样 4 邻域,取「法线差」和「相对深度差」
13
+ * 的最大值当描边强度。采样偏移就是线宽,也就是「外扩」半径。
14
+ * 3. quad 里 `gl_FragDepth` 写回该像素在 RT 里的深度,于是它和宿主(MapLibre 的底图 /
15
+ * 地形 / 其他图层)共用同一个深度缓冲 —— 被地形挡住的地方描边也会被挡住。
16
+ *
17
+ * 只支持 WebGL2(`gl_FragDepth` + `DepthTexture` 都是核心特性)。WebGL1 上 `supported()`
18
+ * 返回 false,调用方静默跳过,不影响其它画法。
19
+ */
20
+ import * as THREE from 'three';
21
+ const QUAD_VERT = /* glsl */ `
22
+ out vec2 vUv;
23
+ void main() {
24
+ vUv = uv;
25
+ // 直接给裁剪空间坐标,不走任何矩阵 —— 全屏 quad 没有相机语义
26
+ gl_Position = vec4( position.xy, 0.0, 1.0 );
27
+ }
28
+ `;
29
+ const QUAD_FRAG = /* glsl */ `
30
+ precision highp float;
31
+
32
+ uniform sampler2D tNormal;
33
+ uniform sampler2D tDepth;
34
+ uniform vec2 uTexel;
35
+ uniform float uRadius;
36
+ uniform float uNormalThreshold;
37
+ uniform float uDepthThreshold;
38
+ uniform vec3 uColor;
39
+ uniform float uOpacity;
40
+
41
+ in vec2 vUv;
42
+ out vec4 fragColor;
43
+
44
+ /** 两个采样的法线差(法线在 RT 里编码成 0.5 + n/2) */
45
+ float normalDelta( vec2 a, vec2 b ) {
46
+ vec3 na = texture( tNormal, a ).xyz * 2.0 - 1.0;
47
+ vec3 nb = texture( tNormal, b ).xyz * 2.0 - 1.0;
48
+ return length( na - nb );
49
+ }
50
+
51
+ /**
52
+ * 两个采样的相对深度差。
53
+ * 除以较小深度是为了让「远处同样米级的落差」也有可比性:深度缓冲是非线性的,
54
+ * 远处 1 米的落差在缓冲里可能只差 1e-5,不归一化就永远达不到阈值。
55
+ */
56
+ float depthDelta( vec2 a, vec2 b ) {
57
+ float da = texture( tDepth, a ).x;
58
+ float db = texture( tDepth, b ).x;
59
+ return abs( da - db ) / max( min( da, db ), 1e-6 );
60
+ }
61
+
62
+ void main() {
63
+ float d = texture( tDepth, vUv ).x;
64
+ // 没有几何的地方(清屏深度)不画,否则整片天空都会描边
65
+ if ( d >= 0.999999 ) discard;
66
+
67
+ vec2 o = uTexel * max( uRadius, 1.0 );
68
+ vec2 dx = vec2( o.x, 0.0 );
69
+ vec2 dy = vec2( 0.0, o.y );
70
+
71
+ float n = max(
72
+ max( normalDelta( vUv, vUv + dx ), normalDelta( vUv, vUv - dx ) ),
73
+ max( normalDelta( vUv, vUv + dy ), normalDelta( vUv, vUv - dy ) )
74
+ );
75
+ float dd = max(
76
+ max( depthDelta( vUv, vUv + dx ), depthDelta( vUv, vUv - dx ) ),
77
+ max( depthDelta( vUv, vUv + dy ), depthDelta( vUv, vUv - dy ) )
78
+ );
79
+
80
+ float m = max(
81
+ smoothstep( uNormalThreshold, uNormalThreshold * 1.6, n ),
82
+ smoothstep( uDepthThreshold, uDepthThreshold * 2.0, dd )
83
+ );
84
+ float a = m * uOpacity;
85
+ if ( a <= 0.004 ) discard;
86
+
87
+ // 写回该像素在本层里的深度:与宿主共用深度缓冲,被地形挡住就不显示
88
+ gl_FragDepth = d;
89
+ fragColor = vec4( uColor, a );
90
+ }
91
+ `;
92
+ export class GpuEdgePass {
93
+ rt = null;
94
+ width = 0;
95
+ height = 0;
96
+ /** 法线通道用的覆盖材质:视空间法线编码进颜色,深度走深度纹理 */
97
+ normalMaterial = new THREE.MeshNormalMaterial();
98
+ quadScene = new THREE.Scene();
99
+ quadCamera = new THREE.OrthographicCamera(-1, 1, 1, -1, 0, 1);
100
+ material;
101
+ constructor() {
102
+ this.material = new THREE.ShaderMaterial({
103
+ glslVersion: THREE.GLSL3,
104
+ uniforms: {
105
+ tNormal: { value: null },
106
+ tDepth: { value: null },
107
+ uTexel: { value: new THREE.Vector2(1, 1) },
108
+ uRadius: { value: 1.5 },
109
+ uNormalThreshold: { value: 0.55 },
110
+ uDepthThreshold: { value: 0.08 },
111
+ uColor: { value: new THREE.Color('#334155') },
112
+ uOpacity: { value: 0.6 },
113
+ },
114
+ vertexShader: QUAD_VERT,
115
+ fragmentShader: QUAD_FRAG,
116
+ transparent: true,
117
+ depthTest: true,
118
+ depthWrite: false,
119
+ side: THREE.DoubleSide,
120
+ blending: THREE.NormalBlending,
121
+ });
122
+ const quad = new THREE.Mesh(new THREE.PlaneGeometry(2, 2), this.material);
123
+ quad.frustumCulled = false;
124
+ quad.raycast = () => { };
125
+ this.quadScene.add(quad);
126
+ }
127
+ /** `gl_FragDepth` 与深度纹理都是 WebGL2 核心特性,WebGL1 直接不参与 */
128
+ supported(renderer) {
129
+ return renderer.capabilities.isWebGL2 === true;
130
+ }
131
+ /** 尺寸变了就重建 RT(canvas 跟着宿主缩放,必须每帧校验) */
132
+ ensureTarget(width, height) {
133
+ if (this.rt && this.width === width && this.height === height)
134
+ return this.rt;
135
+ this.disposeTarget();
136
+ const rt = new THREE.WebGLRenderTarget(Math.max(1, width), Math.max(1, height), {
137
+ minFilter: THREE.NearestFilter,
138
+ magFilter: THREE.NearestFilter,
139
+ format: THREE.RGBAFormat,
140
+ type: THREE.UnsignedByteType,
141
+ depthBuffer: true,
142
+ stencilBuffer: false,
143
+ generateMipmaps: false,
144
+ });
145
+ rt.texture.generateMipmaps = false;
146
+ rt.depthTexture = new THREE.DepthTexture(Math.max(1, width), Math.max(1, height), THREE.UnsignedIntType);
147
+ this.rt = rt;
148
+ this.width = width;
149
+ this.height = height;
150
+ return rt;
151
+ }
152
+ /**
153
+ * 渲一遍法线 + 深度,再把描边叠加到当前 framebuffer(调用方已画完主场景)。
154
+ *
155
+ * 注意顺序:主场景必须先画完 —— 描边 quad 要参与宿主的深度测试,
156
+ * 依赖主场景已经写好的深度。
157
+ */
158
+ render(renderer, scene, camera, width, height, params) {
159
+ if (!this.supported(renderer) || width <= 0 || height <= 0)
160
+ return;
161
+ const rt = this.ensureTarget(width, height);
162
+ // ---- 1. 法线 + 深度到 RT(覆盖材质,无贴图无光照) ----
163
+ const prevOverride = scene.overrideMaterial;
164
+ const prevClear = renderer.getClearColor(new THREE.Color());
165
+ const prevClearAlpha = renderer.getClearAlpha();
166
+ scene.overrideMaterial = this.normalMaterial;
167
+ renderer.setRenderTarget(rt);
168
+ renderer.setClearColor(0x000000, 0);
169
+ renderer.clear(true, true, true);
170
+ renderer.render(scene, camera);
171
+ scene.overrideMaterial = prevOverride;
172
+ renderer.setRenderTarget(null);
173
+ renderer.setClearColor(prevClear, prevClearAlpha);
174
+ // ---- 2. 全屏描边叠加 ----
175
+ const u = this.material.uniforms;
176
+ u.tNormal.value = rt.texture;
177
+ u.tDepth.value = rt.depthTexture;
178
+ u.uTexel.value.set(1 / Math.max(1, width), 1 / Math.max(1, height));
179
+ u.uRadius.value = Math.max(1, params.radius);
180
+ u.uNormalThreshold.value = Math.max(0.001, params.normalThreshold);
181
+ u.uDepthThreshold.value = Math.max(0.001, params.depthThreshold);
182
+ u.uColor.value.copy(params.color);
183
+ u.uOpacity.value = params.opacity;
184
+ renderer.setViewport(0, 0, width, height);
185
+ renderer.resetState();
186
+ renderer.render(this.quadScene, this.quadCamera);
187
+ }
188
+ disposeTarget() {
189
+ if (!this.rt)
190
+ return;
191
+ this.rt.depthTexture?.dispose();
192
+ this.rt.dispose();
193
+ this.rt = null;
194
+ this.width = 0;
195
+ this.height = 0;
196
+ }
197
+ dispose() {
198
+ this.disposeTarget();
199
+ this.material.dispose();
200
+ this.normalMaterial.dispose();
201
+ this.quadScene.traverse((o) => {
202
+ const mesh = o;
203
+ mesh.geometry?.dispose?.();
204
+ });
205
+ }
206
+ }
207
+ //# sourceMappingURL=GpuEdgePass.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GpuEdgePass.js","sourceRoot":"","sources":["../../src/render/GpuEdgePass.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,7 @@
23
23
  import * as THREE from 'three';
24
24
  import { S3MTileset } from '../tileset/S3MTileset.js';
25
25
  import type { BuildTileFn } from '../tileset/S3MTileset.js';
26
- import type { OutlineMaterial, StyleMode, S3MStyle } from './StyleMaterial.js';
26
+ import type { OutlineMaterial, StyleMode, S3MStyle, EdgesOption } from './StyleMaterial.js';
27
27
  import { Picker } from './Picker.js';
28
28
  import { Animator } from '../anim/Animator.js';
29
29
  import type { TransitionOptions } from '../anim/Animator.js';
@@ -141,6 +141,12 @@ export interface S3MViewerOptions {
141
141
  * 见 `S3MTilesetOptions.maxTriangles`:瓦片数管不住的场景(精模、大面片)用这条刹车。
142
142
  */
143
143
  maxTriangles?: number;
144
+ /**
145
+ * 纹理缓存条数上限(默认 128)。一条对应一张已解码的瓦片纹理,
146
+ * 1024² 的 RGBA 一张约 4MB,128 条就是 512MB 显存 —— 低端设备建议 32~48。
147
+ * 与 `maxTextureSize` 配合使用:后者降单张尺寸,这条降张数。
148
+ */
149
+ maxImageCache?: number;
144
150
  /**
145
151
  * 各向异性过滤上限(默认不封顶,取 GPU 报的最大值,通常 16)。
146
152
  * 移动端封到 4 或 8 肉眼通常无差,采样成本明显下降。只影响**之后创建**的纹理。
@@ -152,6 +158,17 @@ export interface S3MViewerOptions {
152
158
  * 图集(UV 已重映射)不受影响。手机上 1024 与 2048 肉眼几乎无差,显存差 4 倍。
153
159
  */
154
160
  maxTextureSize?: number;
161
+ /**
162
+ * 光照模型(默认 `'pbr'`)。
163
+ *
164
+ * - `'pbr'`:`MeshStandardMaterial`,GGX + 环境球谐,质感最好也最贵
165
+ * - `'lambert'`:`MeshLambertMaterial`,只保留漫反射 + 平行光,片元开销约省一半;
166
+ * 白模 / 纯色 / 按高度着色这类不需要高光的模式肉眼差别很小
167
+ *
168
+ * 模块级全局状态:同页多个图层会互相覆盖,后创建的那个决定全局。
169
+ * 只影响**之后创建**的材质 —— 已加载的瓦片要重新加载才会换。
170
+ */
171
+ materialQuality?: 'pbr' | 'lambert';
155
172
  /** 自定义瓦片构建器(测试 / 服务端渲染时注入) */
156
173
  buildTile?: BuildTileFn | null;
157
174
  /**
@@ -223,6 +240,8 @@ export declare class S3MViewer {
223
240
  private readonly _edgeStyleUniforms;
224
241
  /** 选中棱线的外观 uniform */
225
242
  private readonly _selEdgeStyleUniforms;
243
+ /** 全局外扩轮廓的外观 uniform:逐网格轮廓壳共享这些对象 */
244
+ private readonly _hullStyleUniforms;
226
245
  /** 3D 物理地表面 / 基坑开挖管理器 */
227
246
  readonly groundManager: GroundManager;
228
247
  /** 多数据集生命周期与锚点管理器 */
@@ -266,6 +285,12 @@ export declare class S3MViewer {
266
285
  private _selectionEdges;
267
286
  private _selectionEdgeMeshes;
268
287
  private _edgesEnabled;
288
+ /** 当前生效的棱线画法(line / offset / hull / gpu),决定要不要建 / 拆哪种装饰 */
289
+ private _edgeModes;
290
+ /** GPU 描边后处理(深度 + 法线),只在 edges 含 'gpu' 时按帧执行 */
291
+ private _gpuEdge;
292
+ /** 给 GPU 描边传色用的临时 Color,避免每帧 new */
293
+ private readonly _gpuEdgeColor;
269
294
  /** 瓦片淡入通道的自增序号(不用 pickId:pickId 会被回收复用) */
270
295
  private _tileFadeSeq;
271
296
  /** setMode 编排的代次,用来作废被新调用顶掉的旧编排 */
@@ -300,6 +325,8 @@ export declare class S3MViewer {
300
325
  /** 业务属性查询(可选,配了 `attributes` 才有) */
301
326
  attributeQuery: AttributeQuery | null;
302
327
  private readonly _enuMatrix;
328
+ /** 每帧复用:MVP 来自宿主,不要每帧 new(高频分配会带来 GC 抖动) */
329
+ private readonly _frameMvp;
303
330
  /** 颜色换算用的临时对象,避免每帧 new */
304
331
  private readonly _colorScratch;
305
332
  private _needsRepaint;
@@ -702,8 +729,15 @@ export declare class S3MViewer {
702
729
  /**
703
730
  * 全局棱线开关。
704
731
  *
705
- * 数据自带棱线包(primitiveType 13)时直接用,成本为零;
706
- * 没有的话才用 EdgesGeometry 现算 —— 那是 CPU 端的活,几十万面一次性建会卡住主线程
732
+ * 取值是 `boolean | EdgeStyle | EdgeStyle[]`(见 resolveEdgeModes):
733
+ * - `true` / `'line'` 折边线(旧口径)
734
+ * - `'offset'` 折边线 + 沿边法线外推 `edgeOffset` 米
735
+ * - `'hull'` 背面外扩轮廓(选中侧 outlineStyle:'hull' 的整场景版)
736
+ * - `'gpu'` 纯片元描边:零几何、零额外 pass,线宽约 1 像素
737
+ * - 数组 叠加,例如 `['line', 'hull']`
738
+ *
739
+ * 数据自带棱线包(primitiveType 13)时直接用,成本为零;`style.forceCpuEdges`
740
+ * 可以无视它,改由 CPU 现算 —— 那是 CPU 端的活,几十万面一次性建会卡住主线程
707
741
  * (实测 20 个网格 1.9s),所以按 8ms 一帧切片,边建边出。
708
742
  *
709
743
  * 棱线本身用「屏幕空间等宽线」画(见 EdgeLines.ts):WebGL 的 lineWidth 基本无效,
@@ -713,7 +747,7 @@ export declare class S3MViewer {
713
747
  * 开:立刻置位 + 开始分片建线,同时 `uEdgeFade` 0→1 —— 建好一块亮一块,视觉上是渐显;
714
748
  * 关:`uEdgeFade` 1→0,淡完才 dispose,避免棱线「啪」一下消失。
715
749
  */
716
- setEdges(enabled: boolean, transition?: TransitionOptions): void;
750
+ setEdges(edges: EdgesOption, transition?: TransitionOptions): void;
717
751
  /** 直接写棱线淡入乘子(不走动画通道) */
718
752
  private _setEdgeFade;
719
753
  /** 释放所有现算棱线几何 */
@@ -731,10 +765,11 @@ export declare class S3MViewer {
731
765
  /** 移除并释放预制棱线缓存 */
732
766
  clearCreases(): void;
733
767
  /**
734
- * 让全局棱线材质跟上 style.edgeColor / edgeWidth / edgeOpacity。
768
+ * 让全局棱线材质跟上 style.edgeColor / edgeWidth / edgeOpacity / edgeOffset。
735
769
  *
736
- * 全程 O(1):只有一份共享 edgeMaterial(所有逐 mesh 棱线都用它)+ 一份预制缓存,
737
- * 所以棱线淡入淡出只要改一个 uniform,新建瓦片自动继承当前进度。
770
+ * 全程 O(1):只有一份共享 edgeMaterial(所有逐 mesh 棱线都用它)+ 一份预制缓存
771
+ * + 一批共享外观对象的轮廓壳,所以棱线淡入淡出只要改一个 uniform,
772
+ * 新建瓦片自动继承当前进度。
738
773
  */
739
774
  private _syncEdgeStyle;
740
775
  /** 让数据自带的棱线跟着 style.edgeColor / opacity 走(这些是 LineBasicMaterial,改不了粗细) */
@@ -753,7 +788,26 @@ export declare class S3MViewer {
753
788
  private _datasetEdgesEnabled;
754
789
  /** 该 mesh 是否命中「跳过自动描边」的关键字(skeletonName / 数据集名) */
755
790
  private _shouldSkipAutoEdges;
791
+ /**
792
+ * 这块网格还缺哪种棱线装饰(缺就建,齐了就不动)。
793
+ *
794
+ * setEdges 的分片建线靠它筛「还没建完的」,注册新瓦片也靠它决定要不要动手。
795
+ */
796
+ private _needsEdgeDecoration;
797
+ /** 按当前画法补齐这块网格的棱线装饰 */
798
+ private _ensureEdgeDecoration;
756
799
  private _ensureEdges;
800
+ /**
801
+ * 给一块网格挂「背面外扩轮廓」(整场景版)。
802
+ *
803
+ * 复用选中侧那套 `createOutlineMaterial`:顶点沿法线鼓 `edgeHullWidth` 米、只画背面,
804
+ * 于是被本体挡住的部分不显示,露出来的那圈就是描边。与折边线的差别在于——
805
+ * 这里**不建任何新几何**,成本只是把同一块网格多画一遍,折边判定那套 CPU 活全省了。
806
+ *
807
+ * 实例化几何拿不到逐实例变换(轮廓壳是 mesh 的子节点,不吃 instanceMatrix),
808
+ * 直接跳过:宁可这栋没描边,也不要所有实例的壳叠在原点。
809
+ */
810
+ private _ensureHull;
757
811
  /**
758
812
  * 给一块网格造专属的棱线材质。
759
813
  *
@@ -812,6 +866,13 @@ export declare class S3MViewer {
812
866
  /** 选中单体的实际拔高 = 全局选中拔高 + 该单体的独立拔高(与着色器口径一致) */
813
867
  private _selectionElevation;
814
868
  private _clearSelectionDecoration;
869
+ /**
870
+ * 执行一帧 GPU 描边(法线 + 深度后处理)。
871
+ *
872
+ * 参数全部来自 style,不缓存:`edgeWidth` 在这里是「采样偏移」,线宽 ≈ 2×它;
873
+ * `edgeThreshold` 是折边敏感度(夹角小于它不描),和 CPU 折边线同一口径。
874
+ */
875
+ private _renderGpuEdges;
815
876
  /** 等宽线要按设备像素换算线宽:uResolution 用绘图缓冲尺寸,uDpr 是缓冲 / CSS 的比值 */
816
877
  private _updateLineResolution;
817
878
  /** 当前 LOD 切换距离缩放系数 */
@@ -833,6 +894,13 @@ export declare class S3MViewer {
833
894
  * 离屏 canvas 没有布局尺寸(clientHeight 为 0)时退回原口径。
834
895
  */
835
896
  private _lodScreenHeight;
897
+ /** 当前纹理缓存条数上限 */
898
+ get maxImageCache(): number;
899
+ /**
900
+ * 调整纹理缓存条数。不传 `datasetId` 时对所有已存在数据集立即生效,
901
+ * 并作为之后新增数据集的默认值。缓存是 LRU,降下来不会立刻释放,下次淘汰时生效。
902
+ */
903
+ setMaxImageCache(n: number, datasetId?: string): void;
836
904
  /** 当前每个数据集的驻留面数预算。Infinity = 不限制 */
837
905
  get maxTriangles(): number;
838
906
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"S3MViewer.d.ts","sourceRoot":"","sources":["../../src/render/S3MViewer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"S3MViewer.d.ts","sourceRoot":"","sources":["../../src/render/S3MViewer.ts"],"names":[],"mappings":"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"}