@sparkjsdev/spark 0.1.7 → 0.1.9

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.
@@ -166,6 +166,7 @@ export declare class SparkRenderer extends THREE.Mesh {
166
166
  private lastFrame;
167
167
  private lastUpdateTime;
168
168
  private defaultCameras;
169
+ private lastStochastic;
169
170
  viewpoint: SparkViewpoint;
170
171
  private pendingUpdate;
171
172
  private envViewpoint;
@@ -201,6 +202,9 @@ export declare class SparkRenderer extends THREE.Mesh {
201
202
  minAlpha: {
202
203
  value: number;
203
204
  };
205
+ stochastic: {
206
+ value: boolean;
207
+ };
204
208
  enable2DGS: {
205
209
  value: boolean;
206
210
  };
@@ -92,6 +92,7 @@ export type SparkViewpointOptions = {
92
92
  */
93
93
  sort360?: boolean;
94
94
  sort32?: boolean;
95
+ stochastic?: boolean;
95
96
  };
96
97
  export declare class SparkViewpoint {
97
98
  spark: SparkRenderer;
@@ -112,6 +113,7 @@ export declare class SparkViewpoint {
112
113
  depthBias?: number;
113
114
  sort360?: boolean;
114
115
  sort32?: boolean;
116
+ stochastic: boolean;
115
117
  display: {
116
118
  accumulator: SplatAccumulator;
117
119
  viewToWorld: THREE.Matrix4;
@@ -66,6 +66,7 @@ export declare class SplatMesh extends SplatGenerator {
66
66
  pushSplat(center: THREE.Vector3, scales: THREE.Vector3, quaternion: THREE.Quaternion, opacity: number, color: THREE.Color): void;
67
67
  forEachSplat(callback: (index: number, center: THREE.Vector3, scales: THREE.Vector3, quaternion: THREE.Quaternion, opacity: number, color: THREE.Color) => void): void;
68
68
  dispose(): void;
69
+ getBoundingBox(centers_only?: boolean): THREE.Box3;
69
70
  constructGenerator(context: SplatMeshContext): void;
70
71
  updateGenerator(): void;
71
72
  update({ time, viewToWorld, deltaTime, globalEdits, }: {
@@ -16,3 +16,4 @@ export declare const SPLAT_TEX_WIDTH_MASK: number;
16
16
  export declare const SPLAT_TEX_HEIGHT_MASK: number;
17
17
  export declare const SPLAT_TEX_DEPTH_MASK: number;
18
18
  export declare const WASM_SPLAT_SORT = true;
19
+ export declare const USE_COMPILED_PARSER_FUNCTION = true;
@@ -1,4 +1,5 @@
1
- export type PlyPropertyType = "char" | "uchar" | "short" | "ushort" | "int" | "uint" | "float" | "double";
1
+ declare const PLY_PROPERTY_TYPES: readonly ["char", "uchar", "short", "ushort", "int", "uint", "float", "double"];
2
+ export type PlyPropertyType = (typeof PLY_PROPERTY_TYPES)[number];
2
3
  export type PlyElement = {
3
4
  name: string;
4
5
  count: number;
@@ -29,3 +30,4 @@ export declare class PlyReader {
29
30
  injectRgba(rgba: Uint8Array): void;
30
31
  }
31
32
  export declare const SH_C0 = 0.28209479177387814;
33
+ export {};
@@ -17,7 +17,7 @@ export declare class SpzReader {
17
17
  parseSplats(centerCallback?: (index: number, x: number, y: number, z: number) => void, alphaCallback?: (index: number, alpha: number) => void, rgbCallback?: (index: number, r: number, g: number, b: number) => void, scalesCallback?: (index: number, scaleX: number, scaleY: number, scaleZ: number) => void, quatCallback?: (index: number, quatX: number, quatY: number, quatZ: number, quatW: number) => void, shCallback?: (index: number, sh1: Float32Array, sh2?: Float32Array, sh3?: Float32Array) => void): void;
18
18
  }
19
19
  export declare const SPZ_MAGIC = 1347635022;
20
- export declare const SPZ_VERSION = 2;
20
+ export declare const SPZ_VERSION = 3;
21
21
  export declare const FLAG_ANTIALIASED = 1;
22
22
  export declare class SpzWriter {
23
23
  buffer: ArrayBuffer;
@@ -39,7 +39,7 @@ export declare class SpzWriter {
39
39
  static scaleRgb(r: number): number;
40
40
  setRgb(index: number, r: number, g: number, b: number): void;
41
41
  setScale(index: number, scaleX: number, scaleY: number, scaleZ: number): void;
42
- setQuat(index: number, quatX: number, quatY: number, quatZ: number, quatW: number): void;
42
+ setQuat(index: number, ...q: [number, number, number, number]): void;
43
43
  static quantizeSh(sh: number, bits: number): number;
44
44
  setSh(index: number, sh1: Float32Array, sh2?: Float32Array, sh3?: Float32Array): void;
45
45
  finalize(): Promise<Uint8Array>;
@@ -1,9 +1,12 @@
1
1
  import { Gunzip } from 'fflate';
2
2
  import * as THREE from "three";
3
+ export declare function normalize(vec: number[]): number[];
3
4
  export declare function floatBitsToUint(f: number): number;
4
5
  export declare function uintBitsToFloat(u: number): number;
5
- export declare function toHalf(f: number): number;
6
- export declare function fromHalf(h: number): number;
6
+ export declare const toHalf: typeof toHalfNative;
7
+ export declare const fromHalf: typeof fromHalfNative;
8
+ declare function toHalfNative(f: number): number;
9
+ declare function fromHalfNative(u: number): number;
7
10
  export declare function floatToUint8(v: number): number;
8
11
  export declare function floatToSint8(v: number): number;
9
12
  export declare function Uint8ToFloat(v: number): number;
@@ -177,3 +180,4 @@ export declare class GunzipReader {
177
180
  });
178
181
  read(numBytes: number): Uint8Array;
179
182
  }
183
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sparkjsdev/spark",
3
- "version": "0.1.7",
3
+ "version": "0.1.9",
4
4
  "description": "An advanced 3D Gaussian Splatting renderer for THREE.js",
5
5
  "homepage": "https://sparkjs.dev/",
6
6
  "type": "module",
@@ -44,12 +44,12 @@
44
44
  "license": "MIT",
45
45
  "devDependencies": {
46
46
  "@biomejs/biome": "1.9.4",
47
- "@types/three": "0.172.0",
47
+ "@types/three": "0.178.0",
48
48
  "lefthook": "1.11.12",
49
49
  "lil-gui": "^0.20.0",
50
50
  "onchange": "7.1.0",
51
51
  "stats.js": "^0.17.0",
52
- "three": "^0.172.0",
52
+ "three": "^0.178.0",
53
53
  "ts-node": "10.9.2",
54
54
  "typescript": "^5.7.3",
55
55
  "vite": "^6.0.11",