earthsdk3-assets 3.0.4 → 3.0.6
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/assets/gaussianSplatting/gaussianSplatSorter.js +43 -300
- package/assets/gaussianSplatting/gaussianSplatTextureGenerator.js +56 -105
- package/assets/gaussianSplatting/wasm_splats_bg.wasm +0 -0
- package/assets/glb/poi3d/bridgePrefabricationSite/SM_3dPoi_BridgePrefabricationSite.glb +0 -0
- package/assets/glb/poi3d/exportRoad/SM_3dPoi_ExportRoad.glb +0 -0
- package/assets/glb/poi3d/mixingStation/SM_3dPoi_MixingStation.glb +0 -0
- package/assets/glb/poi3d/prefabricatedComponentsSite/SM_3dPoi_PrefabricatedComponentsSite.glb +0 -0
- package/assets/glb/poi3d/projectDepartment/SM_3dPoi_ProjectDepartment.glb +0 -0
- package/assets/glb/poi3d/railwayFork/SM_3dPoi_RailwayFork.glb +0 -0
- package/assets/glb/poi3d/rebarMachining/SM_3dPoi_RebarMachining.glb +0 -0
- package/assets/glb/poi3d/tempElectricMain/SM_3dPoi_TempElectricMain.glb +0 -0
- package/assets/glb/poi3d/trackLayingBase/SM_3dPoi_TrackLayingBase.glb +0 -0
- package/assets/glb/poi3d/transportationBridge/SM_3dPoi_TransportationBridge.glb +0 -0
- package/assets/img/skybox/baiyun/bottom.png +0 -0
- package/assets/img/skybox/baiyun/east.png +0 -0
- package/assets/img/skybox/baiyun/north.png +0 -0
- package/assets/img/skybox/baiyun/south.png +0 -0
- package/assets/img/skybox/baiyun/top.png +0 -0
- package/assets/img/skybox/baiyun/west.png +0 -0
- package/assets/img/skybox/clearSky/bottom.png +0 -0
- package/assets/img/skybox/clearSky/east.png +0 -0
- package/assets/img/skybox/clearSky/north.png +0 -0
- package/assets/img/skybox/clearSky/south.png +0 -0
- package/assets/img/skybox/clearSky/top.png +0 -0
- package/assets/img/skybox/clearSky/west.png +0 -0
- package/assets/img/skybox/dream/bottom.png +0 -0
- package/assets/img/skybox/dream/east.png +0 -0
- package/assets/img/skybox/dream/north.png +0 -0
- package/assets/img/skybox/dream/south.png +0 -0
- package/assets/img/skybox/dream/top.png +0 -0
- package/assets/img/skybox/dream/west.png +0 -0
- package/assets/img/skybox/starrySky/bottom.png +0 -0
- package/assets/img/skybox/starrySky/east.png +0 -0
- package/assets/img/skybox/starrySky/north.png +0 -0
- package/assets/img/skybox/starrySky/south.png +0 -0
- package/assets/img/skybox/starrySky/top.png +0 -0
- package/assets/img/skybox/starrySky/west.png +0 -0
- package/assets/img/skybox/sunSets/bottom.png +0 -0
- package/assets/img/skybox/sunSets/east.png +0 -0
- package/assets/img/skybox/sunSets/north.png +0 -0
- package/assets/img/skybox/sunSets/south.png +0 -0
- package/assets/img/skybox/sunSets/top.png +0 -0
- package/assets/img/skybox/sunSets/west.png +0 -0
- package/assets/img/skybox/sunnySky/bottom.png +0 -0
- package/assets/img/skybox/sunnySky/east.png +0 -0
- package/assets/img/skybox/sunnySky/north.png +0 -0
- package/assets/img/skybox/sunnySky/south.png +0 -0
- package/assets/img/skybox/sunnySky/top.png +0 -0
- package/assets/img/skybox/sunnySky/west.png +0 -0
- package/package.json +1 -1
- package/assets/img/skybox/baiyun/bottom.jpg +0 -0
- package/assets/img/skybox/baiyun/east.jpg +0 -0
- package/assets/img/skybox/baiyun/north.jpg +0 -0
- package/assets/img/skybox/baiyun/south.jpg +0 -0
- package/assets/img/skybox/baiyun/top.jpg +0 -0
- package/assets/img/skybox/baiyun/west.jpg +0 -0
- package/assets/img/skybox/clearSky/bottom.jpg +0 -0
- package/assets/img/skybox/clearSky/east.jpg +0 -0
- package/assets/img/skybox/clearSky/north.jpg +0 -0
- package/assets/img/skybox/clearSky/south.jpg +0 -0
- package/assets/img/skybox/clearSky/top.jpg +0 -0
- package/assets/img/skybox/clearSky/west.jpg +0 -0
- package/assets/img/skybox/dream/bottom.jpg +0 -0
- package/assets/img/skybox/dream/east.jpg +0 -0
- package/assets/img/skybox/dream/north.jpg +0 -0
- package/assets/img/skybox/dream/south.jpg +0 -0
- package/assets/img/skybox/dream/top.jpg +0 -0
- package/assets/img/skybox/dream/west.jpg +0 -0
- package/assets/img/skybox/starrySky/bottom.jpg +0 -0
- package/assets/img/skybox/starrySky/east.jpg +0 -0
- package/assets/img/skybox/starrySky/north.jpg +0 -0
- package/assets/img/skybox/starrySky/south.jpg +0 -0
- package/assets/img/skybox/starrySky/top.jpg +0 -0
- package/assets/img/skybox/starrySky/west.jpg +0 -0
- package/assets/img/skybox/sunSets/bottom.jpg +0 -0
- package/assets/img/skybox/sunSets/east.jpg +0 -0
- package/assets/img/skybox/sunSets/north.jpg +0 -0
- package/assets/img/skybox/sunSets/south.jpg +0 -0
- package/assets/img/skybox/sunSets/top.jpg +0 -0
- package/assets/img/skybox/sunSets/west.jpg +0 -0
- package/assets/img/skybox/sunnySky/bottom.jpg +0 -0
- package/assets/img/skybox/sunnySky/east.jpg +0 -0
- package/assets/img/skybox/sunnySky/north.jpg +0 -0
- package/assets/img/skybox/sunnySky/south.jpg +0 -0
- package/assets/img/skybox/sunnySky/top.jpg +0 -0
- package/assets/img/skybox/sunnySky/west.jpg +0 -0
|
@@ -122,55 +122,8 @@ function createTaskProcessorWorker(workerFunction) {
|
|
|
122
122
|
self.onmessageerror = onMessageErrorHandler;
|
|
123
123
|
return self;
|
|
124
124
|
}
|
|
125
|
-
|
|
126
|
-
/**
|
|
127
|
-
* A function that performs a calculation in a Web Worker.
|
|
128
|
-
* @callback createTaskProcessorWorker.WorkerFunction
|
|
129
|
-
*
|
|
130
|
-
* @param {object} parameters Parameters to the calculation.
|
|
131
|
-
* @param {Array} transferableObjects An array that should be filled with references to objects inside
|
|
132
|
-
* the result that should be transferred back to the main document instead of copied.
|
|
133
|
-
* @returns {object} The result of the calculation.
|
|
134
|
-
*
|
|
135
|
-
* @example
|
|
136
|
-
* function calculate(parameters, transferableObjects) {
|
|
137
|
-
* // perform whatever calculation is necessary.
|
|
138
|
-
* const typedArray = new Float32Array(0);
|
|
139
|
-
*
|
|
140
|
-
* // typed arrays are transferable
|
|
141
|
-
* transferableObjects.push(typedArray)
|
|
142
|
-
*
|
|
143
|
-
* return {
|
|
144
|
-
* typedArray : typedArray
|
|
145
|
-
* };
|
|
146
|
-
* }
|
|
147
|
-
*/
|
|
148
|
-
|
|
149
|
-
/**
|
|
150
|
-
* A Web Worker message event handler function that handles the interaction with TaskProcessor,
|
|
151
|
-
* specifically, task ID management and posting a response message containing the result.
|
|
152
|
-
* @callback createTaskProcessorWorker.TaskProcessorWorkerFunction
|
|
153
|
-
*
|
|
154
|
-
* @param {object} event The onmessage event object.
|
|
155
|
-
*/
|
|
156
|
-
|
|
157
125
|
let wasm;
|
|
158
126
|
|
|
159
|
-
function addToExternrefTable0(obj) {
|
|
160
|
-
const idx = wasm.__externref_table_alloc();
|
|
161
|
-
wasm.__wbindgen_export_2.set(idx, obj);
|
|
162
|
-
return idx;
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
function handleError(f, args) {
|
|
166
|
-
try {
|
|
167
|
-
return f.apply(this, args);
|
|
168
|
-
} catch (e) {
|
|
169
|
-
const idx = addToExternrefTable0(e);
|
|
170
|
-
wasm.__wbindgen_exn_store(idx);
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
|
|
174
127
|
const cachedTextDecoder = (typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }) : { decode: () => { throw Error('TextDecoder not available') } });
|
|
175
128
|
|
|
176
129
|
if (typeof TextDecoder !== 'undefined') { cachedTextDecoder.decode(); };
|
|
@@ -213,212 +166,52 @@ function passArray32ToWasm0(arg, malloc) {
|
|
|
213
166
|
}
|
|
214
167
|
|
|
215
168
|
function takeFromExternrefTable0(idx) {
|
|
216
|
-
const value = wasm.
|
|
169
|
+
const value = wasm.__wbindgen_export_0.get(idx);
|
|
217
170
|
wasm.__externref_table_dealloc(idx);
|
|
218
171
|
return value;
|
|
219
172
|
}
|
|
220
173
|
/**
|
|
174
|
+
* Generate a splat texture from the given attributes.
|
|
175
|
+
*
|
|
176
|
+
* Wraps the [`texture_gen::generate_texture_from_attrs`] function for access from JavaScript.
|
|
221
177
|
* @param {Float32Array} positions
|
|
222
178
|
* @param {Float32Array} scales
|
|
223
|
-
* @param {Float32Array}
|
|
179
|
+
* @param {Float32Array} rotations
|
|
224
180
|
* @param {Uint8Array} colors
|
|
225
181
|
* @param {number} count
|
|
226
182
|
* @returns {TextureData}
|
|
227
183
|
*/
|
|
228
|
-
export function
|
|
229
|
-
const ret = wasm.
|
|
184
|
+
export function generate_splat_texture(positions, scales, rotations, colors, count) {
|
|
185
|
+
const ret = wasm.generate_splat_texture(positions, scales, rotations, colors, count);
|
|
230
186
|
if (ret[2]) {
|
|
231
187
|
throw takeFromExternrefTable0(ret[1]);
|
|
232
188
|
}
|
|
233
189
|
return TextureData.__wrap(ret[0]);
|
|
234
190
|
}
|
|
235
191
|
|
|
236
|
-
let cachedFloat32ArrayMemory0 = null;
|
|
237
|
-
|
|
238
|
-
function getFloat32ArrayMemory0() {
|
|
239
|
-
if (cachedFloat32ArrayMemory0 === null || cachedFloat32ArrayMemory0.byteLength === 0) {
|
|
240
|
-
cachedFloat32ArrayMemory0 = new Float32Array(wasm.memory.buffer);
|
|
241
|
-
}
|
|
242
|
-
return cachedFloat32ArrayMemory0;
|
|
243
|
-
}
|
|
244
|
-
|
|
245
|
-
function passArrayF32ToWasm0(arg, malloc) {
|
|
246
|
-
const ptr = malloc(arg.length * 4, 4) >>> 0;
|
|
247
|
-
getFloat32ArrayMemory0().set(arg, ptr / 4);
|
|
248
|
-
WASM_VECTOR_LEN = arg.length;
|
|
249
|
-
return ptr;
|
|
250
|
-
}
|
|
251
|
-
|
|
252
|
-
function passArray8ToWasm0(arg, malloc) {
|
|
253
|
-
const ptr = malloc(arg.length * 1, 1) >>> 0;
|
|
254
|
-
getUint8ArrayMemory0().set(arg, ptr / 1);
|
|
255
|
-
WASM_VECTOR_LEN = arg.length;
|
|
256
|
-
return ptr;
|
|
257
|
-
}
|
|
258
|
-
|
|
259
|
-
function _assertClass(instance, klass) {
|
|
260
|
-
if (!(instance instanceof klass)) {
|
|
261
|
-
throw new Error(`expected instance of ${klass.name}`);
|
|
262
|
-
}
|
|
263
|
-
}
|
|
264
192
|
/**
|
|
265
|
-
*
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
if (ret[1]) {
|
|
271
|
-
throw takeFromExternrefTable0(ret[0]);
|
|
272
|
-
}
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
/**
|
|
276
|
-
* @param {Float32Array} positions
|
|
277
|
-
* @param {Float32Array} scales
|
|
278
|
-
* @param {Float32Array} rotations
|
|
279
|
-
* @param {Uint8Array} colors
|
|
280
|
-
* @param {Float32Array} model_view
|
|
281
|
-
* @param {number} count
|
|
282
|
-
* @returns {Array<any>}
|
|
283
|
-
*/
|
|
284
|
-
export function radix_sort_gaussians_attrs(positions, scales, rotations, colors, model_view, count) {
|
|
285
|
-
const ret = wasm.radix_sort_gaussians_attrs(positions, scales, rotations, colors, model_view, count);
|
|
286
|
-
if (ret[2]) {
|
|
287
|
-
throw takeFromExternrefTable0(ret[1]);
|
|
288
|
-
}
|
|
289
|
-
return takeFromExternrefTable0(ret[0]);
|
|
290
|
-
}
|
|
291
|
-
|
|
292
|
-
/**
|
|
293
|
-
* @param {Float32Array} positions
|
|
294
|
-
* @param {Float32Array} model_view
|
|
295
|
-
* @param {number} texture_width
|
|
193
|
+
* Sorts the Gaussian Splats by depth using a radix sort.
|
|
194
|
+
*
|
|
195
|
+
* Wraps the [`radix::radix_sort_gaussians_indexes`] function for access from JavaScript.
|
|
196
|
+
* @param {Float32Array} positions_arr
|
|
197
|
+
* @param {Float32Array} model_view_arr
|
|
296
198
|
* @param {number} count
|
|
297
199
|
* @returns {Uint32Array}
|
|
298
200
|
*/
|
|
299
|
-
export function radix_sort_gaussians_indexes(
|
|
300
|
-
const ret = wasm.radix_sort_gaussians_indexes(
|
|
201
|
+
export function radix_sort_gaussians_indexes(positions_arr, model_view_arr, count) {
|
|
202
|
+
const ret = wasm.radix_sort_gaussians_indexes(positions_arr, model_view_arr, count);
|
|
301
203
|
if (ret[2]) {
|
|
302
204
|
throw takeFromExternrefTable0(ret[1]);
|
|
303
205
|
}
|
|
304
206
|
return takeFromExternrefTable0(ret[0]);
|
|
305
207
|
}
|
|
306
208
|
|
|
307
|
-
/**
|
|
308
|
-
* @param {Float32Array} positions
|
|
309
|
-
* @param {Float32Array} scales
|
|
310
|
-
* @param {Float32Array} rotations
|
|
311
|
-
* @param {Uint8Array} colors
|
|
312
|
-
* @param {number} count
|
|
313
|
-
* @returns {object}
|
|
314
|
-
*/
|
|
315
|
-
export function generate_splat_texture_from_attrs(positions, scales, rotations, colors, count) {
|
|
316
|
-
const ret = wasm.generate_splat_texture_from_attrs(positions, scales, rotations, colors, count);
|
|
317
|
-
if (ret[2]) {
|
|
318
|
-
throw takeFromExternrefTable0(ret[1]);
|
|
319
|
-
}
|
|
320
|
-
return takeFromExternrefTable0(ret[0]);
|
|
321
|
-
}
|
|
322
|
-
|
|
323
|
-
const GSplatDataFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
324
|
-
? { register: () => { }, unregister: () => { } }
|
|
325
|
-
: new FinalizationRegistry(ptr => wasm.__wbg_gsplatdata_free(ptr >>> 0, 1));
|
|
326
|
-
|
|
327
|
-
export class GSplatData {
|
|
328
|
-
|
|
329
|
-
static __wrap(ptr) {
|
|
330
|
-
ptr = ptr >>> 0;
|
|
331
|
-
const obj = Object.create(GSplatData.prototype);
|
|
332
|
-
obj.__wbg_ptr = ptr;
|
|
333
|
-
GSplatDataFinalization.register(obj, obj.__wbg_ptr, obj);
|
|
334
|
-
return obj;
|
|
335
|
-
}
|
|
336
|
-
|
|
337
|
-
__destroy_into_raw() {
|
|
338
|
-
const ptr = this.__wbg_ptr;
|
|
339
|
-
this.__wbg_ptr = 0;
|
|
340
|
-
GSplatDataFinalization.unregister(this);
|
|
341
|
-
return ptr;
|
|
342
|
-
}
|
|
343
|
-
|
|
344
|
-
free() {
|
|
345
|
-
const ptr = this.__destroy_into_raw();
|
|
346
|
-
wasm.__wbg_gsplatdata_free(ptr, 0);
|
|
347
|
-
}
|
|
348
|
-
/**
|
|
349
|
-
* @param {Float32Array} positions
|
|
350
|
-
* @param {Float32Array} scales
|
|
351
|
-
* @param {Float32Array} rotations
|
|
352
|
-
* @param {Uint8Array} colors
|
|
353
|
-
* @param {Float32Array} model_view
|
|
354
|
-
* @param {number} count
|
|
355
|
-
*/
|
|
356
|
-
constructor(positions, scales, rotations, colors, model_view, count) {
|
|
357
|
-
const ptr0 = passArrayF32ToWasm0(positions, wasm.__wbindgen_malloc);
|
|
358
|
-
const len0 = WASM_VECTOR_LEN;
|
|
359
|
-
const ptr1 = passArrayF32ToWasm0(scales, wasm.__wbindgen_malloc);
|
|
360
|
-
const len1 = WASM_VECTOR_LEN;
|
|
361
|
-
const ptr2 = passArrayF32ToWasm0(rotations, wasm.__wbindgen_malloc);
|
|
362
|
-
const len2 = WASM_VECTOR_LEN;
|
|
363
|
-
const ptr3 = passArray8ToWasm0(colors, wasm.__wbindgen_malloc);
|
|
364
|
-
const len3 = WASM_VECTOR_LEN;
|
|
365
|
-
const ptr4 = passArrayF32ToWasm0(model_view, wasm.__wbindgen_malloc);
|
|
366
|
-
const len4 = WASM_VECTOR_LEN;
|
|
367
|
-
const ret = wasm.gsplatdata_new(ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4, count);
|
|
368
|
-
this.__wbg_ptr = ret >>> 0;
|
|
369
|
-
GSplatDataFinalization.register(this, this.__wbg_ptr, this);
|
|
370
|
-
return this;
|
|
371
|
-
}
|
|
372
|
-
/**
|
|
373
|
-
* @param {Float32Array} positions
|
|
374
|
-
* @param {Float32Array} scales
|
|
375
|
-
* @param {Float32Array} rotations
|
|
376
|
-
* @param {Uint8Array} colors
|
|
377
|
-
* @param {Float32Array} model_view
|
|
378
|
-
* @param {number} count
|
|
379
|
-
* @returns {GSplatData}
|
|
380
|
-
*/
|
|
381
|
-
static fromFloat32Arrays(positions, scales, rotations, colors, model_view, count) {
|
|
382
|
-
const ret = wasm.gsplatdata_fromFloat32Arrays(positions, scales, rotations, colors, model_view, count);
|
|
383
|
-
if (ret[2]) {
|
|
384
|
-
throw takeFromExternrefTable0(ret[1]);
|
|
385
|
-
}
|
|
386
|
-
return GSplatData.__wrap(ret[0]);
|
|
387
|
-
}
|
|
388
|
-
/**
|
|
389
|
-
* @returns {Float32Array}
|
|
390
|
-
*/
|
|
391
|
-
getPositions() {
|
|
392
|
-
const ret = wasm.gsplatdata_getPositions(this.__wbg_ptr);
|
|
393
|
-
return ret;
|
|
394
|
-
}
|
|
395
|
-
/**
|
|
396
|
-
* @returns {Float32Array}
|
|
397
|
-
*/
|
|
398
|
-
getScales() {
|
|
399
|
-
const ret = wasm.gsplatdata_getScales(this.__wbg_ptr);
|
|
400
|
-
return ret;
|
|
401
|
-
}
|
|
402
|
-
/**
|
|
403
|
-
* @returns {Float32Array}
|
|
404
|
-
*/
|
|
405
|
-
getRotations() {
|
|
406
|
-
const ret = wasm.gsplatdata_getRotations(this.__wbg_ptr);
|
|
407
|
-
return ret;
|
|
408
|
-
}
|
|
409
|
-
/**
|
|
410
|
-
* @returns {Uint8Array}
|
|
411
|
-
*/
|
|
412
|
-
getColors() {
|
|
413
|
-
const ret = wasm.gsplatdata_getColors(this.__wbg_ptr);
|
|
414
|
-
return ret;
|
|
415
|
-
}
|
|
416
|
-
}
|
|
417
|
-
|
|
418
209
|
const TextureDataFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
419
210
|
? { register: () => { }, unregister: () => { } }
|
|
420
211
|
: new FinalizationRegistry(ptr => wasm.__wbg_texturedata_free(ptr >>> 0, 1));
|
|
421
|
-
|
|
212
|
+
/**
|
|
213
|
+
* A structure representing texture data. This is used to pass the texture data from generation in [`texture_gen`] to the JavaScript side.
|
|
214
|
+
*/
|
|
422
215
|
export class TextureData {
|
|
423
216
|
|
|
424
217
|
static __wrap(ptr) {
|
|
@@ -441,6 +234,7 @@ export class TextureData {
|
|
|
441
234
|
wasm.__wbg_texturedata_free(ptr, 0);
|
|
442
235
|
}
|
|
443
236
|
/**
|
|
237
|
+
* Getter for the underlying texture data. Always returns a copy.
|
|
444
238
|
* @returns {Uint32Array}
|
|
445
239
|
*/
|
|
446
240
|
get data() {
|
|
@@ -450,6 +244,7 @@ export class TextureData {
|
|
|
450
244
|
return v1;
|
|
451
245
|
}
|
|
452
246
|
/**
|
|
247
|
+
* Getter for the width of the texture in pixels.
|
|
453
248
|
* @returns {number}
|
|
454
249
|
*/
|
|
455
250
|
get width() {
|
|
@@ -457,6 +252,7 @@ export class TextureData {
|
|
|
457
252
|
return ret >>> 0;
|
|
458
253
|
}
|
|
459
254
|
/**
|
|
255
|
+
* Getter for the height of the texture in pixels.
|
|
460
256
|
* @returns {number}
|
|
461
257
|
*/
|
|
462
258
|
get height() {
|
|
@@ -464,6 +260,7 @@ export class TextureData {
|
|
|
464
260
|
return ret >>> 0;
|
|
465
261
|
}
|
|
466
262
|
/**
|
|
263
|
+
* Creates a new texture data object with the underlying data, width, and height.
|
|
467
264
|
* @param {Uint32Array} data
|
|
468
265
|
* @param {number} width
|
|
469
266
|
* @param {number} height
|
|
@@ -511,83 +308,42 @@ async function __wbg_load(module, imports) {
|
|
|
511
308
|
function __wbg_get_imports() {
|
|
512
309
|
const imports = {};
|
|
513
310
|
imports.wbg = {};
|
|
514
|
-
imports.wbg.
|
|
311
|
+
imports.wbg.__wbg_buffer_609cc3eee51ed158 = function (arg0) {
|
|
515
312
|
const ret = arg0.buffer;
|
|
516
313
|
return ret;
|
|
517
314
|
};
|
|
518
|
-
imports.wbg.
|
|
519
|
-
const ret = arg0.length;
|
|
520
|
-
return ret;
|
|
521
|
-
};
|
|
522
|
-
imports.wbg.__wbg_length_81a294bd2038fd26 = function (arg0) {
|
|
315
|
+
imports.wbg.__wbg_length_3b4f022188ae8db6 = function (arg0) {
|
|
523
316
|
const ret = arg0.length;
|
|
524
317
|
return ret;
|
|
525
318
|
};
|
|
526
|
-
imports.wbg.
|
|
319
|
+
imports.wbg.__wbg_length_a446193dc22c12f8 = function (arg0) {
|
|
527
320
|
const ret = arg0.length;
|
|
528
321
|
return ret;
|
|
529
322
|
};
|
|
530
|
-
imports.wbg.
|
|
531
|
-
const ret = new
|
|
323
|
+
imports.wbg.__wbg_new_780abee5c1739fd7 = function (arg0) {
|
|
324
|
+
const ret = new Float32Array(arg0);
|
|
532
325
|
return ret;
|
|
533
326
|
};
|
|
534
|
-
imports.wbg.
|
|
327
|
+
imports.wbg.__wbg_new_a12002a7f91c75be = function (arg0) {
|
|
535
328
|
const ret = new Uint8Array(arg0);
|
|
536
329
|
return ret;
|
|
537
330
|
};
|
|
538
|
-
imports.wbg.
|
|
539
|
-
const ret = new
|
|
331
|
+
imports.wbg.__wbg_new_e3b321dcfef89fc7 = function (arg0) {
|
|
332
|
+
const ret = new Uint32Array(arg0);
|
|
540
333
|
return ret;
|
|
541
334
|
};
|
|
542
|
-
imports.wbg.
|
|
543
|
-
const ret = new Float32Array(arg0);
|
|
544
|
-
return ret;
|
|
545
|
-
};
|
|
546
|
-
imports.wbg.__wbg_newwithbyteoffsetandlength_5910bdf845a168eb = function (arg0, arg1, arg2) {
|
|
335
|
+
imports.wbg.__wbg_newwithbyteoffsetandlength_f1dead44d1fc7212 = function (arg0, arg1, arg2) {
|
|
547
336
|
const ret = new Uint32Array(arg0, arg1 >>> 0, arg2 >>> 0);
|
|
548
337
|
return ret;
|
|
549
338
|
};
|
|
550
|
-
imports.wbg.
|
|
551
|
-
const ret = new Uint8Array(arg0, arg1 >>> 0, arg2 >>> 0);
|
|
552
|
-
return ret;
|
|
553
|
-
};
|
|
554
|
-
imports.wbg.__wbg_newwithbyteoffsetandlength_f113a96374814bb2 = function (arg0, arg1, arg2) {
|
|
555
|
-
const ret = new Float32Array(arg0, arg1 >>> 0, arg2 >>> 0);
|
|
556
|
-
return ret;
|
|
557
|
-
};
|
|
558
|
-
imports.wbg.__wbg_newwithlength_1761a9eb039ca429 = function (arg0) {
|
|
559
|
-
const ret = new Uint32Array(arg0 >>> 0);
|
|
560
|
-
return ret;
|
|
561
|
-
};
|
|
562
|
-
imports.wbg.__wbg_newwithlength_34ce8f1051e74449 = function (arg0) {
|
|
563
|
-
const ret = new Uint8Array(arg0 >>> 0);
|
|
564
|
-
return ret;
|
|
565
|
-
};
|
|
566
|
-
imports.wbg.__wbg_newwithlength_ed665315b76ec334 = function (arg0) {
|
|
567
|
-
const ret = new Float32Array(arg0 >>> 0);
|
|
568
|
-
return ret;
|
|
569
|
-
};
|
|
570
|
-
imports.wbg.__wbg_push_6edad0df4b546b2c = function (arg0, arg1) {
|
|
571
|
-
const ret = arg0.push(arg1);
|
|
572
|
-
return ret;
|
|
573
|
-
};
|
|
574
|
-
imports.wbg.__wbg_set_23d69db4e5c66a6e = function (arg0, arg1, arg2) {
|
|
339
|
+
imports.wbg.__wbg_set_10bad9bee0e9c58b = function (arg0, arg1, arg2) {
|
|
575
340
|
arg0.set(arg1, arg2 >>> 0);
|
|
576
341
|
};
|
|
577
|
-
imports.wbg.
|
|
578
|
-
arg0.set(arg1, arg2 >>> 0);
|
|
579
|
-
};
|
|
580
|
-
imports.wbg.__wbg_set_4e647025551483bd = function () {
|
|
581
|
-
return handleError(function (arg0, arg1, arg2) {
|
|
582
|
-
const ret = Reflect.set(arg0, arg1, arg2);
|
|
583
|
-
return ret;
|
|
584
|
-
}, arguments)
|
|
585
|
-
};
|
|
586
|
-
imports.wbg.__wbg_set_d2ca640bc040b031 = function (arg0, arg1, arg2) {
|
|
342
|
+
imports.wbg.__wbg_set_65595bdd868b3009 = function (arg0, arg1, arg2) {
|
|
587
343
|
arg0.set(arg1, arg2 >>> 0);
|
|
588
344
|
};
|
|
589
345
|
imports.wbg.__wbindgen_init_externref_table = function () {
|
|
590
|
-
const table = wasm.
|
|
346
|
+
const table = wasm.__wbindgen_export_0;
|
|
591
347
|
const offset = table.grow(4);
|
|
592
348
|
table.set(0, undefined);
|
|
593
349
|
table.set(offset + 0, undefined);
|
|
@@ -600,10 +356,6 @@ function __wbg_get_imports() {
|
|
|
600
356
|
const ret = wasm.memory;
|
|
601
357
|
return ret;
|
|
602
358
|
};
|
|
603
|
-
imports.wbg.__wbindgen_number_new = function (arg0) {
|
|
604
|
-
const ret = arg0;
|
|
605
|
-
return ret;
|
|
606
|
-
};
|
|
607
359
|
imports.wbg.__wbindgen_string_new = function (arg0, arg1) {
|
|
608
360
|
const ret = getStringFromWasm0(arg0, arg1);
|
|
609
361
|
return ret;
|
|
@@ -622,7 +374,6 @@ function __wbg_init_memory(imports, memory) {
|
|
|
622
374
|
function __wbg_finalize_init(instance, module) {
|
|
623
375
|
wasm = instance.exports;
|
|
624
376
|
__wbg_init.__wbindgen_wasm_module = module;
|
|
625
|
-
cachedFloat32ArrayMemory0 = null;
|
|
626
377
|
cachedUint32ArrayMemory0 = null;
|
|
627
378
|
cachedUint8ArrayMemory0 = null;
|
|
628
379
|
|
|
@@ -669,7 +420,7 @@ async function __wbg_init(module_or_path) {
|
|
|
669
420
|
}
|
|
670
421
|
|
|
671
422
|
if (typeof module_or_path === 'undefined') {
|
|
672
|
-
module_or_path = new URL('
|
|
423
|
+
module_or_path = new URL('wasm_splats_bg.wasm', import.meta.url);
|
|
673
424
|
}
|
|
674
425
|
const imports = __wbg_get_imports();
|
|
675
426
|
|
|
@@ -684,7 +435,6 @@ async function __wbg_init(module_or_path) {
|
|
|
684
435
|
return __wbg_finalize_init(instance, module);
|
|
685
436
|
}
|
|
686
437
|
|
|
687
|
-
|
|
688
438
|
//load built wasm modules for sorting. Ensure we can load webassembly and we support SIMD.
|
|
689
439
|
async function initWorker(parameters, transferableObjects) {
|
|
690
440
|
// Require and compile WebAssembly module, or use fallback if not supported
|
|
@@ -695,7 +445,6 @@ async function initWorker(parameters, transferableObjects) {
|
|
|
695
445
|
}
|
|
696
446
|
}
|
|
697
447
|
|
|
698
|
-
const TEXTURE_WIDTH = 2048;
|
|
699
448
|
|
|
700
449
|
function generateGaussianSortWorker(parameters, transferableObjects) {
|
|
701
450
|
// Handle initialization
|
|
@@ -706,27 +455,21 @@ function generateGaussianSortWorker(parameters, transferableObjects) {
|
|
|
706
455
|
|
|
707
456
|
const { primitive, sortType } = parameters;
|
|
708
457
|
|
|
709
|
-
if (sortType === "
|
|
710
|
-
return radix_sort_gaussians_attrs(
|
|
711
|
-
primitive.attributes,
|
|
712
|
-
primitive.modelView,
|
|
713
|
-
primitive.count,
|
|
714
|
-
);
|
|
715
|
-
} else if (sortType === "Index") {
|
|
716
|
-
return radix_sort_gaussians_indexes(
|
|
717
|
-
primitive.positions,
|
|
718
|
-
primitive.modelView,
|
|
719
|
-
TEXTURE_WIDTH,
|
|
720
|
-
primitive.count,
|
|
721
|
-
);
|
|
722
|
-
} else if (sortType === "SIMD Index") {
|
|
458
|
+
if (sortType === "Index") {
|
|
723
459
|
return radix_sort_gaussians_indexes(
|
|
724
460
|
primitive.positions,
|
|
725
461
|
primitive.modelView,
|
|
726
|
-
TEXTURE_WIDTH,
|
|
727
462
|
primitive.count,
|
|
728
463
|
);
|
|
729
464
|
}
|
|
465
|
+
// else if (sortType === "SIMD Index") {
|
|
466
|
+
// return radix_sort_gaussians_indexes(
|
|
467
|
+
// primitive.positions,
|
|
468
|
+
// primitive.modelView,
|
|
469
|
+
// TEXTURE_WIDTH,
|
|
470
|
+
// primitive.count,
|
|
471
|
+
// );
|
|
472
|
+
// }
|
|
730
473
|
}
|
|
731
474
|
|
|
732
475
|
export default createTaskProcessorWorker(generateGaussianSortWorker);
|
|
@@ -73,22 +73,8 @@ function createTaskProcessorWorker(workerFunction) {
|
|
|
73
73
|
self.onmessageerror = onMessageErrorHandler;
|
|
74
74
|
return self;
|
|
75
75
|
}
|
|
76
|
-
let wasm;
|
|
77
|
-
|
|
78
|
-
function addToExternrefTable0(obj) {
|
|
79
|
-
const idx = wasm.__externref_table_alloc();
|
|
80
|
-
wasm.__wbindgen_export_2.set(idx, obj);
|
|
81
|
-
return idx;
|
|
82
|
-
}
|
|
83
76
|
|
|
84
|
-
|
|
85
|
-
try {
|
|
86
|
-
return f.apply(this, args);
|
|
87
|
-
} catch (e) {
|
|
88
|
-
const idx = addToExternrefTable0(e);
|
|
89
|
-
wasm.__wbindgen_exn_store(idx);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
77
|
+
let wasm;
|
|
92
78
|
|
|
93
79
|
const cachedTextDecoder = (typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }) : { decode: () => { throw Error('TextDecoder not available') } });
|
|
94
80
|
|
|
@@ -132,47 +118,53 @@ function passArray32ToWasm0(arg, malloc) {
|
|
|
132
118
|
}
|
|
133
119
|
|
|
134
120
|
function takeFromExternrefTable0(idx) {
|
|
135
|
-
const value = wasm.
|
|
121
|
+
const value = wasm.__wbindgen_export_0.get(idx);
|
|
136
122
|
wasm.__externref_table_dealloc(idx);
|
|
137
123
|
return value;
|
|
138
124
|
}
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
125
|
+
/**
|
|
126
|
+
* Generate a splat texture from the given attributes.
|
|
127
|
+
*
|
|
128
|
+
* Wraps the [`texture_gen::generate_texture_from_attrs`] function for access from JavaScript.
|
|
129
|
+
* @param {Float32Array} positions
|
|
130
|
+
* @param {Float32Array} scales
|
|
131
|
+
* @param {Float32Array} rotations
|
|
132
|
+
* @param {Uint8Array} colors
|
|
133
|
+
* @param {number} count
|
|
134
|
+
* @returns {TextureData}
|
|
135
|
+
*/
|
|
136
|
+
export function generate_splat_texture(positions, scales, rotations, colors, count) {
|
|
137
|
+
const ret = wasm.generate_splat_texture(positions, scales, rotations, colors, count);
|
|
142
138
|
if (ret[2]) {
|
|
143
139
|
throw takeFromExternrefTable0(ret[1]);
|
|
144
140
|
}
|
|
145
141
|
return TextureData.__wrap(ret[0]);
|
|
146
142
|
}
|
|
147
143
|
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
144
|
+
/**
|
|
145
|
+
* Sorts the Gaussian Splats by depth using a radix sort.
|
|
146
|
+
*
|
|
147
|
+
* Wraps the [`radix::radix_sort_gaussians_indexes`] function for access from JavaScript.
|
|
148
|
+
* @param {Float32Array} positions_arr
|
|
149
|
+
* @param {Float32Array} model_view_arr
|
|
150
|
+
* @param {number} count
|
|
151
|
+
* @returns {Uint32Array}
|
|
152
|
+
*/
|
|
153
|
+
export function radix_sort_gaussians_indexes(positions_arr, model_view_arr, count) {
|
|
154
|
+
const ret = wasm.radix_sort_gaussians_indexes(positions_arr, model_view_arr, count);
|
|
155
|
+
if (ret[2]) {
|
|
156
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
153
157
|
}
|
|
154
|
-
return
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
function passArrayF32ToWasm0(arg, malloc) {
|
|
158
|
-
const ptr = malloc(arg.length * 4, 4) >>> 0;
|
|
159
|
-
getFloat32ArrayMemory0().set(arg, ptr / 4);
|
|
160
|
-
WASM_VECTOR_LEN = arg.length;
|
|
161
|
-
return ptr;
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
function passArray8ToWasm0(arg, malloc) {
|
|
165
|
-
const ptr = malloc(arg.length * 1, 1) >>> 0;
|
|
166
|
-
getUint8ArrayMemory0().set(arg, ptr / 1);
|
|
167
|
-
WASM_VECTOR_LEN = arg.length;
|
|
168
|
-
return ptr;
|
|
158
|
+
return takeFromExternrefTable0(ret[0]);
|
|
169
159
|
}
|
|
170
160
|
|
|
171
161
|
const TextureDataFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
172
162
|
? { register: () => { }, unregister: () => { } }
|
|
173
163
|
: new FinalizationRegistry(ptr => wasm.__wbg_texturedata_free(ptr >>> 0, 1));
|
|
174
|
-
|
|
175
|
-
|
|
164
|
+
/**
|
|
165
|
+
* A structure representing texture data. This is used to pass the texture data from generation in [`texture_gen`] to the JavaScript side.
|
|
166
|
+
*/
|
|
167
|
+
export class TextureData {
|
|
176
168
|
|
|
177
169
|
static __wrap(ptr) {
|
|
178
170
|
ptr = ptr >>> 0;
|
|
@@ -194,6 +186,7 @@ class TextureData {
|
|
|
194
186
|
wasm.__wbg_texturedata_free(ptr, 0);
|
|
195
187
|
}
|
|
196
188
|
/**
|
|
189
|
+
* Getter for the underlying texture data. Always returns a copy.
|
|
197
190
|
* @returns {Uint32Array}
|
|
198
191
|
*/
|
|
199
192
|
get data() {
|
|
@@ -203,6 +196,7 @@ class TextureData {
|
|
|
203
196
|
return v1;
|
|
204
197
|
}
|
|
205
198
|
/**
|
|
199
|
+
* Getter for the width of the texture in pixels.
|
|
206
200
|
* @returns {number}
|
|
207
201
|
*/
|
|
208
202
|
get width() {
|
|
@@ -210,6 +204,7 @@ class TextureData {
|
|
|
210
204
|
return ret >>> 0;
|
|
211
205
|
}
|
|
212
206
|
/**
|
|
207
|
+
* Getter for the height of the texture in pixels.
|
|
213
208
|
* @returns {number}
|
|
214
209
|
*/
|
|
215
210
|
get height() {
|
|
@@ -217,6 +212,7 @@ class TextureData {
|
|
|
217
212
|
return ret >>> 0;
|
|
218
213
|
}
|
|
219
214
|
/**
|
|
215
|
+
* Creates a new texture data object with the underlying data, width, and height.
|
|
220
216
|
* @param {Uint32Array} data
|
|
221
217
|
* @param {number} width
|
|
222
218
|
* @param {number} height
|
|
@@ -264,83 +260,42 @@ async function __wbg_load(module, imports) {
|
|
|
264
260
|
function __wbg_get_imports() {
|
|
265
261
|
const imports = {};
|
|
266
262
|
imports.wbg = {};
|
|
267
|
-
imports.wbg.
|
|
263
|
+
imports.wbg.__wbg_buffer_609cc3eee51ed158 = function (arg0) {
|
|
268
264
|
const ret = arg0.buffer;
|
|
269
265
|
return ret;
|
|
270
266
|
};
|
|
271
|
-
imports.wbg.
|
|
272
|
-
const ret = arg0.length;
|
|
273
|
-
return ret;
|
|
274
|
-
};
|
|
275
|
-
imports.wbg.__wbg_length_81a294bd2038fd26 = function(arg0) {
|
|
267
|
+
imports.wbg.__wbg_length_3b4f022188ae8db6 = function (arg0) {
|
|
276
268
|
const ret = arg0.length;
|
|
277
269
|
return ret;
|
|
278
270
|
};
|
|
279
|
-
imports.wbg.
|
|
271
|
+
imports.wbg.__wbg_length_a446193dc22c12f8 = function (arg0) {
|
|
280
272
|
const ret = arg0.length;
|
|
281
273
|
return ret;
|
|
282
274
|
};
|
|
283
|
-
imports.wbg.
|
|
284
|
-
const ret = new
|
|
275
|
+
imports.wbg.__wbg_new_780abee5c1739fd7 = function (arg0) {
|
|
276
|
+
const ret = new Float32Array(arg0);
|
|
285
277
|
return ret;
|
|
286
278
|
};
|
|
287
|
-
imports.wbg.
|
|
279
|
+
imports.wbg.__wbg_new_a12002a7f91c75be = function (arg0) {
|
|
288
280
|
const ret = new Uint8Array(arg0);
|
|
289
281
|
return ret;
|
|
290
282
|
};
|
|
291
|
-
imports.wbg.
|
|
292
|
-
const ret = new
|
|
293
|
-
return ret;
|
|
294
|
-
};
|
|
295
|
-
imports.wbg.__wbg_new_b9ea1588c9985b80 = function(arg0) {
|
|
296
|
-
const ret = new Float32Array(arg0);
|
|
283
|
+
imports.wbg.__wbg_new_e3b321dcfef89fc7 = function (arg0) {
|
|
284
|
+
const ret = new Uint32Array(arg0);
|
|
297
285
|
return ret;
|
|
298
286
|
};
|
|
299
|
-
imports.wbg.
|
|
287
|
+
imports.wbg.__wbg_newwithbyteoffsetandlength_f1dead44d1fc7212 = function (arg0, arg1, arg2) {
|
|
300
288
|
const ret = new Uint32Array(arg0, arg1 >>> 0, arg2 >>> 0);
|
|
301
289
|
return ret;
|
|
302
290
|
};
|
|
303
|
-
imports.wbg.
|
|
304
|
-
const ret = new Uint8Array(arg0, arg1 >>> 0, arg2 >>> 0);
|
|
305
|
-
return ret;
|
|
306
|
-
};
|
|
307
|
-
imports.wbg.__wbg_newwithbyteoffsetandlength_f113a96374814bb2 = function(arg0, arg1, arg2) {
|
|
308
|
-
const ret = new Float32Array(arg0, arg1 >>> 0, arg2 >>> 0);
|
|
309
|
-
return ret;
|
|
310
|
-
};
|
|
311
|
-
imports.wbg.__wbg_newwithlength_1761a9eb039ca429 = function(arg0) {
|
|
312
|
-
const ret = new Uint32Array(arg0 >>> 0);
|
|
313
|
-
return ret;
|
|
314
|
-
};
|
|
315
|
-
imports.wbg.__wbg_newwithlength_34ce8f1051e74449 = function(arg0) {
|
|
316
|
-
const ret = new Uint8Array(arg0 >>> 0);
|
|
317
|
-
return ret;
|
|
318
|
-
};
|
|
319
|
-
imports.wbg.__wbg_newwithlength_ed665315b76ec334 = function(arg0) {
|
|
320
|
-
const ret = new Float32Array(arg0 >>> 0);
|
|
321
|
-
return ret;
|
|
322
|
-
};
|
|
323
|
-
imports.wbg.__wbg_push_6edad0df4b546b2c = function(arg0, arg1) {
|
|
324
|
-
const ret = arg0.push(arg1);
|
|
325
|
-
return ret;
|
|
326
|
-
};
|
|
327
|
-
imports.wbg.__wbg_set_23d69db4e5c66a6e = function(arg0, arg1, arg2) {
|
|
291
|
+
imports.wbg.__wbg_set_10bad9bee0e9c58b = function (arg0, arg1, arg2) {
|
|
328
292
|
arg0.set(arg1, arg2 >>> 0);
|
|
329
293
|
};
|
|
330
|
-
imports.wbg.
|
|
294
|
+
imports.wbg.__wbg_set_65595bdd868b3009 = function (arg0, arg1, arg2) {
|
|
331
295
|
arg0.set(arg1, arg2 >>> 0);
|
|
332
296
|
};
|
|
333
|
-
imports.wbg.
|
|
334
|
-
|
|
335
|
-
const ret = Reflect.set(arg0, arg1, arg2);
|
|
336
|
-
return ret;
|
|
337
|
-
}, arguments)
|
|
338
|
-
};
|
|
339
|
-
imports.wbg.__wbg_set_d2ca640bc040b031 = function(arg0, arg1, arg2) {
|
|
340
|
-
arg0.set(arg1, arg2 >>> 0);
|
|
341
|
-
};
|
|
342
|
-
imports.wbg.__wbindgen_init_externref_table = function() {
|
|
343
|
-
const table = wasm.__wbindgen_export_2;
|
|
297
|
+
imports.wbg.__wbindgen_init_externref_table = function () {
|
|
298
|
+
const table = wasm.__wbindgen_export_0;
|
|
344
299
|
const offset = table.grow(4);
|
|
345
300
|
table.set(0, undefined);
|
|
346
301
|
table.set(offset + 0, undefined);
|
|
@@ -349,19 +304,15 @@ function __wbg_get_imports() {
|
|
|
349
304
|
table.set(offset + 3, false);
|
|
350
305
|
;
|
|
351
306
|
};
|
|
352
|
-
imports.wbg.__wbindgen_memory = function() {
|
|
307
|
+
imports.wbg.__wbindgen_memory = function () {
|
|
353
308
|
const ret = wasm.memory;
|
|
354
309
|
return ret;
|
|
355
310
|
};
|
|
356
|
-
imports.wbg.
|
|
357
|
-
const ret = arg0;
|
|
358
|
-
return ret;
|
|
359
|
-
};
|
|
360
|
-
imports.wbg.__wbindgen_string_new = function(arg0, arg1) {
|
|
311
|
+
imports.wbg.__wbindgen_string_new = function (arg0, arg1) {
|
|
361
312
|
const ret = getStringFromWasm0(arg0, arg1);
|
|
362
313
|
return ret;
|
|
363
314
|
};
|
|
364
|
-
imports.wbg.__wbindgen_throw = function(arg0, arg1) {
|
|
315
|
+
imports.wbg.__wbindgen_throw = function (arg0, arg1) {
|
|
365
316
|
throw new Error(getStringFromWasm0(arg0, arg1));
|
|
366
317
|
};
|
|
367
318
|
|
|
@@ -375,7 +326,6 @@ function __wbg_init_memory(imports, memory) {
|
|
|
375
326
|
function __wbg_finalize_init(instance, module) {
|
|
376
327
|
wasm = instance.exports;
|
|
377
328
|
__wbg_init.__wbindgen_wasm_module = module;
|
|
378
|
-
cachedFloat32ArrayMemory0 = null;
|
|
379
329
|
cachedUint32ArrayMemory0 = null;
|
|
380
330
|
cachedUint8ArrayMemory0 = null;
|
|
381
331
|
|
|
@@ -422,7 +372,7 @@ async function __wbg_init(module_or_path) {
|
|
|
422
372
|
}
|
|
423
373
|
|
|
424
374
|
if (typeof module_or_path === 'undefined') {
|
|
425
|
-
module_or_path = new URL('
|
|
375
|
+
module_or_path = new URL('wasm_splats_bg.wasm', import.meta.url);
|
|
426
376
|
}
|
|
427
377
|
const imports = __wbg_get_imports();
|
|
428
378
|
|
|
@@ -436,6 +386,7 @@ async function __wbg_init(module_or_path) {
|
|
|
436
386
|
|
|
437
387
|
return __wbg_finalize_init(instance, module);
|
|
438
388
|
}
|
|
389
|
+
|
|
439
390
|
//load built wasm modules for sorting. Ensure we can load webassembly and we support SIMD.
|
|
440
391
|
async function initWorker(parameters, transferableObjects) {
|
|
441
392
|
// Require and compile WebAssembly module, or use fallback if not supported
|
|
@@ -454,7 +405,7 @@ async function generateSplatTextureWorker(parameters, transferableObjects) {
|
|
|
454
405
|
}
|
|
455
406
|
|
|
456
407
|
const { attributes, count } = parameters;
|
|
457
|
-
const result =
|
|
408
|
+
const result = generate_splat_texture(
|
|
458
409
|
attributes.positions,
|
|
459
410
|
attributes.scales,
|
|
460
411
|
attributes.rotations,
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|