@miris-inc/core 0.0.8-a1b9846 → 0.0.8-a2ebb07
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/dist/AquaApi.wasm +0 -0
- package/dist/aqua-parser.wasm +0 -0
- package/dist/core.d.ts +188 -52
- package/dist/core.js +2498 -2462
- package/dist/core.prod.js +1 -1
- package/dist/core.standalone.js +6161 -5442
- package/dist/core.standalone.prod.js +1 -1
- package/dist/webshark.d.ts +321 -0
- package/dist/webshark.js +2 -0
- package/dist/webshark.wasm +0 -0
- package/package.json +20 -16
- package/dist/AquaApi.js +0 -15
- package/dist/aqua-parser.js +0 -14
package/dist/AquaApi.wasm
CHANGED
|
Binary file
|
package/dist/aqua-parser.wasm
CHANGED
|
Binary file
|
package/dist/core.d.ts
CHANGED
|
@@ -1,16 +1,59 @@
|
|
|
1
|
+
export declare const AssetFormat: {
|
|
2
|
+
readonly GaussianSplats: 1;
|
|
3
|
+
readonly GES: 2;
|
|
4
|
+
};
|
|
5
|
+
|
|
1
6
|
declare interface AttributeInfo extends EmbindObject {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
readonly
|
|
5
|
-
readonly
|
|
7
|
+
// Logical elements from the drop metadata: splats for a per-splat attribute, records for a
|
|
8
|
+
// per-surfel one. Not necessarily dataSizeBytes / bytesPerElement.
|
|
9
|
+
readonly elementCount: number;
|
|
10
|
+
readonly dataSizeBytes: number;
|
|
6
11
|
readonly clientSideId: bigint;
|
|
12
|
+
// An embind CompressionType value, compared by identity against MainModule.CompressionType
|
|
13
|
+
readonly compressionType: unknown;
|
|
14
|
+
readonly minValue: { x: number; y: number; z: number; w: number };
|
|
7
15
|
readonly maxValue: { x: number; y: number; z: number };
|
|
8
16
|
}
|
|
9
17
|
|
|
18
|
+
export declare class AttributeNames {
|
|
19
|
+
static readonly SPARK_PACKED_SPLAT: string;
|
|
20
|
+
static readonly SPARK_EXTENDED_SPLAT_LOW: string;
|
|
21
|
+
static readonly SPARK_EXTENDED_SPLAT_HIGH: string;
|
|
22
|
+
static readonly SPARK_PACKED_SH1: string;
|
|
23
|
+
static readonly SPARK_PACKED_SH2: string;
|
|
24
|
+
static readonly SPARK_PACKED_SH3: string;
|
|
25
|
+
static readonly SPARK_EXTENDED_SH1: string;
|
|
26
|
+
static readonly SPARK_EXTENDED_SH2: string;
|
|
27
|
+
static readonly SPARK_EXTENDED_SH3_A: string;
|
|
28
|
+
static readonly SPARK_EXTENDED_SH3_B: string;
|
|
29
|
+
static readonly UNUSED: string;
|
|
30
|
+
static readonly SHARK_ELLIPSOIDS: string;
|
|
31
|
+
static readonly SHARK_ELLIPSOIDS_COMPRESSED: string;
|
|
32
|
+
static readonly SHARK_SPHERICAL_HARMONICS: string;
|
|
33
|
+
static readonly COLOR: string;
|
|
34
|
+
static readonly OCTANT_OFFSETS: string;
|
|
35
|
+
static readonly SURFEL_OCTANT_OFFSETS: string;
|
|
36
|
+
static readonly SURFEL_COUNT: string;
|
|
37
|
+
static readonly SURFEL_OWNER_GROUPS: string;
|
|
38
|
+
static readonly OCTANT_CELL: string;
|
|
39
|
+
static readonly REFLECTANCE_DATA_V1: string;
|
|
40
|
+
static readonly REFLECTANCE_DATA_V2: string;
|
|
41
|
+
static readonly GLASS_MESH_GEOMETRY: string;
|
|
42
|
+
static readonly GLASS_MESH_PANELS: string;
|
|
43
|
+
static readonly MOD_DEPTH: string;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
declare type CachedAttribute = {
|
|
47
|
+
paddedData: Uint32Array<ArrayBuffer>;
|
|
48
|
+
originalSizeInUints: number;
|
|
49
|
+
};
|
|
50
|
+
|
|
10
51
|
export declare class Camera {
|
|
11
52
|
#private;
|
|
12
53
|
readonly id: number;
|
|
13
54
|
update(): void;
|
|
55
|
+
get viewportHeight(): number;
|
|
56
|
+
set viewportHeight(viewportHeight: number);
|
|
14
57
|
get aspect(): number;
|
|
15
58
|
set aspect(aspect: number);
|
|
16
59
|
get fov(): number;
|
|
@@ -24,7 +67,7 @@ export declare class Camera {
|
|
|
24
67
|
readonly engine: Engine;
|
|
25
68
|
readonly miris: Miris;
|
|
26
69
|
readonly scene: Scene;
|
|
27
|
-
constructor({ aspect, fov, near, far, matrix, scene }: CameraInit);
|
|
70
|
+
constructor({ aspect, fov, near, far, matrix, scene, viewportHeight, }: CameraInit);
|
|
28
71
|
}
|
|
29
72
|
|
|
30
73
|
export declare type CameraInit = {
|
|
@@ -34,6 +77,7 @@ export declare type CameraInit = {
|
|
|
34
77
|
far: number;
|
|
35
78
|
matrix: Matrix4x4Tuple;
|
|
36
79
|
scene: Scene;
|
|
80
|
+
viewportHeight?: number;
|
|
37
81
|
};
|
|
38
82
|
|
|
39
83
|
export declare class Change {
|
|
@@ -43,7 +87,7 @@ export declare class Change {
|
|
|
43
87
|
}
|
|
44
88
|
|
|
45
89
|
export declare type ChangeInit = {
|
|
46
|
-
type: "created" | "activated" | "modified" | "deactivated" | "deleted";
|
|
90
|
+
type: "created" | "activated" | "modified" | "deactivated" | "deleted" | "remasked";
|
|
47
91
|
lod: Lod;
|
|
48
92
|
};
|
|
49
93
|
|
|
@@ -56,7 +100,6 @@ declare class Client {
|
|
|
56
100
|
constructor({ engine, context }: ClientInit);
|
|
57
101
|
dispose(): void;
|
|
58
102
|
addStreamById(...args: ClientMethodParameters["addStreamById"]): number;
|
|
59
|
-
addPrefetchStreamById(...args: ClientMethodParameters["addPrefetchStreamById"]): number;
|
|
60
103
|
destroyClient(...args: ClientMethodParameters["destroyClient"]): AquaStatus;
|
|
61
104
|
getAssetsAsync(...args: ClientMethodParameters["getAssetsAsync"]): AssetInfo[];
|
|
62
105
|
getAttribute(...args: ClientMethodParameters["getAttribute"]): AquaStatus;
|
|
@@ -70,6 +113,8 @@ declare class Client {
|
|
|
70
113
|
getSceneMetadata(...args: ClientMethodParameters["getSceneMetadata"]): number;
|
|
71
114
|
getSceneObjectParent(...args: ClientMethodParameters["getSceneObjectParent"]): number;
|
|
72
115
|
getSceneObjectType(...args: ClientMethodParameters["getSceneObjectType"]): SceneObjectType;
|
|
116
|
+
getStreamStatus(...args: ClientMethodParameters["getStreamStatus"]): StreamStatus;
|
|
117
|
+
getDrawnOctantMask(...args: ClientMethodParameters["getDrawnOctantMask"]): number;
|
|
73
118
|
getLocalTransform(...args: ClientMethodParameters["getLocalTransform"]): AquaStatus;
|
|
74
119
|
getWorldTransform(...args: ClientMethodParameters["getWorldTransform"]): AquaStatus;
|
|
75
120
|
hasAttribute(...args: ClientMethodParameters["hasAttribute"]): boolean;
|
|
@@ -85,6 +130,8 @@ declare class Client {
|
|
|
85
130
|
hasFeature(...args: ClientMethodParameters["hasFeature"]): boolean;
|
|
86
131
|
getFeatureVersion(...args: ClientMethodParameters["getFeatureVersion"]): number;
|
|
87
132
|
getFeatureState(...args: ClientMethodParameters["getFeatureState"]): number;
|
|
133
|
+
getAssetFormatVersion(...args: ClientMethodParameters["getAssetFormatVersion"]): number;
|
|
134
|
+
getDrMapLadderRoughnessLevels(...args: ClientMethodParameters["getDrMapLadderRoughnessLevels"]): number[];
|
|
88
135
|
getName(...args: ClientMethodParameters["getName"]): string;
|
|
89
136
|
setVariantSelection(...args: ClientMethodParameters["setVariantSelection"]): AquaStatus;
|
|
90
137
|
takeAttribute(...args: ClientMethodParameters["takeAttribute"]): AquaStatus;
|
|
@@ -92,7 +139,6 @@ declare class Client {
|
|
|
92
139
|
takeRenderRequired(...args: ClientMethodParameters["takeRenderRequired"]): boolean;
|
|
93
140
|
unlockScene(...args: ClientMethodParameters["unlockScene"]): boolean;
|
|
94
141
|
updateSceneExecution(...args: ClientMethodParameters["updateSceneExecution"]): AquaStatus;
|
|
95
|
-
recordFrameTime(...args: ClientMethodParameters["recordFrameTime"]): AquaStatus;
|
|
96
142
|
}
|
|
97
143
|
|
|
98
144
|
declare type ClientInit = {
|
|
@@ -151,11 +197,23 @@ declare class Engine {
|
|
|
151
197
|
readonly Loaded: 2;
|
|
152
198
|
readonly Failed: 3;
|
|
153
199
|
};
|
|
200
|
+
static StreamStatus: {
|
|
201
|
+
readonly Unknown: 0;
|
|
202
|
+
readonly Resolving: 1;
|
|
203
|
+
readonly Loading: 2;
|
|
204
|
+
readonly Ready: 3;
|
|
205
|
+
readonly Failed: 4;
|
|
206
|
+
};
|
|
154
207
|
readonly ready: Promise<this>;
|
|
155
208
|
readonly pending: boolean;
|
|
156
209
|
get module(): MainModule;
|
|
157
210
|
constructor(moduleOptions?: Record<string, unknown>);
|
|
158
211
|
get AttributeInfo(): new () => AttributeInfo;
|
|
212
|
+
get CompressionType(): {
|
|
213
|
+
SHARK_ELLIPSOID_COMPRESSED: unknown;
|
|
214
|
+
SHARK_ELLIPSOID_COMPRESSED_ROOT_RELATIVE: unknown;
|
|
215
|
+
SHARK_ELLIPSOID_COMPRESSED_ROOT_RELATIVE_V2: unknown;
|
|
216
|
+
};
|
|
159
217
|
get Handedness(): {
|
|
160
218
|
Right: number;
|
|
161
219
|
Left: number;
|
|
@@ -183,13 +241,6 @@ declare class Engine {
|
|
|
183
241
|
assetId: string,
|
|
184
242
|
doNotRefine: boolean
|
|
185
243
|
]): number;
|
|
186
|
-
addPrefetchStreamById(...args: [
|
|
187
|
-
handle: AquaClientHandle,
|
|
188
|
-
streamName: string,
|
|
189
|
-
assetId: string,
|
|
190
|
-
maxPrefetchDepth: number,
|
|
191
|
-
keepPrefetch: boolean
|
|
192
|
-
]): number;
|
|
193
244
|
allocateSceneChangesArrays(...args: [sceneChangeIds: SceneChangeIds]): void;
|
|
194
245
|
createContext(...args: []): AquaContextHandle;
|
|
195
246
|
destroyContext(...args: [handle: AquaContextHandle]): AquaStatus;
|
|
@@ -198,6 +249,8 @@ declare class Engine {
|
|
|
198
249
|
deletedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
|
|
199
250
|
dataPtrView(...args: [attributeInfo: AttributeInfo]): Uint32Array;
|
|
200
251
|
deactivatedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
|
|
252
|
+
remaskedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
|
|
253
|
+
getDrawnOctantMask(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
|
|
201
254
|
destroyClient(...args: [handle: AquaClientHandle]): AquaStatus;
|
|
202
255
|
free(...args: [size: number]): number;
|
|
203
256
|
getAssetsAsync(...args: [handle: AquaClientHandle, tags: StringVector]): AssetInfo[];
|
|
@@ -207,8 +260,8 @@ declare class Engine {
|
|
|
207
260
|
attributeName: string,
|
|
208
261
|
attributeInfo: AttributeInfo
|
|
209
262
|
]): AquaStatus;
|
|
210
|
-
getDefaultCameraId(...args: [handle: AquaClientHandle]): number;
|
|
211
|
-
getViewingVolumeId(...args: [handle: AquaClientHandle]): number;
|
|
263
|
+
getDefaultCameraId(...args: [handle: AquaClientHandle, streamObjectId: number]): number;
|
|
264
|
+
getViewingVolumeId(...args: [handle: AquaClientHandle, streamObjectId: number]): number;
|
|
212
265
|
getLocalBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
|
|
213
266
|
getWorldBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
|
|
214
267
|
getLodIndex(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
|
|
@@ -216,6 +269,7 @@ declare class Engine {
|
|
|
216
269
|
getSceneChangesCounts(...args: [handle: AquaClientHandle, sceneChangeIds: SceneChangeIds]): void;
|
|
217
270
|
getSceneMetadata(...args: [handle: AquaClientHandle, metadata: SceneMetadata]): number;
|
|
218
271
|
getSceneObjectParent(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
|
|
272
|
+
getStreamStatus(...args: [handle: AquaClientHandle, streamObjectId: number]): StreamStatus;
|
|
219
273
|
getSceneObjectType(...args: [handle: AquaClientHandle, sceneObjectId: number]): SceneObjectType;
|
|
220
274
|
getLocalTransform(...args: [
|
|
221
275
|
handle: AquaClientHandle,
|
|
@@ -264,9 +318,11 @@ declare class Engine {
|
|
|
264
318
|
aspectRatio: number,
|
|
265
319
|
verticalFov: number,
|
|
266
320
|
nearPlane: number,
|
|
267
|
-
farPlane: number
|
|
321
|
+
farPlane: number,
|
|
322
|
+
viewportHeightPixels: number
|
|
268
323
|
]): AquaStatus;
|
|
269
324
|
setMaxCacheSize(...args: [maxSizeBytes: number]): void;
|
|
325
|
+
setPreferSharkEncodingProfiles(...args: [preferShark: boolean]): void;
|
|
270
326
|
setSceneObjectTransform(...args: [
|
|
271
327
|
handle: AquaClientHandle,
|
|
272
328
|
sceneObjectId: number,
|
|
@@ -275,6 +331,8 @@ declare class Engine {
|
|
|
275
331
|
hasFeature(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): boolean;
|
|
276
332
|
getFeatureVersion(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
|
|
277
333
|
getFeatureState(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
|
|
334
|
+
getDrMapLadderRoughnessLevels(...args: [handle: AquaClientHandle, sceneObjectId: number]): number[];
|
|
335
|
+
getAssetFormatVersion(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
|
|
278
336
|
getName(...args: [handle: AquaClientHandle, sceneObjectId: number]): string;
|
|
279
337
|
setVariantSelection(...args: [handle: AquaClientHandle, sceneObjectId: number]): AquaStatus;
|
|
280
338
|
takeAttribute(...args: [
|
|
@@ -287,8 +345,15 @@ declare class Engine {
|
|
|
287
345
|
getActiveClientSideIdsCheckSum(): number;
|
|
288
346
|
unlockScene(...args: [handle: AquaClientHandle]): boolean;
|
|
289
347
|
updateSceneExecution(...args: [handle: AquaClientHandle]): AquaStatus;
|
|
290
|
-
recordFrameTime(...args: [handle: AquaClientHandle, frameTimeMs: number]): AquaStatus;
|
|
291
348
|
takeRenderRequired(...args: [handle: AquaClientHandle]): boolean;
|
|
349
|
+
/**
|
|
350
|
+
* Advances the runtime by one frame and recomputes the streaming budget. Call once per
|
|
351
|
+
* displayed frame per context, before the per-client updateSceneExecution() calls.
|
|
352
|
+
* `previousFrameTimeMs` is how long the previous frame took; pass 0 when there is no plausible
|
|
353
|
+
* measurement (first frame, or a resume from a stall) and the frame advances without recording
|
|
354
|
+
* one.
|
|
355
|
+
*/
|
|
356
|
+
beginFrame(...args: [contextHandle: AquaContextHandle, previousFrameTimeMs: number]): AquaStatus;
|
|
292
357
|
createDeserializeWorker(_url: string, _workerUrl: string, poolSize: number): boolean;
|
|
293
358
|
cancelRequest(requestIdLow: number, requestIdHigh: number): boolean;
|
|
294
359
|
submitToWorker(requestIdLow: number, requestIdHigh: number, descriptorBuffer: ArrayBuffer, contextPtr: number): boolean;
|
|
@@ -302,29 +367,19 @@ declare type EngineMethodParameters<E extends Engine = Engine> = {
|
|
|
302
367
|
[Key in keyof E]: E[Key] extends (...args: any[]) => any ? Parameters<E[Key]> : never;
|
|
303
368
|
};
|
|
304
369
|
|
|
370
|
+
export declare const HaveData = 2;
|
|
371
|
+
|
|
372
|
+
export declare const HaveMetadata = 1;
|
|
373
|
+
|
|
374
|
+
export declare const HaveNothing = 0;
|
|
375
|
+
|
|
305
376
|
export declare class Lod {
|
|
306
377
|
#private;
|
|
307
378
|
readonly id: LodInit["id"];
|
|
308
379
|
readonly store: LodStore;
|
|
309
|
-
useExtSplats: boolean;
|
|
310
|
-
splatsExtendedData: Uint32Array<ArrayBuffer> | null;
|
|
311
|
-
sh1Data: Uint32Array<ArrayBuffer> | null;
|
|
312
|
-
sh1Max: number;
|
|
313
|
-
sh2Data: Uint32Array<ArrayBuffer> | null;
|
|
314
|
-
sh2Max: number;
|
|
315
|
-
sh3Data: Uint32Array<ArrayBuffer> | null;
|
|
316
|
-
sh3Max: number;
|
|
317
|
-
sh3ExtendedData: Uint32Array<ArrayBuffer> | null;
|
|
318
380
|
get key(): unknown;
|
|
319
381
|
set key(key: unknown);
|
|
320
382
|
readonly modelRoot: ModelRoot;
|
|
321
|
-
set splats(splats: Uint32Array<ArrayBuffer> | null);
|
|
322
|
-
get splats(): Uint32Array<ArrayBuffer> | null;
|
|
323
|
-
/**
|
|
324
|
-
* Sets the cached world bounds of this object
|
|
325
|
-
*
|
|
326
|
-
* @deprecated set the local bounds and transform as needed
|
|
327
|
-
*/
|
|
328
383
|
set bounds(bounds: Float32Array<ArrayBuffer> | null);
|
|
329
384
|
/**
|
|
330
385
|
* Retrieves the cached world bounds of this object
|
|
@@ -342,21 +397,32 @@ export declare class Lod {
|
|
|
342
397
|
get localBounds(): Float32Array<ArrayBuffer> | null;
|
|
343
398
|
set lodIndex(index: number);
|
|
344
399
|
get lodIndex(): number | null;
|
|
345
|
-
set
|
|
346
|
-
get
|
|
400
|
+
set paddingSplatsCount(count: number);
|
|
401
|
+
get paddingSplatsCount(): number;
|
|
347
402
|
set transform(transform: Float32Array<ArrayBuffer> | null);
|
|
348
403
|
get transform(): Float32Array<ArrayBuffer> | null;
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
404
|
+
get _drawnOctantMask(): number;
|
|
405
|
+
set _drawnOctantMask(mask: number);
|
|
406
|
+
get _octantOffsets(): Uint32Array<ArrayBuffer> | null;
|
|
407
|
+
get _hasOctantOffsets(): boolean;
|
|
408
|
+
get _surfelOctantOffsets(): Uint32Array<ArrayBuffer> | null;
|
|
409
|
+
get _surfelCount(): number;
|
|
410
|
+
get _surfelOwnerGroups(): Uint32Array<ArrayBuffer> | null;
|
|
411
|
+
get _octantCell(): Uint32Array<ArrayBuffer> | null;
|
|
412
|
+
_readOctantOffsets(engine: Engine): void;
|
|
413
|
+
hasAttribute(attributeName: string): boolean;
|
|
414
|
+
getDataFromAttribute(engine: Engine, attributeName: string, attributeInfo: AttributeInfo): CachedAttribute | null;
|
|
415
|
+
_getRawByteAttribute(engine: Engine, attributeName: string): Uint8Array<ArrayBuffer> | null;
|
|
416
|
+
_getRawByteAttributeWithBounds(engine: Engine, attributeName: string): RawByteAttributeWithBounds | null;
|
|
352
417
|
dispose(): void;
|
|
353
|
-
constructor({ id, modelRoot, lodStore }: LodInit);
|
|
418
|
+
constructor({ id, modelRoot, lodStore, client }: LodInit);
|
|
354
419
|
}
|
|
355
420
|
|
|
356
421
|
export declare type LodInit = {
|
|
357
422
|
id: number;
|
|
358
423
|
modelRoot: ModelRoot;
|
|
359
424
|
lodStore: LodStore;
|
|
425
|
+
client: Client;
|
|
360
426
|
};
|
|
361
427
|
|
|
362
428
|
export declare class LodStore {
|
|
@@ -372,6 +438,11 @@ export declare class LodStore {
|
|
|
372
438
|
|
|
373
439
|
declare interface MainModule {
|
|
374
440
|
AttributeInfo: new () => AttributeInfo;
|
|
441
|
+
CompressionType: {
|
|
442
|
+
SHARK_ELLIPSOID_COMPRESSED: unknown;
|
|
443
|
+
SHARK_ELLIPSOID_COMPRESSED_ROOT_RELATIVE: unknown;
|
|
444
|
+
SHARK_ELLIPSOID_COMPRESSED_ROOT_RELATIVE_V2: unknown;
|
|
445
|
+
};
|
|
375
446
|
Handedness: { Right: number; Left: number };
|
|
376
447
|
HEAPF32: Float32Array<ArrayBuffer>;
|
|
377
448
|
HEAPU8: Uint8Array<ArrayBuffer>;
|
|
@@ -397,7 +468,9 @@ declare interface MainModule {
|
|
|
397
468
|
createdObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
|
|
398
469
|
dataPtrView(attributeInfo: AttributeInfo): Uint32Array;
|
|
399
470
|
deactivatedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
|
|
471
|
+
remaskedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
|
|
400
472
|
deletedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
|
|
473
|
+
GetDrawnOctantMask(handle: number, sceneObjectId: number): number;
|
|
401
474
|
GetAssetsAsync(handle: number, tags: StringVector): unknown[];
|
|
402
475
|
GetSceneChanges(handle: number, sceneChangeIds: SceneChangeIds): void;
|
|
403
476
|
GetSceneChangesCounts(handle: number, sceneChangeIds: SceneChangeIds): void;
|
|
@@ -406,13 +479,17 @@ declare interface MainModule {
|
|
|
406
479
|
HasFeature(handle: number, sceneObjectId: number, feature: number): boolean;
|
|
407
480
|
GetFeatureVersion(handle: number, sceneObjectId: number, feature: number): number;
|
|
408
481
|
GetFeatureState(handle: number, sceneObjectId: number, feature: number): number;
|
|
482
|
+
GetAssetFormatVersion(handle: number, sceneObjectId: number): number;
|
|
483
|
+
GetDrMapLadderRoughnessLevels(handle: number, sceneObjectId: number): number[];
|
|
409
484
|
SetClientSpatialFormat(handle: number, spatialFormat: SpatialFormat): { value: number };
|
|
410
485
|
SetRuntimeSettings(handle: number, settings: RuntimeSettings): { value: number };
|
|
411
486
|
TakeEvictedClientSideAttributeIds(handle: number): EmbindVector<bigint>;
|
|
412
487
|
GetActiveClientSideIdsCheckSum(): number;
|
|
413
488
|
TakeRenderRequired(handle: number): boolean;
|
|
489
|
+
BeginFrame(contextHandle: number, previousFrameTimeMs: number): number;
|
|
414
490
|
modifiedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
|
|
415
491
|
setMaxCacheSize(maxSizeBytes: number): void;
|
|
492
|
+
SetPreferSharkEncodingProfiles(prefer: boolean): void;
|
|
416
493
|
}
|
|
417
494
|
|
|
418
495
|
/**
|
|
@@ -425,6 +502,7 @@ declare interface MainModule {
|
|
|
425
502
|
*/
|
|
426
503
|
export declare class Miris {
|
|
427
504
|
#private;
|
|
505
|
+
static tryUseShark: boolean;
|
|
428
506
|
static _instance: Miris;
|
|
429
507
|
static instance<T extends typeof Miris>(this: T): Promise<InstanceType<T>>;
|
|
430
508
|
readonly engine: Engine;
|
|
@@ -443,17 +521,27 @@ export declare class Miris {
|
|
|
443
521
|
protected _xrSession: XRSession | null;
|
|
444
522
|
protected _requestAnimationFrame: RequestAnimationFrameFn | null;
|
|
445
523
|
signalResumeFromIdle(): void;
|
|
524
|
+
get _splatCountBudget(): number;
|
|
446
525
|
/**
|
|
447
526
|
* Why 43? Because the AVP throttles down to 45Hz :(
|
|
448
527
|
*/
|
|
449
528
|
static readonly _XR_TARGET_FRAME_RATE = 43;
|
|
529
|
+
/* Excluded from this release type: _XR_SPLAT_COUNT_BUDGET */
|
|
530
|
+
/* Excluded from this release type: _SHARK_SPLAT_CAPACITY_MOBILE */
|
|
531
|
+
static readonly _SHARK_SPLAT_CAPACITY_DESKTOP = 3000000;
|
|
532
|
+
/* Excluded from this release type: _SHARK_SPLAT_BUDGET_CAP_MOBILE */
|
|
533
|
+
static readonly _SHARK_SPLAT_BUDGET_CAP_DESKTOP = 2500000;
|
|
534
|
+
/* Excluded from this release type: _isMobileDevice */
|
|
535
|
+
/* Excluded from this release type: _sharkSplatCapacity */
|
|
536
|
+
/* Excluded from this release type: _limitSharkSplatCapacity */
|
|
537
|
+
/* Excluded from this release type: _sharkSplatBudgetCap */
|
|
450
538
|
/* Excluded from this release type: _setTargetFrameRate */
|
|
451
539
|
/* Excluded from this release type: _setXRModeActive */
|
|
452
540
|
/* Excluded from this release type: _setSplatCountBudgetOverride */
|
|
453
541
|
/* Excluded from this release type: _update */
|
|
454
542
|
getLocalTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
|
|
455
543
|
getWorldTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
|
|
456
|
-
|
|
544
|
+
/* Excluded from this release type: _updateForScene */
|
|
457
545
|
applyChanges(_entries: Change[]): void;
|
|
458
546
|
_computeAdditionalRenderNeeded(): boolean;
|
|
459
547
|
onColorSpaceDetected(_isLinear: boolean): void;
|
|
@@ -482,6 +570,31 @@ export declare type ModelRootInit = {
|
|
|
482
570
|
stream: Stream;
|
|
483
571
|
};
|
|
484
572
|
|
|
573
|
+
/**
|
|
574
|
+
* The byte-exact counterpart of getRawUint32Attribute above: same no-padding, no-takeAttribute
|
|
575
|
+
* contract, returning bytes rather than words.
|
|
576
|
+
*
|
|
577
|
+
* Use this rather than that one wherever the stride is not a whole number of words: the
|
|
578
|
+
* reflectance records' 18- and 26-byte strides are not, and an odd record count would lose that
|
|
579
|
+
* record's last field to dataPtrView's truncation.
|
|
580
|
+
*/
|
|
581
|
+
export declare type RawByteAttributeWithBounds = {
|
|
582
|
+
bytes: Uint8Array<ArrayBuffer>;
|
|
583
|
+
minValue: {
|
|
584
|
+
x: number;
|
|
585
|
+
y: number;
|
|
586
|
+
z: number;
|
|
587
|
+
};
|
|
588
|
+
maxValue: {
|
|
589
|
+
x: number;
|
|
590
|
+
y: number;
|
|
591
|
+
z: number;
|
|
592
|
+
};
|
|
593
|
+
};
|
|
594
|
+
|
|
595
|
+
declare type ReadyState_2 = typeof HaveNothing | typeof HaveMetadata | typeof HaveData;
|
|
596
|
+
export { ReadyState_2 as ReadyState }
|
|
597
|
+
|
|
485
598
|
declare type RequestAnimationFrameFn = ((callback: FrameRequestCallback) => number) | ((callback: XRFrameRequestCallback) => void);
|
|
486
599
|
|
|
487
600
|
declare interface RuntimeSettings extends EmbindObject {
|
|
@@ -490,6 +603,7 @@ declare interface RuntimeSettings extends EmbindObject {
|
|
|
490
603
|
targetFramesPerSecond: number;
|
|
491
604
|
xrModeActive: boolean;
|
|
492
605
|
splatCountBudget: number;
|
|
606
|
+
splatCountBudgetCap: number;
|
|
493
607
|
}
|
|
494
608
|
|
|
495
609
|
export declare class Scene extends EventTarget {
|
|
@@ -501,6 +615,7 @@ export declare class Scene extends EventTarget {
|
|
|
501
615
|
readonly id: number;
|
|
502
616
|
get key(): unknown;
|
|
503
617
|
set key(key: unknown);
|
|
618
|
+
/* Excluded from this release type: _assetFormat */
|
|
504
619
|
get viewerKey(): string | null;
|
|
505
620
|
set viewerKey(viewerKey: string | null);
|
|
506
621
|
get streams(): Set<Stream>;
|
|
@@ -510,22 +625,35 @@ export declare class Scene extends EventTarget {
|
|
|
510
625
|
readonly client: Client;
|
|
511
626
|
readonly handle?: number;
|
|
512
627
|
constructor({ miris, viewerKey }: SceneInit);
|
|
628
|
+
/**
|
|
629
|
+
* Drives a frame and answers whether *this* scene's canvas needs repainting. Call it once per
|
|
630
|
+
* displayed frame from the host's animation loop, and render when it returns true.
|
|
631
|
+
*
|
|
632
|
+
* Every scene on the page calls this from its own loop. The first call in a displayed frame
|
|
633
|
+
* drives one engine tick for all of them; the rest recognise the frame and reuse it.
|
|
634
|
+
*
|
|
635
|
+
* @param ts the host's frame timestamp. Optional - the document timeline supplies one, and it
|
|
636
|
+
* reads the same for every scene in a displayed frame. Pass it when the host runs its own
|
|
637
|
+
* clock, as an immersive XR session does, because XRFrame time is not the document timeline.
|
|
638
|
+
*/
|
|
639
|
+
update(ts?: DOMHighResTimeStamp): boolean;
|
|
513
640
|
dispose(): void;
|
|
514
|
-
/* Excluded from this release type: _getViewingVolumeBounds */
|
|
515
641
|
fetchAssets(tags?: string | Iterable<string>): Promise<{
|
|
516
642
|
name: string;
|
|
517
643
|
thumbnailUrl: string;
|
|
518
644
|
uuid: string;
|
|
519
645
|
tags: string[];
|
|
520
646
|
}[]>;
|
|
521
|
-
getDefaultCameraTransform(): Float32Array<ArrayBuffer> | null | undefined;
|
|
522
647
|
add(stream: Stream): void;
|
|
523
648
|
getStreamForId(streamObjectId: number): Stream | undefined;
|
|
524
649
|
getStreamForDescendentId(descendentObjectId: number): Stream | null;
|
|
525
650
|
getModelRootForDescendentId(descendentObjectId: number): ModelRoot | null;
|
|
651
|
+
_recordAssetFormat(modelRoot: ModelRoot, formatVersion: number): void;
|
|
526
652
|
/* Excluded from this release type: _getFeatureMesh */
|
|
527
653
|
/* Excluded from this release type: _getDrMap */
|
|
654
|
+
/* Excluded from this release type: _onDrMapLadder */
|
|
528
655
|
/* Excluded from this release type: _onFeatureData */
|
|
656
|
+
/* Excluded from this release type: _updateStreamStatuses */
|
|
529
657
|
/* Excluded from this release type: _onSceneLoaded */
|
|
530
658
|
delete(stream: Stream): void;
|
|
531
659
|
close(): void;
|
|
@@ -537,6 +665,7 @@ declare interface SceneChangeIds extends EmbindObject {
|
|
|
537
665
|
readonly modifiedObjectsCount: number;
|
|
538
666
|
readonly deactivatedObjectsCount: number;
|
|
539
667
|
readonly deletedObjectsCount: number;
|
|
668
|
+
readonly remaskedObjectsCount: number;
|
|
540
669
|
}
|
|
541
670
|
|
|
542
671
|
export declare type SceneInit = {
|
|
@@ -548,6 +677,13 @@ declare interface SceneMetadata extends EmbindObject {
|
|
|
548
677
|
readonly inputColorSpace: string;
|
|
549
678
|
}
|
|
550
679
|
|
|
680
|
+
declare type SparkAttributeInfo = {
|
|
681
|
+
elementsPerSplat: number;
|
|
682
|
+
discard: boolean;
|
|
683
|
+
};
|
|
684
|
+
|
|
685
|
+
export declare const sparkAttributeList: Record<string, SparkAttributeInfo>;
|
|
686
|
+
|
|
551
687
|
declare interface SpatialFormat extends EmbindObject {
|
|
552
688
|
metersPerUnit: number;
|
|
553
689
|
upAxis: number;
|
|
@@ -575,6 +711,8 @@ export declare class Stream extends EventTarget {
|
|
|
575
711
|
set key(key: unknown);
|
|
576
712
|
get matrix(): Matrix4x4Tuple;
|
|
577
713
|
set matrix(matrix: Matrix4x4Tuple);
|
|
714
|
+
get opacity(): number;
|
|
715
|
+
set opacity(opacity: number);
|
|
578
716
|
get boundingBox(): {
|
|
579
717
|
min: {
|
|
580
718
|
x: number;
|
|
@@ -603,8 +741,13 @@ export declare class Stream extends EventTarget {
|
|
|
603
741
|
*/
|
|
604
742
|
get chunks(): Set<ModelRoot>;
|
|
605
743
|
constructor(options: StreamInit);
|
|
606
|
-
_initStream({ uuid
|
|
744
|
+
_initStream({ uuid }: StreamInit): void;
|
|
607
745
|
/* Excluded from this release type: _onStreamLoaded */
|
|
746
|
+
getDefaultCameraTransform(): Float32Array<ArrayBuffer> | null | undefined;
|
|
747
|
+
/* Excluded from this release type: _getViewingVolumeObb */
|
|
748
|
+
/** How much of the stream has loaded, as of the last frame. */
|
|
749
|
+
get readyState(): ReadyState_2;
|
|
750
|
+
/* Excluded from this release type: _updateStatus */
|
|
608
751
|
/* Excluded from this release type: _onRootLoaded */
|
|
609
752
|
add(modelRoot: ModelRoot): void;
|
|
610
753
|
end(): void;
|
|
@@ -615,13 +758,6 @@ export declare type StreamInit = {
|
|
|
615
758
|
scene: Scene;
|
|
616
759
|
authToken?: string;
|
|
617
760
|
drmKey?: string;
|
|
618
|
-
/** When true the stream runs in prefetch-only mode: it downloads and caches
|
|
619
|
-
* octree node data up to `prefetchMaxDepth` without rendering anything. */
|
|
620
|
-
prefetch?: boolean;
|
|
621
|
-
/** Maximum octree depth to prefetch. Set to -1 to disable prefetching. If omitted, defaults to 3 */
|
|
622
|
-
prefetchMaxDepth?: number;
|
|
623
|
-
/** Retain all prefetched data by the stream (make it non evictable) */
|
|
624
|
-
keepPrefetch?: boolean;
|
|
625
761
|
};
|
|
626
762
|
|
|
627
763
|
declare type StringVector = EmbindVector<string>;
|