@voluma/vlam 0.3.0 → 0.3.2
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/README.md +0 -2
- package/dist/chunk-loader-DlNwggfG.js.map +1 -1
- package/dist/{index.d.ts → core/index.d.ts} +1 -1
- package/dist/{splat-budget.d.ts → core/splat-budget.d.ts} +1 -1
- package/dist/{splat-data.d.ts → core/splat-data.d.ts} +1 -1
- package/dist/{splat-mesh-types.d.ts → core/splat-mesh-types.d.ts} +5 -2
- package/dist/{effects.d.ts → effects/index.d.ts} +3 -3
- package/dist/effects.js.map +1 -1
- package/dist/formats/ksplat/parse-ksplat.d.ts +1 -1
- package/dist/formats/ksplat.js.map +1 -1
- package/dist/formats/lcc/collision-mesh.d.ts +2 -2
- package/dist/formats/lcc/collision-partition.d.ts +1 -1
- package/dist/formats/lcc/lcc.d.ts +3 -3
- package/dist/formats/lcc/lcc2.d.ts +2 -2
- package/dist/formats/lcc/parse-lcc.d.ts +1 -1
- package/dist/formats/lcc.js.map +1 -1
- package/dist/formats/ply/parse-compressed-ply.d.ts +2 -2
- package/dist/formats/ply/parse-splat-ply.d.ts +2 -2
- package/dist/formats/ply.js.map +1 -1
- package/dist/formats/rad/frontier-worker-protocol.d.ts +8 -1
- package/dist/formats/rad/index.d.ts +1 -1
- package/dist/formats/rad/parse-rad.d.ts +1 -1
- package/dist/formats/rad/rad-foveated-source.d.ts +3 -3
- package/dist/formats/rad/rad.d.ts +5 -5
- package/dist/formats/rad.js.map +1 -1
- package/dist/formats/sog/parse-sog.d.ts +2 -2
- package/dist/formats/sog.js.map +1 -1
- package/dist/formats/splat/parse-splat.d.ts +1 -1
- package/dist/formats/splat.js.map +1 -1
- package/dist/formats/spz/parse-spz.d.ts +1 -1
- package/dist/formats/spz.js.map +1 -1
- package/dist/half-float-Cs4FDq8Q.js.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/{chunk-loader.d.ts → loaders/chunk-loader.d.ts} +2 -2
- package/dist/{load-splat-data.d.ts → loaders/load-splat-data.d.ts} +1 -1
- package/dist/{load-worker-protocol.d.ts → loaders/load-worker-protocol.d.ts} +2 -2
- package/dist/loaders.js.map +1 -1
- package/dist/loading-wLo8vRbA.js.map +1 -1
- package/dist/lod-scheduler-B0a_uBlv.js.map +1 -1
- package/dist/logging-BfPdd7NJ.js.map +1 -1
- package/dist/ply-header-B9WllbPg.js.map +1 -1
- package/dist/{radix-sorter-R0FCSqKu.js → radix-sorter-BrbUg_CV.js} +2 -2
- package/dist/radix-sorter-BrbUg_CV.js.map +1 -0
- package/dist/{relighting-CSQF3UcL.js → relighting-Tiwep8yd.js} +302 -294
- package/dist/relighting-Tiwep8yd.js.map +1 -0
- package/dist/{selection-volume.d.ts → selection/selection-volume.d.ts} +1 -1
- package/dist/{splat-partition.d.ts → selection/splat-partition.d.ts} +1 -1
- package/dist/selection.js.map +1 -1
- package/dist/sh-pack-D5wAe5gg.js.map +1 -1
- package/dist/splat-budget-DuVZspPQ.js.map +1 -1
- package/dist/splat-data-BZM5dhhx.js.map +1 -1
- package/dist/{splat-mesh-aQdcWA6v.js → splat-mesh-CsLOQb08.js} +3 -3
- package/dist/splat-mesh-CsLOQb08.js.map +1 -0
- package/dist/splat-mesh-types-BZIko-_9.js.map +1 -1
- package/dist/{static-lod-splat-mesh.d.ts → static-lod/static-lod-splat-mesh.d.ts} +2 -2
- package/dist/{static-lod-worker-protocol.d.ts → static-lod/static-lod-worker-protocol.d.ts} +1 -1
- package/dist/{static-lod.d.ts → static-lod/static-lod.d.ts} +1 -1
- package/dist/static-lod.js +1 -1
- package/dist/static-lod.js.map +1 -1
- package/dist/{dataset-source.d.ts → streaming/dataset-source.d.ts} +1 -1
- package/dist/{streaming.d.ts → streaming/index.d.ts} +3 -3
- package/dist/{lod-source.d.ts → streaming/lod-source.d.ts} +4 -4
- package/dist/{streamed-splat-mesh-utils.d.ts → streaming/streamed-splat-mesh-utils.d.ts} +2 -2
- package/dist/{streamed-splat-mesh.d.ts → streaming/streamed-splat-mesh.d.ts} +45 -5
- package/dist/streaming.js +844 -810
- package/dist/streaming.js.map +1 -1
- package/dist/{unified-splat-mesh.d.ts → unified/unified-splat-mesh.d.ts} +13 -6
- package/dist/{work-buffer-gather.d.ts → unified/work-buffer-gather.d.ts} +5 -5
- package/dist/{work-buffer-material.d.ts → unified/work-buffer-material.d.ts} +1 -1
- package/dist/unified.js +280 -272
- package/dist/unified.js.map +1 -1
- package/dist/webgpu-limits-Y3CI_6_6.js.map +1 -1
- package/package.json +9 -9
- package/dist/radix-sorter-R0FCSqKu.js.map +0 -1
- package/dist/relighting-CSQF3UcL.js.map +0 -1
- package/dist/splat-mesh-aQdcWA6v.js.map +0 -1
- /package/dist/{compute-sorter.d.ts → core/compute-sorter.d.ts} +0 -0
- /package/dist/{create-splat-renderer.d.ts → core/create-splat-renderer.d.ts} +0 -0
- /package/dist/{depth-of-field.d.ts → core/depth-of-field.d.ts} +0 -0
- /package/dist/{half-float.d.ts → core/half-float.d.ts} +0 -0
- /package/dist/{logging.d.ts → core/logging.d.ts} +0 -0
- /package/dist/{merged-splat-mesh.d.ts → core/merged-splat-mesh.d.ts} +0 -0
- /package/dist/{orientation.d.ts → core/orientation.d.ts} +0 -0
- /package/dist/{radix-sort.d.ts → core/radix-sort.d.ts} +0 -0
- /package/dist/{radix-sorter.d.ts → core/radix-sorter.d.ts} +0 -0
- /package/dist/{relighting-pass.d.ts → core/relighting-pass.d.ts} +0 -0
- /package/dist/{relighting.d.ts → core/relighting.d.ts} +0 -0
- /package/dist/{sh-pack.d.ts → core/sh-pack.d.ts} +0 -0
- /package/dist/{sort-scheduler.d.ts → core/sort-scheduler.d.ts} +0 -0
- /package/dist/{sort-worker-protocol.d.ts → core/sort-worker-protocol.d.ts} +0 -0
- /package/dist/{sorter.d.ts → core/sorter.d.ts} +0 -0
- /package/dist/{source-transform.d.ts → core/source-transform.d.ts} +0 -0
- /package/dist/{splat-depth-pack.d.ts → core/splat-depth-pack.d.ts} +0 -0
- /package/dist/{splat-mesh-material.d.ts → core/splat-mesh-material.d.ts} +0 -0
- /package/dist/{splat-mesh-picking.d.ts → core/splat-mesh-picking.d.ts} +0 -0
- /package/dist/{splat-mesh-pool.d.ts → core/splat-mesh-pool.d.ts} +0 -0
- /package/dist/{splat-mesh.d.ts → core/splat-mesh.d.ts} +0 -0
- /package/dist/{splat-modifier-stack.d.ts → core/splat-modifier-stack.d.ts} +0 -0
- /package/dist/{splat-modifier.d.ts → core/splat-modifier.d.ts} +0 -0
- /package/dist/{splat-query.d.ts → core/splat-query.d.ts} +0 -0
- /package/dist/{splat-sort-bounds.d.ts → core/splat-sort-bounds.d.ts} +0 -0
- /package/dist/{storage-attribute-mirror.d.ts → core/storage-attribute-mirror.d.ts} +0 -0
- /package/dist/{webgpu-limits.d.ts → core/webgpu-limits.d.ts} +0 -0
- /package/dist/{worker-sorter.d.ts → core/worker-sorter.d.ts} +0 -0
- /package/dist/{xr-view.d.ts → core/xr-view.d.ts} +0 -0
- /package/dist/{loaders.d.ts → loaders/index.d.ts} +0 -0
- /package/dist/{loading.d.ts → loaders/loading.d.ts} +0 -0
- /package/dist/{ply-header.d.ts → loaders/ply-header.d.ts} +0 -0
- /package/dist/{selection.d.ts → selection/index.d.ts} +0 -0
- /package/dist/{static-lod-entry.d.ts → static-lod/index.d.ts} +0 -0
- /package/dist/{budget-governor.d.ts → streaming/budget-governor.d.ts} +0 -0
- /package/dist/{camera-budget-governor.d.ts → streaming/camera-budget-governor.d.ts} +0 -0
- /package/dist/{chunk-cache-budget.d.ts → streaming/chunk-cache-budget.d.ts} +0 -0
- /package/dist/{chunk-fetch-scheduler.d.ts → streaming/chunk-fetch-scheduler.d.ts} +0 -0
- /package/dist/{lod-manifest.d.ts → streaming/lod-manifest.d.ts} +0 -0
- /package/dist/{lod-scheduler.d.ts → streaming/lod-scheduler.d.ts} +0 -0
- /package/dist/{unified.d.ts → unified/index.d.ts} +0 -0
- /package/dist/{unified-work-buffer.d.ts → unified/unified-work-buffer.d.ts} +0 -0
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import * as THREE from 'three/webgpu';
|
|
2
|
-
import { type DepthOfFieldSettings } from '
|
|
3
|
-
import { type RelightingSettings, type RelightingUniforms } from '
|
|
4
|
-
import { SplatMesh } from '
|
|
5
|
-
import type { SplatPickOptions, SplatPickResult } from '
|
|
2
|
+
import { type DepthOfFieldSettings } from '../core/depth-of-field';
|
|
3
|
+
import { type RelightingSettings, type RelightingUniforms } from '../core/relighting';
|
|
4
|
+
import { SplatMesh } from '../core/splat-mesh';
|
|
5
|
+
import type { SplatPickOptions, SplatPickResult } from '../core/splat-mesh';
|
|
6
6
|
/** Registration settings for one source in a {@link UnifiedSplatMesh}. */
|
|
7
7
|
export interface UnifiedSplatSourceOptions {
|
|
8
|
-
/** Whole-source opacity applied after
|
|
8
|
+
/** Whole-source display opacity applied after gather falloff. Defaults to `1`.
|
|
9
|
+
* Does not change RAD LOD classification or splat shape. */
|
|
9
10
|
opacity?: number;
|
|
10
11
|
/** Whether this source contributes to the unified draw. Defaults to `true`. */
|
|
11
12
|
visible?: boolean;
|
|
@@ -149,7 +150,13 @@ export declare class UnifiedSplatMesh extends THREE.Mesh {
|
|
|
149
150
|
get droppedSourceCount(): number;
|
|
150
151
|
/** Number of active splats omitted in the most recent update due to capacity. */
|
|
151
152
|
get droppedSplatCount(): number;
|
|
152
|
-
/**
|
|
153
|
+
/**
|
|
154
|
+
* Sets whole-source display opacity without rebuilding the gather pipeline.
|
|
155
|
+
*
|
|
156
|
+
* This scales the completed fragment after RAD merged-vs-leaf classification
|
|
157
|
+
* and falloff. It must never alter LOD selection or splat shape; hosts such as
|
|
158
|
+
* marker crossfades rely on that. Values `<= 0` skip drawing the source.
|
|
159
|
+
*/
|
|
153
160
|
setSourceOpacity(source: SplatMesh, opacity: number): void;
|
|
154
161
|
/** Shows or hides a source without changing its residency. */
|
|
155
162
|
setSourceVisible(source: SplatMesh, visible: boolean): void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as THREE from 'three/webgpu';
|
|
2
|
-
import { type SplatShInputs, type Vec3Uniform } from '
|
|
3
|
-
import type { SplatModifier } from '
|
|
2
|
+
import { type SplatShInputs, type Vec3Uniform } from '../core/splat-mesh-material';
|
|
3
|
+
import type { SplatModifier } from '../core/splat-modifier';
|
|
4
4
|
/**
|
|
5
5
|
* GPU gather pass for Phase 0 of the unified renderer. It resolves a source
|
|
6
6
|
* pool's active local centers into a shared world-space storage buffer. The
|
|
@@ -12,7 +12,7 @@ import type { SplatModifier } from './splat-modifier';
|
|
|
12
12
|
/** Shared GPU storage for every gathered source in one unified frame. */
|
|
13
13
|
export declare class WorkBuffer {
|
|
14
14
|
readonly capacity: number;
|
|
15
|
-
/** World-space center xyz; w is
|
|
15
|
+
/** World-space center xyz; w is display opacity (`visibility × source opacity ×` RAD modifier ratio). */
|
|
16
16
|
readonly centers: THREE.StorageBufferAttribute;
|
|
17
17
|
/** Resolved color and opacity per work slot. */
|
|
18
18
|
readonly colors: THREE.StorageBufferAttribute;
|
|
@@ -86,8 +86,8 @@ export declare class WorkBufferGather {
|
|
|
86
86
|
srgbOutput?: boolean;
|
|
87
87
|
/**
|
|
88
88
|
* Source stores Spark LOD alpha (`alpha ÷ 2`, `.rad`). Recover the full
|
|
89
|
-
* `alpha ∈ [0,2]`
|
|
90
|
-
*
|
|
89
|
+
* `alpha ∈ [0,2]` into `colors.a` from the *original* texture channel so the
|
|
90
|
+
* shared draw material can classify merged vs leaf without seeing fades.
|
|
91
91
|
*/
|
|
92
92
|
lodAlpha?: boolean;
|
|
93
93
|
/** Reuse one target across all source gather passes. */
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as THREE from 'three/webgpu';
|
|
2
|
-
import type { FloatUniform, Vec2Uniform } from '
|
|
2
|
+
import type { FloatUniform, Vec2Uniform } from '../core/splat-mesh-material';
|
|
3
3
|
/**
|
|
4
4
|
* Creates the unified EWA draw material for gathered world-space splats.
|
|
5
5
|
*
|