s3m-three 0.4.25 → 0.4.26

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 (73) hide show
  1. package/dist/browser/assets/{s3mWorker-jc9Oly5K.js → s3mWorker-DHOVIrAU.js} +1 -1
  2. package/dist/browser/s3m-three.iife.ext-three.js +107 -36
  3. package/dist/browser/s3m-three.iife.js +107 -36
  4. package/dist/core/CustomAttributes.d.ts +7 -0
  5. package/dist/core/CustomAttributes.d.ts.map +1 -0
  6. package/dist/core/CustomAttributes.js +48 -0
  7. package/dist/core/CustomAttributes.js.map +1 -0
  8. package/dist/core/Draco.d.ts.map +1 -1
  9. package/dist/core/Draco.js +149 -2
  10. package/dist/core/Draco.js.map +1 -1
  11. package/dist/core/MeshOpt.d.ts.map +1 -1
  12. package/dist/core/MeshOpt.js +2 -0
  13. package/dist/core/MeshOpt.js.map +1 -1
  14. package/dist/core/S3M1Parser.d.ts.map +1 -1
  15. package/dist/core/S3M1Parser.js +114 -27
  16. package/dist/core/S3M1Parser.js.map +1 -1
  17. package/dist/core/S3MBParser.d.ts +5 -2
  18. package/dist/core/S3MBParser.d.ts.map +1 -1
  19. package/dist/core/S3MBParser.js +27 -12
  20. package/dist/core/S3MBParser.js.map +1 -1
  21. package/dist/core/TileGeometry.d.ts +1 -0
  22. package/dist/core/TileGeometry.d.ts.map +1 -1
  23. package/dist/core/TileGeometry.js +25 -7
  24. package/dist/core/TileGeometry.js.map +1 -1
  25. package/dist/core/types.d.ts +1 -0
  26. package/dist/core/types.d.ts.map +1 -1
  27. package/dist/index.d.ts +4 -2
  28. package/dist/index.d.ts.map +1 -1
  29. package/dist/index.js +2 -1
  30. package/dist/index.js.map +1 -1
  31. package/dist/render/GeometryBuilder.d.ts.map +1 -1
  32. package/dist/render/GeometryBuilder.js +36 -2
  33. package/dist/render/GeometryBuilder.js.map +1 -1
  34. package/dist/render/MotionBlurPass.d.ts +130 -0
  35. package/dist/render/MotionBlurPass.d.ts.map +1 -0
  36. package/dist/render/MotionBlurPass.js +394 -0
  37. package/dist/render/MotionBlurPass.js.map +1 -0
  38. package/dist/render/S3MViewer.d.ts +27 -0
  39. package/dist/render/S3MViewer.d.ts.map +1 -1
  40. package/dist/render/S3MViewer.js +76 -4
  41. package/dist/render/S3MViewer.js.map +1 -1
  42. package/dist/render/viewer/types.d.ts +22 -0
  43. package/dist/render/viewer/types.d.ts.map +1 -1
  44. package/dist/render/viewer/types.js.map +1 -1
  45. package/dist/tileset/S3MTileset.d.ts +19 -0
  46. package/dist/tileset/S3MTileset.d.ts.map +1 -1
  47. package/dist/tileset/S3MTileset.js +71 -4
  48. package/dist/tileset/S3MTileset.js.map +1 -1
  49. package/dist/worker/S3MWorkerClient.d.ts +1 -1
  50. package/dist/worker/S3MWorkerClient.d.ts.map +1 -1
  51. package/dist/worker/S3MWorkerClient.js +2 -2
  52. package/dist/worker/S3MWorkerClient.js.map +1 -1
  53. package/dist/worker/s3mWorker.js +791 -635
  54. package/dist/worker/s3mWorker.js.map +1 -1
  55. package/docs/API.md +18 -5
  56. package/docs/FORMAT-NOTES.md +10 -0
  57. package/package.json +1 -1
  58. package/src/core/CustomAttributes.ts +53 -0
  59. package/src/core/Draco.ts +168 -6
  60. package/src/core/MeshOpt.ts +2 -0
  61. package/src/core/S3M1Parser.ts +102 -22
  62. package/src/core/S3MBParser.ts +33 -14
  63. package/src/core/TileGeometry.ts +34 -7
  64. package/src/core/types.ts +1 -0
  65. package/src/index.ts +4 -2
  66. package/src/render/GeometryBuilder.ts +37 -2
  67. package/src/render/MotionBlurPass.ts +453 -0
  68. package/src/render/S3MViewer.ts +78 -4
  69. package/src/render/viewer/types.ts +22 -0
  70. package/src/tileset/S3MTileset.ts +74 -3
  71. package/src/vendor/draco_decoder.module.d.ts +15 -1
  72. package/src/worker/S3MWorkerClient.ts +7 -2
  73. package/src/worker/s3mWorker.ts +6 -2
