@d5techs/3dgs-lib 1.4.81 → 1.4.83

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.
@@ -8,29 +8,29 @@ export interface VolumeState {
8
8
  dimensions: [number, number, number];
9
9
  }
10
10
  /**
11
- * 射线追踪体积选择渲染器 - 复刻 SuperSplat 的视觉效果
12
- *
13
- * 在一个 box mesh 上通过 fragment shader 做射线-盒/射线-球相交,
14
- * 用条纹网格 (strips) 绘制半透明体积。
15
- * 正面条纹为白色 (alpha 0.6),背面条纹为黑色 (alpha 0.6)。
16
- * 使用 frag_depth + 噪声抖动实现随机透明度深度排序。
11
+ * Pass 线框渲染器:
12
+ * Pass 1 (front) depthCompare=less-equal → 正面线条亮色,被模型遮挡则不画
13
+ * Pass 2 (behind) depthCompare=greater → 被遮挡线条暗色半透明,保留完整体积可见性
17
14
  */
18
15
  export declare class SelectionVolumeRenderer {
19
16
  private renderer;
20
17
  private camera;
21
- private boxPipeline;
22
- private spherePipeline;
18
+ private frontPipeline;
19
+ private behindPipeline;
23
20
  private uniformBuffer;
24
21
  private bindGroup;
25
22
  private vertexBuffer;
26
23
  private _volume;
24
+ private vertexCount;
25
+ private frontColor;
27
26
  constructor(renderer: Renderer, camera: Camera);
28
27
  get volume(): VolumeState;
29
28
  setVolume(type: VolumeType, center?: [number, number, number], dimensions?: [number, number, number]): void;
30
29
  setCenter(x: number, y: number, z: number): void;
31
30
  setDimensions(a: number, b: number, c: number): void;
32
- private createResources;
33
- private computeFrustumUniforms;
31
+ private createPipelines;
32
+ private generateBoxVertices;
33
+ private generateSphereVertices;
34
34
  render(pass: GPURenderPassEncoder): void;
35
35
  destroy(): void;
36
36
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@d5techs/3dgs-lib",
3
- "version": "1.4.81",
3
+ "version": "1.4.83",
4
4
  "description": "可扩展的 WebGPU 3D 渲染引擎",
5
5
  "type": "module",
6
6
  "main": "./dist/3dgs-lib.cjs",