@@ -0,0 +1,394 @@
1
+ /**
2
+ * 可选的运动模糊后处理(默认关闭)—— issue #4
3
+ *
4
+ * 动机:低端 / 移动设备 FPS 低,运动物体出现卡顿(judder)与边缘闪烁(shimmer)。
5
+ * 运动模糊本质是「骗眼睛」的特效:把离散帧之间的跳变填成连续模糊,在感知层面
6
+ * 弥补低帧率的不顺滑。它不提升分辨率 / 几何 / 静态画质,只对「正在运动」的画面有效。
7
+ *
8
+ * 两种模式(成本差异大):
9
+ *
10
+ * - `afterimage`(推荐低端机):当前帧 + 上一帧全屏混合,每帧 3 个全屏 pass
11
+ * (场景 → RT、混合 → RT、合成 → 宿主 framebuffer),几乎零边际 GPU 成本。
12
+ * 不是方向感知的:快速平移 / 旋转时像「拖影」而非「方向模糊」,damp 太高会出重影。
13
+ * - `velocity`:相机运动模糊。用「上一帧 MVP ↔ 当前帧 MVP」在 shader 里逐像素反推
14
+ * 裁剪空间速度,沿速度向量 8 tap 采样求平均(方向感知,快速平移是真正的方向拉丝)。
15
+ * 只覆盖相机运动(地图场景的主要运动源),单体动画不产生拖影。
16
+ *
17
+ * 宿主共享上下文下的三条硬约束(与 GpuEdgePass 同一套思路):
18
+ *
19
+ * 1. **本层是画在宿主(MapLibre)framebuffer 上的**,不能整帧后处理宿主画面 ——
20
+ * 场景先进自己的 RT(线性空间,three 往非 XR RT 渲染时不做色调映射 / sRGB 转换,
21
+ * 见 WebGLPrograms 的 outputColorSpace 分支),再用全屏 quad 合成回宿主 framebuffer。
22
+ * 2. **深度不能丢**:直渲时 S3M 几何写宿主深度,后画的宿主图层靠它遮挡。合成 quad
23
+ * 用 `gl_FragDepth` 写回 RT 里记录的深度,遮挡关系与直渲一致;被宿主地形挡住的
24
+ * 像素照样不出现。没有几何的像素(天空)discard,不写深度。
25
+ * 3. **色调映射 / 色彩空间要补**:three 只在渲染到屏幕(target=null)时才对片元做
26
+ * tone mapping 与 linear→sRGB 转换;RT 里存的是线性值,合成 shader 末尾必须
27
+ * `#include <tonemapping_fragment>` + `#include <colorspace_fragment>` 补上,
28
+ * 否则整层会比直渲发暗发灰。
29
+ *
30
+ * 已知限制(有意为之,见 docs/API.md):
31
+ * - 拖影只出现在「当前帧几何覆盖范围内」:合成 quad 依赖本帧深度,快速甩动时
32
+ * 轮廓之外的残影会被丢弃(不写深度就不能保住遮挡正确性)。
33
+ * - 透明混合的顺序语义有细微变化:直渲是「逐片元 tone map 后混合」,这里是
34
+ * 「线性混合后统一 tone map」,半透明重叠区的色值有极小偏差。
35
+ * - RT 用 HalfFloatType(半精度浮点):线性空间的高光 / 自发光不被 clamp 到 [0,1],
36
+ * 代价是三张全屏纹理显存 ×2、带宽 ×2 —— 低端机的取舍见 docs 的性能调优。
37
+ *
38
+ * 只支持 WebGL2(`gl_FragDepth` + `DepthTexture`)。WebGL1 上 `supported()` 返回
39
+ * false,调用方回退直渲路径,行为与不开运动模糊一致。
40
+ */
41
+ import * as THREE from 'three';
42
+ /**
43
+ * 选项归一化。不传 / null / 非对象 = 关闭(返回 null);传了对象 = 开启:
44
+ * mode 缺省或非法回退 `'afterimage'`;damp 缺省 / NaN = `'auto'`,数值钳到 [0, 0.98];
45
+ * maxOffset 缺省 / NaN = 0.05,数值钳到 [0, 1]。
46
+ * 0.98 封顶是防「永远糊着」——damp 趋近 1 时残影按几何级数衰减,30 帧都散不掉。
47
+ */
48
+ export function normalizeMotionBlur(o) {
49
+ if (!o || typeof o !== 'object')
50
+ return null;
51
+ const mode = o.mode === 'velocity' ? 'velocity' : 'afterimage';
52
+ let damp = 'auto';
53
+ if (typeof o.damp === 'number' && Number.isFinite(o.damp)) {
54
+ damp = Math.min(0.98, Math.max(0, o.damp));
55
+ }
56
+ // maxOffset 是屏宽百分比:>1 等于不设上限(整屏拉丝),负数无意义
57
+ let maxOffset = 0.05;
58
+ if (typeof o.maxOffset === 'number' && Number.isFinite(o.maxOffset)) {
59
+ maxOffset = Math.min(1, Math.max(0, o.maxOffset));
60
+ }
61
+ return { mode, damp, maxOffset };
62
+ }
63
+ /**
64
+ * FPS 自适应拖尾(issue #4 的低端机专项:damp 不写死)。
65
+ *
66
+ * `damp = 0.55^(fps/60)` 封顶 0.92:
67
+ * - 60fps ≈ 0.55(克制,桌面 / 高刷屏几乎无感);
68
+ * - 30fps ≈ 0.74、15fps ≈ 0.86(帧间隔越长,需要填的时间洞越宽,拖影越长);
69
+ * - 等价于「拖影覆盖的帧数随帧率降低而增长」,这正是低帧率卡顿需要的补偿;
70
+ * - 未知帧率(0 / NaN,启动前几百毫秒)按 60fps 保守取值,避免开局糊脸。
71
+ */
72
+ export function autoMotionBlurDamp(fps) {
73
+ const f = Number.isFinite(fps) && fps > 0 ? fps : 60;
74
+ return Math.min(0.92, 0.55 ** (f / 60));
75
+ }
76
+ const QUAD_VERT = /* glsl */ `
77
+ out vec2 vUv;
78
+ void main() {
79
+ vUv = uv;
80
+ // 直接给裁剪空间坐标,不走任何矩阵 —— 全屏 quad 没有相机语义(同 GpuEdgePass)
81
+ gl_Position = vec4( position.xy, 0.0, 1.0 );
82
+ }
83
+ `;
84
+ /** afterimage 累积:new = cur×(1-damp) + prev×damp,premultiplied 颜色直接线性混合 */
85
+ const BLEND_FRAG = /* glsl */ `
86
+ uniform sampler2D tCur;
87
+ uniform sampler2D tPrev;
88
+ uniform float uDamp;
89
+ in vec2 vUv;
90
+
91
+ void main() {
92
+ vec4 cur = texture( tCur, vUv );
93
+ vec4 prev = texture( tPrev, vUv );
94
+ // RT 是线性空间(three 往 RT 渲染不做输出转换),混合本身也不涉及 tone map —— 原样直写
95
+ gl_FragColor = cur * ( 1.0 - uDamp ) + prev * uDamp;
96
+ }
97
+ `;
98
+ /**
99
+ * 上屏合成:把 RT 的线性 premultiplied 结果转回宿主 framebuffer。
100
+ * 色调映射 + linear→sRGB 必须在这里补(three 只对渲染到屏幕的片元做这两步)。
101
+ */
102
+ const COMPOSITE_FRAG = /* glsl */ `
103
+ uniform sampler2D tSrc;
104
+ uniform sampler2D tDepth;
105
+ in vec2 vUv;
106
+
107
+ void main() {
108
+ float d = texture( tDepth, vUv ).x;
109
+ // 没有几何(天空 / 底图)不画也不写深度:与直渲「这里没画过」完全一致
110
+ if ( d >= 0.999999 ) discard;
111
+ vec4 c = texture( tSrc, vUv );
112
+ if ( c.a <= 0.004 ) discard;
113
+ // 写回本帧几何的深度:后画的宿主图层照旧能被 S3M 建筑挡住
114
+ gl_FragDepth = d;
115
+ gl_FragColor = c;
116
+ #include <tonemapping_fragment>
117
+ #include <colorspace_fragment>
118
+ }
119
+ `;
120
+ /**
121
+ * velocity:用上一帧 MVP 反推每像素裁剪空间速度,沿速度 8 tap 采样求平均。
122
+ * 速度是相机运动的(地图场景的主要运动源);单体动画不在其内。
123
+ */
124
+ const VELOCITY_FRAG = /* glsl */ `
125
+ uniform sampler2D tCur;
126
+ uniform sampler2D tDepth;
127
+ uniform mat4 uCurInv;
128
+ uniform mat4 uPrevMvp;
129
+ uniform float uMaxOffset;
130
+ in vec2 vUv;
131
+
132
+ void main() {
133
+ float d = texture( tDepth, vUv ).x;
134
+ if ( d >= 0.999999 ) discard;
135
+
136
+ // ndc → 上一帧 ndc:相机没动 → 速度为 0;快速平移 → 沿运动方向拉丝
137
+ vec4 ray = uCurInv * vec4( vUv * 2.0 - 1.0, d * 2.0 - 1.0, 1.0 );
138
+ vec4 prevClip = uPrevMvp * ray;
139
+ vec2 prevUv = ( prevClip.xy / prevClip.w ) * 0.5 + 0.5;
140
+ vec2 vel = prevUv - vUv;
141
+ // 拖影上限(屏幕宽度的百分比):瞬移 / 视角跳变时不整屏拉丝
142
+ float len = length( vel );
143
+ if ( len > uMaxOffset ) vel *= uMaxOffset / len;
144
+
145
+ // premultiplied 颜色的平均仍是 premultiplied —— alpha 通道一起被平均
146
+ vec4 acc = vec4( 0.0 );
147
+ for ( int i = 0; i < 8; i++ ) {
148
+ float t = ( float( i ) + 0.5 ) / 8.0 - 0.5;
149
+ acc += texture( tCur, vUv + vel * t );
150
+ }
151
+ acc /= 8.0;
152
+ if ( acc.a <= 0.004 ) discard;
153
+
154
+ gl_FragDepth = d;
155
+ gl_FragColor = acc;
156
+ #include <tonemapping_fragment>
157
+ #include <colorspace_fragment>
158
+ }
159
+ `;
160
+ export class MotionBlurPass {
161
+ /** 本帧场景(线性颜色 + 深度纹理,两种模式共用) */
162
+ rtScene = null;
163
+ /** afterimage 的 ping-pong 累积目标:同一张纹理不能同时读写(WebGL 未定义行为) */
164
+ rtPrevRead = null;
165
+ rtPrevWrite = null;
166
+ /** 上一帧的 MVP(velocity 用;首帧 = 当前帧 → 零速度) */
167
+ _prevMvp = new THREE.Matrix4();
168
+ /** 上一次 render 的模式:模式切换后累积链作废,afterimage 首帧按 damp=0 重新起步 */
169
+ _lastMode = null;
170
+ _hasPrev = false;
171
+ width = 0;
172
+ height = 0;
173
+ /** afterimage 累积材质(渲染进 RT,无混合、无色彩转换) */
174
+ blendMat;
175
+ /** 上屏合成材质(premultiplied 混合 + gl_FragDepth + tone map / sRGB 补偿) */
176
+ compositeMat;
177
+ /** velocity 一步上屏材质(同为 premultiplied + gl_FragDepth) */
178
+ velocityMat;
179
+ quadScene = new THREE.Scene();
180
+ quadCamera = new THREE.OrthographicCamera(-1, 1, 1, -1, 0, 1);
181
+ constructor() {
182
+ this.blendMat = new THREE.ShaderMaterial({
183
+ glslVersion: THREE.GLSL3,
184
+ uniforms: {
185
+ tCur: { value: null },
186
+ tPrev: { value: null },
187
+ uDamp: { value: 0.55 },
188
+ },
189
+ vertexShader: QUAD_VERT,
190
+ fragmentShader: BLEND_FRAG,
191
+ // 直写累积 RT:混合发生在 shader 里,不能让 fixed-function blending 再叠一次
192
+ blending: THREE.NoBlending,
193
+ depthTest: false,
194
+ depthWrite: false,
195
+ side: THREE.DoubleSide,
196
+ });
197
+ this.compositeMat = new THREE.ShaderMaterial({
198
+ glslVersion: THREE.GLSL3,
199
+ uniforms: {
200
+ tSrc: { value: null },
201
+ tDepth: { value: null },
202
+ },
203
+ vertexShader: QUAD_VERT,
204
+ fragmentShader: COMPOSITE_FRAG,
205
+ transparent: true,
206
+ // RT 里是 premultiplied 颜色(场景以 NormalBlending 渲进透明底必然如此)
207
+ blending: THREE.CustomBlending,
208
+ blendSrc: THREE.OneFactor,
209
+ blendDst: THREE.OneMinusSrcAlphaFactor,
210
+ blendSrcAlpha: THREE.OneFactor,
211
+ blendDstAlpha: THREE.OneMinusSrcAlphaFactor,
212
+ depthTest: true,
213
+ depthWrite: true,
214
+ side: THREE.DoubleSide,
215
+ });
216
+ this.velocityMat = new THREE.ShaderMaterial({
217
+ glslVersion: THREE.GLSL3,
218
+ uniforms: {
219
+ tCur: { value: null },
220
+ tDepth: { value: null },
221
+ uCurInv: { value: new THREE.Matrix4() },
222
+ uPrevMvp: { value: new THREE.Matrix4() },
223
+ uMaxOffset: { value: 0.05 },
224
+ },
225
+ vertexShader: QUAD_VERT,
226
+ fragmentShader: VELOCITY_FRAG,
227
+ transparent: true,
228
+ blending: THREE.CustomBlending,
229
+ blendSrc: THREE.OneFactor,
230
+ blendDst: THREE.OneMinusSrcAlphaFactor,
231
+ blendSrcAlpha: THREE.OneFactor,
232
+ blendDstAlpha: THREE.OneMinusSrcAlphaFactor,
233
+ depthTest: true,
234
+ depthWrite: true,
235
+ side: THREE.DoubleSide,
236
+ });
237
+ // 一个 quad 换材质复用:blend / composite / velocity 都是全屏、无相机语义
238
+ const quad = new THREE.Mesh(new THREE.PlaneGeometry(2, 2), this.blendMat);
239
+ quad.frustumCulled = false;
240
+ quad.raycast = () => { };
241
+ this.quadScene.add(quad);
242
+ }
243
+ /** gl_FragDepth 与 DepthTexture 都是 WebGL2 核心特性,WebGL1 直接不参与 */
244
+ supported(renderer) {
245
+ return renderer.capabilities.isWebGL2 === true;
246
+ }
247
+ ensureSceneTarget(width, height) {
248
+ if (this.rtScene && this.width === width && this.height === height)
249
+ return;
250
+ this.disposeTargets();
251
+ const w = Math.max(1, width);
252
+ const h = Math.max(1, height);
253
+ // 场景 RT:颜色 + 深度纹理(深度既用于 velocity 反推,也用于合成时写回 gl_FragDepth)。
254
+ // HalfFloatType 是必须的:RT 里存的是 tone map 之前的线性值,UnsignedByteType 会把
255
+ // 高光 / 自发光(>1)clamp 到 [0,1],合成 tone map 后与直渲有可感知色差;代价是显存 ×2。
256
+ this.rtScene = new THREE.WebGLRenderTarget(w, h, {
257
+ minFilter: THREE.LinearFilter,
258
+ magFilter: THREE.LinearFilter,
259
+ format: THREE.RGBAFormat,
260
+ type: THREE.HalfFloatType,
261
+ depthBuffer: true,
262
+ stencilBuffer: false,
263
+ generateMipmaps: false,
264
+ });
265
+ this.rtScene.texture.generateMipmaps = false;
266
+ this.rtScene.depthTexture = new THREE.DepthTexture(w, h, THREE.UnsignedIntType);
267
+ this.width = w;
268
+ this.height = h;
269
+ }
270
+ /** afterimage 才需要累积 RT;velocity 用不到就不建(省两份全屏 RGBA) */
271
+ ensurePrevTargets(width, height) {
272
+ if (this.rtPrevRead && this.rtPrevWrite)
273
+ return;
274
+ const w = Math.max(1, width);
275
+ const h = Math.max(1, height);
276
+ const mk = () => {
277
+ // WebGL 保证新分配纹理零初始化,配合「首帧 damp=0」不需要显式 clear。
278
+ // 与场景 RT 同为 HalfFloat:累积链的中间值同样在线性空间,clamp 会逐帧劣化高光
279
+ const rt = new THREE.WebGLRenderTarget(w, h, {
280
+ minFilter: THREE.LinearFilter,
281
+ magFilter: THREE.LinearFilter,
282
+ format: THREE.RGBAFormat,
283
+ type: THREE.HalfFloatType,
284
+ depthBuffer: false,
285
+ stencilBuffer: false,
286
+ generateMipmaps: false,
287
+ });
288
+ rt.texture.generateMipmaps = false;
289
+ return rt;
290
+ };
291
+ this.rtPrevRead = mk();
292
+ this.rtPrevWrite = mk();
293
+ }
294
+ setQuadMaterial(mat) {
295
+ const quad = this.quadScene.children[0];
296
+ quad.material = mat;
297
+ }
298
+ /**
299
+ * 渲一帧。调用方保证:场景本帧还没画过(本 pass 接管「场景 → 屏幕」这一步),
300
+ * 且 supported() 为 true。帧末 prevMvp 滚动为本帧 mvp。
301
+ */
302
+ render(renderer, scene, camera, width, height, params) {
303
+ if (width <= 0 || height <= 0)
304
+ return;
305
+ this.ensureSceneTarget(width, height);
306
+ const rtScene = this.rtScene;
307
+ if (!rtScene)
308
+ return;
309
+ // ---- 1. 场景 → RT(线性空间,透明底。clear color 状态要还原,宿主没让我们改它) ----
310
+ const prevClearColor = renderer.getClearColor(new THREE.Color());
311
+ const prevClearAlpha = renderer.getClearAlpha();
312
+ renderer.setRenderTarget(rtScene);
313
+ renderer.setViewport(0, 0, width, height);
314
+ renderer.setClearColor(0x000000, 0);
315
+ renderer.clear(true, true, true);
316
+ renderer.render(scene, camera);
317
+ // ---- 2. 模糊 + 上屏 ----
318
+ if (params.mode === 'velocity') {
319
+ // velocity:无需累积,沿速度 8 tap 采样直接上屏
320
+ const u = this.velocityMat.uniforms;
321
+ u.tCur.value = rtScene.texture;
322
+ u.tDepth.value = rtScene.depthTexture;
323
+ u.uCurInv.value.copy(params.mvpInverse);
324
+ // 首帧(或刚从 afterimage 切过来还没 prev)prev = cur → 零速度,纯透传
325
+ u.uPrevMvp.value.copy(this._hasPrev ? this._prevMvp : params.mvp);
326
+ u.uMaxOffset.value = params.maxOffset;
327
+ this.setQuadMaterial(this.velocityMat);
328
+ renderer.setRenderTarget(null);
329
+ renderer.setViewport(0, 0, width, height);
330
+ renderer.resetState();
331
+ renderer.render(this.quadScene, this.quadCamera);
332
+ }
333
+ else {
334
+ this.ensurePrevTargets(width, height);
335
+ if (!this.rtPrevRead || !this.rtPrevWrite)
336
+ return;
337
+ // 累积链刚起步(首帧 / 尺寸重建 / 从 velocity 切回来):damp 按 0,
338
+ // 本帧只写当前帧 —— 旧残影不该从别的模式或上一段会话里冒出来
339
+ const firstAccum = this._lastMode !== 'afterimage';
340
+ const u = this.blendMat.uniforms;
341
+ u.tCur.value = rtScene.texture;
342
+ u.tPrev.value = this.rtPrevRead.texture;
343
+ // damp 由 normalizeMotionBlur 钳过、auto 已由 viewer 解析成数值,这里直传
344
+ u.uDamp.value = firstAccum ? 0 : params.damp;
345
+ this.setQuadMaterial(this.blendMat);
346
+ renderer.setRenderTarget(this.rtPrevWrite);
347
+ renderer.setViewport(0, 0, width, height);
348
+ renderer.render(this.quadScene, this.quadCamera);
349
+ const cu = this.compositeMat.uniforms;
350
+ cu.tSrc.value = this.rtPrevWrite.texture;
351
+ cu.tDepth.value = rtScene.depthTexture;
352
+ this.setQuadMaterial(this.compositeMat);
353
+ renderer.setRenderTarget(null);
354
+ renderer.setViewport(0, 0, width, height);
355
+ renderer.resetState();
356
+ renderer.render(this.quadScene, this.quadCamera);
357
+ // ping-pong:本帧的累积结果成为下一帧的 prev
358
+ const t = this.rtPrevRead;
359
+ this.rtPrevRead = this.rtPrevWrite;
360
+ this.rtPrevWrite = t;
361
+ }
362
+ renderer.setClearColor(prevClearColor, prevClearAlpha);
363
+ // 帧末滚动:下一帧的「上一帧」就是本帧
364
+ this._prevMvp.copy(params.mvp);
365
+ this._hasPrev = true;
366
+ this._lastMode = params.mode;
367
+ }
368
+ disposeTargets() {
369
+ for (const rt of [this.rtScene, this.rtPrevRead, this.rtPrevWrite]) {
370
+ if (!rt)
371
+ continue;
372
+ rt.depthTexture?.dispose();
373
+ rt.dispose();
374
+ }
375
+ this.rtScene = null;
376
+ this.rtPrevRead = null;
377
+ this.rtPrevWrite = null;
378
+ this.width = 0;
379
+ this.height = 0;
380
+ this._hasPrev = false;
381
+ this._lastMode = null;
382
+ }
383
+ dispose() {
384
+ this.disposeTargets();
385
+ this.blendMat.dispose();
386
+ this.compositeMat.dispose();
387
+ this.velocityMat.dispose();
388
+ this.quadScene.traverse((o) => {
389
+ const mesh = o;
390
+ mesh.geometry?.dispose?.();
391
+ });
392
+ }
393
+ }
394
+ //# sourceMappingURL=MotionBlurPass.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MotionBlurPass.js","sourceRoot":"","sources":["../../src/render/MotionBlurPass.ts"],"names":[],"mappings":"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"}
@@ -27,6 +27,7 @@ import type { LightOptions, S3MViewerOptions, PickResult, PickableRef, PathFollo
27
27
  import type { OutlineMaterial, StyleMode, S3MStyle, EdgeModes, EdgesOption, MaterialQuality, ColorPipeline } from './StyleMaterial.js';
28
28
  import { Picker } from './Picker.js';
29
29
  import { GpuEdgePass } from './GpuEdgePass.js';
30
+ import type { MotionBlurOptions } from './MotionBlurPass.js';
30
31
  import { Animator } from '../anim/Animator.js';
31
32
  import type { ClipOptions, LineOfSightOptions, LineOfSightResult, LngLatAlt, MeasureResult, SkylineResult, Vec3, ViewshedResult } from '../analysis/index.js';
32
33
  import type { TransitionOptions } from '../anim/Animator.js';
@@ -47,6 +48,7 @@ export type { FeatureStyle, ColorByFieldOptions, ThematicLegendEntry, ThematicRe
47
48
  export type { GroundMode, GroundOptions, } from './GroundManager.js';
48
49
  export { GroundManager, DatasetManager, FeatureStyleManager };
49
50
  export type { PickResult, LightOptions, S3MViewerOptions, PickableRef, PathFollowOptions, } from './viewer/types.js';
51
+ export type { MotionBlurOptions, MotionBlurConfig } from './MotionBlurPass.js';
50
52
  /** 单体沿折线运动的参数 */
51
53
  export declare class S3MViewer {
52
54
  readonly options: S3MViewerOptions;
@@ -184,6 +186,12 @@ export declare class S3MViewer {
184
186
  private readonly _unsupported;
185
187
  /** LOD 判定屏幕高度的 DPR 上限。Infinity = 不截断(默认,行为同旧版) */
186
188
  private _lodPixelRatioCap;
189
+ /**
190
+ * 运动模糊配置(默认 null = 关闭)。归一化后的形状见 `normalizeMotionBlur`;
191
+ * pass 延迟到首帧才建(构造期 renderer 都还没有)。
192
+ */
193
+ private _motionBlurCfg;
194
+ private _motionBlur;
187
195
  /** 宿主请求重画(MapLibre 传 triggerRepaint,纯 three 宿主传自己的渲染循环) */
188
196
  private _requestRepaint;
189
197
  triggerRepaint(): void;
@@ -536,6 +544,16 @@ export declare class S3MViewer {
536
544
  setMaterialQuality(q: MaterialQuality): void;
537
545
  /** 当前材质质感档位(本图层指定了就用本图层的,否则是模块级默认) */
538
546
  get materialQuality(): MaterialQuality;
547
+ /**
548
+ * 运行时开关运动模糊后处理;`null` / 非法入参 = 关闭并立即释放 RT 显存。
549
+ *
550
+ * 这是纯视觉补偿(见 `motionBlur` 选项),对渲染管线唯一的结构性影响是开启期间
551
+ * 「场景 → 屏幕」改走 RT 中转(合成 quad 会补回色调映射 / sRGB / 深度)。
552
+ * WebGL1 上开了也自动回退直渲。`damp: 'auto'` 每帧按实时 FPS 重新解析。
553
+ */
554
+ setMotionBlur(cfg: MotionBlurOptions | null | undefined): void;
555
+ /** 当前运动模糊配置(归一化后的副本);null = 关闭 */
556
+ get motionBlur(): MotionBlurOptions | null;
539
557
  /**
540
558
  * 运行时切换**本图层**的颜色管线(`'linear'` | `'direct'`)。
541
559
  *
@@ -848,6 +866,15 @@ export declare class S3MViewer {
848
866
  */
849
867
  /** @internal 泼溅按视深重排,见 viewer/SplatLayer.ts */
850
868
  _sortSplats(): void;
869
+ /**
870
+ * 运动模糊路径(`_motionBlurCfg` 非空时接管「场景 → 屏幕」)。
871
+ *
872
+ * 返回 false = 不能用(WebGL1 / 尺寸非法),调用方回退直渲 —— 配置保留不丢,
873
+ * 上下文恢复成 WebGL2 后下一帧自动生效。
874
+ * `damp: 'auto'` 在这里按实时 FPS 解析(fps 为 0 的启动阶段按 60fps 保守取值),
875
+ * `maxOffset` 已在 `normalizeMotionBlur` 里归一化(默认 0.05,屏宽百分比)。
876
+ */
877
+ private _renderMotionBlur;
851
878
  /**
852
879
  * 渲染一帧。所有宿主相关量都由调用方喂进来,viewer 不碰任何地图 API:
853
880
  *
@@ -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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"}