@miris-inc/core 0.0.8-3384610 → 0.0.8-33ac33e
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 +245 -43
- package/dist/core.js +2575 -2192
- package/dist/core.prod.js +1 -1
- package/dist/core.standalone.js +6236 -5127
- package/dist/core.standalone.prod.js +1 -1
- package/dist/webshark.d.ts +329 -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
|
|
|
@@ -60,6 +104,7 @@ declare class Client {
|
|
|
60
104
|
getAssetsAsync(...args: ClientMethodParameters["getAssetsAsync"]): AssetInfo[];
|
|
61
105
|
getAttribute(...args: ClientMethodParameters["getAttribute"]): AquaStatus;
|
|
62
106
|
getDefaultCameraId(...args: ClientMethodParameters["getDefaultCameraId"]): number;
|
|
107
|
+
getViewingVolumeId(...args: ClientMethodParameters["getViewingVolumeId"]): number;
|
|
63
108
|
getLocalBoundingBox(...args: ClientMethodParameters["getLocalBoundingBox"]): AquaStatus;
|
|
64
109
|
getWorldBoundingBox(...args: ClientMethodParameters["getWorldBoundingBox"]): AquaStatus;
|
|
65
110
|
getLodIndex(...args: ClientMethodParameters["getLodIndex"]): number;
|
|
@@ -68,6 +113,9 @@ declare class Client {
|
|
|
68
113
|
getSceneMetadata(...args: ClientMethodParameters["getSceneMetadata"]): number;
|
|
69
114
|
getSceneObjectParent(...args: ClientMethodParameters["getSceneObjectParent"]): number;
|
|
70
115
|
getSceneObjectType(...args: ClientMethodParameters["getSceneObjectType"]): SceneObjectType;
|
|
116
|
+
getStreamStatus(...args: ClientMethodParameters["getStreamStatus"]): StreamStatus;
|
|
117
|
+
getDrawnOctantMask(...args: ClientMethodParameters["getDrawnOctantMask"]): number;
|
|
118
|
+
getOctantLocalBoundingBoxes(...args: ClientMethodParameters["getOctantLocalBoundingBoxes"]): number[];
|
|
71
119
|
getLocalTransform(...args: ClientMethodParameters["getLocalTransform"]): AquaStatus;
|
|
72
120
|
getWorldTransform(...args: ClientMethodParameters["getWorldTransform"]): AquaStatus;
|
|
73
121
|
hasAttribute(...args: ClientMethodParameters["hasAttribute"]): boolean;
|
|
@@ -83,6 +131,8 @@ declare class Client {
|
|
|
83
131
|
hasFeature(...args: ClientMethodParameters["hasFeature"]): boolean;
|
|
84
132
|
getFeatureVersion(...args: ClientMethodParameters["getFeatureVersion"]): number;
|
|
85
133
|
getFeatureState(...args: ClientMethodParameters["getFeatureState"]): number;
|
|
134
|
+
getAssetFormatVersion(...args: ClientMethodParameters["getAssetFormatVersion"]): number;
|
|
135
|
+
getDrMapLadderRoughnessLevels(...args: ClientMethodParameters["getDrMapLadderRoughnessLevels"]): number[];
|
|
86
136
|
getName(...args: ClientMethodParameters["getName"]): string;
|
|
87
137
|
setVariantSelection(...args: ClientMethodParameters["setVariantSelection"]): AquaStatus;
|
|
88
138
|
takeAttribute(...args: ClientMethodParameters["takeAttribute"]): AquaStatus;
|
|
@@ -90,7 +140,6 @@ declare class Client {
|
|
|
90
140
|
takeRenderRequired(...args: ClientMethodParameters["takeRenderRequired"]): boolean;
|
|
91
141
|
unlockScene(...args: ClientMethodParameters["unlockScene"]): boolean;
|
|
92
142
|
updateSceneExecution(...args: ClientMethodParameters["updateSceneExecution"]): AquaStatus;
|
|
93
|
-
recordFrameTime(...args: ClientMethodParameters["recordFrameTime"]): AquaStatus;
|
|
94
143
|
}
|
|
95
144
|
|
|
96
145
|
declare type ClientInit = {
|
|
@@ -140,6 +189,8 @@ declare class Engine {
|
|
|
140
189
|
};
|
|
141
190
|
static Feature: {
|
|
142
191
|
readonly DrMap: 0;
|
|
192
|
+
readonly ReflMesh: 1;
|
|
193
|
+
readonly GlassMesh: 2;
|
|
143
194
|
};
|
|
144
195
|
static FeatureState: {
|
|
145
196
|
readonly NotLoaded: 0;
|
|
@@ -147,11 +198,23 @@ declare class Engine {
|
|
|
147
198
|
readonly Loaded: 2;
|
|
148
199
|
readonly Failed: 3;
|
|
149
200
|
};
|
|
201
|
+
static StreamStatus: {
|
|
202
|
+
readonly Unknown: 0;
|
|
203
|
+
readonly Resolving: 1;
|
|
204
|
+
readonly Loading: 2;
|
|
205
|
+
readonly Ready: 3;
|
|
206
|
+
readonly Failed: 4;
|
|
207
|
+
};
|
|
150
208
|
readonly ready: Promise<this>;
|
|
151
209
|
readonly pending: boolean;
|
|
152
210
|
get module(): MainModule;
|
|
153
211
|
constructor(moduleOptions?: Record<string, unknown>);
|
|
154
212
|
get AttributeInfo(): new () => AttributeInfo;
|
|
213
|
+
get CompressionType(): {
|
|
214
|
+
SHARK_ELLIPSOID_COMPRESSED: unknown;
|
|
215
|
+
SHARK_ELLIPSOID_COMPRESSED_ROOT_RELATIVE: unknown;
|
|
216
|
+
SHARK_ELLIPSOID_COMPRESSED_ROOT_RELATIVE_V2: unknown;
|
|
217
|
+
};
|
|
155
218
|
get Handedness(): {
|
|
156
219
|
Right: number;
|
|
157
220
|
Left: number;
|
|
@@ -172,6 +235,7 @@ declare class Engine {
|
|
|
172
235
|
Y: number;
|
|
173
236
|
Z: number;
|
|
174
237
|
};
|
|
238
|
+
get UsePadding(): boolean;
|
|
175
239
|
activatedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
|
|
176
240
|
addStreamById(...args: [
|
|
177
241
|
handle: AquaClientHandle,
|
|
@@ -187,6 +251,9 @@ declare class Engine {
|
|
|
187
251
|
deletedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
|
|
188
252
|
dataPtrView(...args: [attributeInfo: AttributeInfo]): Uint32Array;
|
|
189
253
|
deactivatedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
|
|
254
|
+
remaskedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
|
|
255
|
+
getDrawnOctantMask(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
|
|
256
|
+
getOctantLocalBoundingBoxes(...args: [handle: AquaClientHandle, sceneObjectId: number]): number[];
|
|
190
257
|
destroyClient(...args: [handle: AquaClientHandle]): AquaStatus;
|
|
191
258
|
free(...args: [size: number]): number;
|
|
192
259
|
getAssetsAsync(...args: [handle: AquaClientHandle, tags: StringVector]): AssetInfo[];
|
|
@@ -196,7 +263,8 @@ declare class Engine {
|
|
|
196
263
|
attributeName: string,
|
|
197
264
|
attributeInfo: AttributeInfo
|
|
198
265
|
]): AquaStatus;
|
|
199
|
-
getDefaultCameraId(...args: [handle: AquaClientHandle]): number;
|
|
266
|
+
getDefaultCameraId(...args: [handle: AquaClientHandle, streamObjectId: number]): number;
|
|
267
|
+
getViewingVolumeId(...args: [handle: AquaClientHandle, streamObjectId: number]): number;
|
|
200
268
|
getLocalBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
|
|
201
269
|
getWorldBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
|
|
202
270
|
getLodIndex(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
|
|
@@ -204,6 +272,7 @@ declare class Engine {
|
|
|
204
272
|
getSceneChangesCounts(...args: [handle: AquaClientHandle, sceneChangeIds: SceneChangeIds]): void;
|
|
205
273
|
getSceneMetadata(...args: [handle: AquaClientHandle, metadata: SceneMetadata]): number;
|
|
206
274
|
getSceneObjectParent(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
|
|
275
|
+
getStreamStatus(...args: [handle: AquaClientHandle, streamObjectId: number]): StreamStatus;
|
|
207
276
|
getSceneObjectType(...args: [handle: AquaClientHandle, sceneObjectId: number]): SceneObjectType;
|
|
208
277
|
getLocalTransform(...args: [
|
|
209
278
|
handle: AquaClientHandle,
|
|
@@ -245,19 +314,19 @@ declare class Engine {
|
|
|
245
314
|
removeStream(...args: [handle: AquaClientHandle, streamObjectId: number]): boolean;
|
|
246
315
|
setAssetViewerKey(...args: [handle: AquaClientHandle, key: string]): AquaStatus;
|
|
247
316
|
setClientSpatialFormat(...args: [handle: AquaClientHandle, spatialFormat: SpatialFormat]): AquaStatus;
|
|
248
|
-
setRuntimeSettings(...args: [
|
|
249
|
-
handle: AquaClientHandle,
|
|
250
|
-
settings: RuntimeSettings
|
|
251
|
-
]): AquaStatus;
|
|
317
|
+
setRuntimeSettings(...args: [handle: AquaClientHandle, settings: RuntimeSettings]): AquaStatus;
|
|
252
318
|
setMainCameraTransform(...args: [handle: AquaClientHandle, cameraTransform: number]): AquaStatus;
|
|
253
319
|
setMainCameraViewFrustum(...args: [
|
|
254
320
|
handle: AquaClientHandle,
|
|
255
321
|
aspectRatio: number,
|
|
256
322
|
verticalFov: number,
|
|
257
323
|
nearPlane: number,
|
|
258
|
-
farPlane: number
|
|
324
|
+
farPlane: number,
|
|
325
|
+
viewportHeightPixels: number
|
|
259
326
|
]): AquaStatus;
|
|
260
327
|
setMaxCacheSize(...args: [maxSizeBytes: number]): void;
|
|
328
|
+
setPreferSharkEncodingProfiles(...args: [preferShark: boolean]): void;
|
|
329
|
+
setPadSplatAttributes(usePadding: boolean): void;
|
|
261
330
|
setSceneObjectTransform(...args: [
|
|
262
331
|
handle: AquaClientHandle,
|
|
263
332
|
sceneObjectId: number,
|
|
@@ -266,14 +335,10 @@ declare class Engine {
|
|
|
266
335
|
hasFeature(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): boolean;
|
|
267
336
|
getFeatureVersion(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
|
|
268
337
|
getFeatureState(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
|
|
269
|
-
|
|
270
|
-
handle: AquaClientHandle,
|
|
271
|
-
sceneObjectId: number
|
|
272
|
-
]):
|
|
273
|
-
setVariantSelection(...args: [
|
|
274
|
-
handle: AquaClientHandle,
|
|
275
|
-
sceneObjectId: number
|
|
276
|
-
]): AquaStatus;
|
|
338
|
+
getDrMapLadderRoughnessLevels(...args: [handle: AquaClientHandle, sceneObjectId: number]): number[];
|
|
339
|
+
getAssetFormatVersion(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
|
|
340
|
+
getName(...args: [handle: AquaClientHandle, sceneObjectId: number]): string;
|
|
341
|
+
setVariantSelection(...args: [handle: AquaClientHandle, sceneObjectId: number]): AquaStatus;
|
|
277
342
|
takeAttribute(...args: [
|
|
278
343
|
handle: AquaClientHandle,
|
|
279
344
|
sceneObjectId: number,
|
|
@@ -284,8 +349,22 @@ declare class Engine {
|
|
|
284
349
|
getActiveClientSideIdsCheckSum(): number;
|
|
285
350
|
unlockScene(...args: [handle: AquaClientHandle]): boolean;
|
|
286
351
|
updateSceneExecution(...args: [handle: AquaClientHandle]): AquaStatus;
|
|
287
|
-
recordFrameTime(...args: [handle: AquaClientHandle, frameTimeMs: number]): AquaStatus;
|
|
288
352
|
takeRenderRequired(...args: [handle: AquaClientHandle]): boolean;
|
|
353
|
+
/**
|
|
354
|
+
* Advances the runtime by one frame and recomputes the streaming budget. Call once per
|
|
355
|
+
* displayed frame per context, before the per-client updateSceneExecution() calls.
|
|
356
|
+
* `previousFrameTimeMs` is how long the previous frame took; pass 0 when there is no plausible
|
|
357
|
+
* measurement (first frame, or a resume from a stall) and the frame advances without recording
|
|
358
|
+
* `primsResident` is what the renderer held at the end of the previous frame, fading
|
|
359
|
+
* prims included, and `primCapacity` what it can hold; activations that would not fit are
|
|
360
|
+
* deferred, where primCapacity 0 means deferral is disabled.
|
|
361
|
+
*/
|
|
362
|
+
beginFrame(...args: [
|
|
363
|
+
contextHandle: AquaContextHandle,
|
|
364
|
+
previousFrameTimeMs: number,
|
|
365
|
+
primsResident: number,
|
|
366
|
+
primCapacity: number
|
|
367
|
+
]): AquaStatus;
|
|
289
368
|
createDeserializeWorker(_url: string, _workerUrl: string, poolSize: number): boolean;
|
|
290
369
|
cancelRequest(requestIdLow: number, requestIdHigh: number): boolean;
|
|
291
370
|
submitToWorker(requestIdLow: number, requestIdHigh: number, descriptorBuffer: ArrayBuffer, contextPtr: number): boolean;
|
|
@@ -299,45 +378,64 @@ declare type EngineMethodParameters<E extends Engine = Engine> = {
|
|
|
299
378
|
[Key in keyof E]: E[Key] extends (...args: any[]) => any ? Parameters<E[Key]> : never;
|
|
300
379
|
};
|
|
301
380
|
|
|
381
|
+
export declare const HaveData = 2;
|
|
382
|
+
|
|
383
|
+
export declare const HaveMetadata = 1;
|
|
384
|
+
|
|
385
|
+
export declare const HaveNothing = 0;
|
|
386
|
+
|
|
302
387
|
export declare class Lod {
|
|
303
388
|
#private;
|
|
304
389
|
readonly id: LodInit["id"];
|
|
305
390
|
readonly store: LodStore;
|
|
306
|
-
useExtSplats: boolean;
|
|
307
|
-
splatsExtendedData: Uint32Array<ArrayBuffer> | null;
|
|
308
|
-
sh1Data: Uint32Array<ArrayBuffer> | null;
|
|
309
|
-
sh1Max: number;
|
|
310
|
-
sh2Data: Uint32Array<ArrayBuffer> | null;
|
|
311
|
-
sh2Max: number;
|
|
312
|
-
sh3Data: Uint32Array<ArrayBuffer> | null;
|
|
313
|
-
sh3Max: number;
|
|
314
|
-
sh3ExtendedData: Uint32Array<ArrayBuffer> | null;
|
|
315
391
|
get key(): unknown;
|
|
316
392
|
set key(key: unknown);
|
|
317
393
|
readonly modelRoot: ModelRoot;
|
|
318
|
-
set splats(splats: Uint32Array<ArrayBuffer> | null);
|
|
319
|
-
get splats(): Uint32Array<ArrayBuffer> | null;
|
|
320
394
|
set bounds(bounds: Float32Array<ArrayBuffer> | null);
|
|
395
|
+
/**
|
|
396
|
+
* Retrieves the cached world bounds of this object
|
|
397
|
+
*
|
|
398
|
+
* @deprecated Retrieve the local bounds and transform as needed
|
|
399
|
+
*/
|
|
321
400
|
get bounds(): Float32Array<ArrayBuffer> | null;
|
|
322
|
-
|
|
323
|
-
|
|
401
|
+
/**
|
|
402
|
+
* Sets the local bounds of this lod
|
|
403
|
+
*/
|
|
404
|
+
set localBounds(bounds: Float32Array<ArrayBuffer> | null);
|
|
405
|
+
/**
|
|
406
|
+
* Retrieves the local bounds of this lod
|
|
407
|
+
*/
|
|
408
|
+
get localBounds(): Float32Array<ArrayBuffer> | null;
|
|
324
409
|
set lodIndex(index: number);
|
|
325
410
|
get lodIndex(): number | null;
|
|
326
|
-
set
|
|
327
|
-
get
|
|
411
|
+
set paddingSplatsCount(count: number);
|
|
412
|
+
get paddingSplatsCount(): number;
|
|
328
413
|
set transform(transform: Float32Array<ArrayBuffer> | null);
|
|
329
414
|
get transform(): Float32Array<ArrayBuffer> | null;
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
415
|
+
get _drawnOctantMask(): number;
|
|
416
|
+
set _drawnOctantMask(mask: number);
|
|
417
|
+
get _octantLocalBounds(): Float32Array<ArrayBuffer> | null;
|
|
418
|
+
set _octantLocalBounds(bounds: Float32Array<ArrayBuffer> | null);
|
|
419
|
+
get _octantOffsets(): Uint32Array<ArrayBuffer> | null;
|
|
420
|
+
get _hasOctantOffsets(): boolean;
|
|
421
|
+
get _surfelOctantOffsets(): Uint32Array<ArrayBuffer> | null;
|
|
422
|
+
get _surfelCount(): number;
|
|
423
|
+
get _surfelOwnerGroups(): Uint32Array<ArrayBuffer> | null;
|
|
424
|
+
get _octantCell(): Uint32Array<ArrayBuffer> | null;
|
|
425
|
+
_readOctantOffsets(engine: Engine): void;
|
|
426
|
+
hasAttribute(attributeName: string): boolean;
|
|
427
|
+
getDataFromAttribute(engine: Engine, attributeName: string, attributeInfo: AttributeInfo): CachedAttribute | null;
|
|
428
|
+
_getRawByteAttribute(engine: Engine, attributeName: string): Uint8Array<ArrayBuffer> | null;
|
|
429
|
+
_getRawByteAttributeWithBounds(engine: Engine, attributeName: string): RawByteAttributeWithBounds | null;
|
|
333
430
|
dispose(): void;
|
|
334
|
-
constructor({ id, modelRoot, lodStore }: LodInit);
|
|
431
|
+
constructor({ id, modelRoot, lodStore, client }: LodInit);
|
|
335
432
|
}
|
|
336
433
|
|
|
337
434
|
export declare type LodInit = {
|
|
338
435
|
id: number;
|
|
339
436
|
modelRoot: ModelRoot;
|
|
340
437
|
lodStore: LodStore;
|
|
438
|
+
client: Client;
|
|
341
439
|
};
|
|
342
440
|
|
|
343
441
|
export declare class LodStore {
|
|
@@ -353,6 +451,11 @@ export declare class LodStore {
|
|
|
353
451
|
|
|
354
452
|
declare interface MainModule {
|
|
355
453
|
AttributeInfo: new () => AttributeInfo;
|
|
454
|
+
CompressionType: {
|
|
455
|
+
SHARK_ELLIPSOID_COMPRESSED: unknown;
|
|
456
|
+
SHARK_ELLIPSOID_COMPRESSED_ROOT_RELATIVE: unknown;
|
|
457
|
+
SHARK_ELLIPSOID_COMPRESSED_ROOT_RELATIVE_V2: unknown;
|
|
458
|
+
};
|
|
356
459
|
Handedness: { Right: number; Left: number };
|
|
357
460
|
HEAPF32: Float32Array<ArrayBuffer>;
|
|
358
461
|
HEAPU8: Uint8Array<ArrayBuffer>;
|
|
@@ -378,7 +481,10 @@ declare interface MainModule {
|
|
|
378
481
|
createdObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
|
|
379
482
|
dataPtrView(attributeInfo: AttributeInfo): Uint32Array;
|
|
380
483
|
deactivatedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
|
|
484
|
+
remaskedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
|
|
381
485
|
deletedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
|
|
486
|
+
GetDrawnOctantMask(handle: number, sceneObjectId: number): number;
|
|
487
|
+
GetOctantLocalBoundingBoxes(handle: number, sceneObjectId: number): number[];
|
|
382
488
|
GetAssetsAsync(handle: number, tags: StringVector): unknown[];
|
|
383
489
|
GetSceneChanges(handle: number, sceneChangeIds: SceneChangeIds): void;
|
|
384
490
|
GetSceneChangesCounts(handle: number, sceneChangeIds: SceneChangeIds): void;
|
|
@@ -387,13 +493,22 @@ declare interface MainModule {
|
|
|
387
493
|
HasFeature(handle: number, sceneObjectId: number, feature: number): boolean;
|
|
388
494
|
GetFeatureVersion(handle: number, sceneObjectId: number, feature: number): number;
|
|
389
495
|
GetFeatureState(handle: number, sceneObjectId: number, feature: number): number;
|
|
496
|
+
GetAssetFormatVersion(handle: number, sceneObjectId: number): number;
|
|
497
|
+
GetDrMapLadderRoughnessLevels(handle: number, sceneObjectId: number): number[];
|
|
390
498
|
SetClientSpatialFormat(handle: number, spatialFormat: SpatialFormat): { value: number };
|
|
391
499
|
SetRuntimeSettings(handle: number, settings: RuntimeSettings): { value: number };
|
|
392
500
|
TakeEvictedClientSideAttributeIds(handle: number): EmbindVector<bigint>;
|
|
393
501
|
GetActiveClientSideIdsCheckSum(): number;
|
|
394
502
|
TakeRenderRequired(handle: number): boolean;
|
|
503
|
+
BeginFrame(
|
|
504
|
+
contextHandle: number,
|
|
505
|
+
previousFrameTimeMs: number,
|
|
506
|
+
primsResident: number,
|
|
507
|
+
primCapacity: number,
|
|
508
|
+
): number;
|
|
395
509
|
modifiedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
|
|
396
510
|
setMaxCacheSize(maxSizeBytes: number): void;
|
|
511
|
+
SetPreferSharkEncodingProfiles(prefer: boolean): void;
|
|
397
512
|
}
|
|
398
513
|
|
|
399
514
|
/**
|
|
@@ -406,6 +521,7 @@ declare interface MainModule {
|
|
|
406
521
|
*/
|
|
407
522
|
export declare class Miris {
|
|
408
523
|
#private;
|
|
524
|
+
static tryUseShark: boolean;
|
|
409
525
|
static _instance: Miris;
|
|
410
526
|
static instance<T extends typeof Miris>(this: T): Promise<InstanceType<T>>;
|
|
411
527
|
readonly engine: Engine;
|
|
@@ -415,14 +531,40 @@ export declare class Miris {
|
|
|
415
531
|
get viewerKey(): string | null | undefined;
|
|
416
532
|
set viewerKey(viewerKey: string | null | undefined);
|
|
417
533
|
get scenes(): Set<Scene>;
|
|
534
|
+
get useSphericalHarmonics(): boolean;
|
|
535
|
+
set useSphericalHarmonics(value: boolean);
|
|
418
536
|
constructor();
|
|
419
537
|
dispose(): void;
|
|
420
538
|
updateParentedTransform(_modelTransform: Float32Array<ArrayBuffer>, _parentTransform: Float32Array<ArrayBuffer>): Float32Array<ArrayBuffer> | undefined;
|
|
539
|
+
protected _xrModeActive: boolean;
|
|
540
|
+
protected _xrSession: XRSession | null;
|
|
541
|
+
protected _requestAnimationFrame: RequestAnimationFrameFn | null;
|
|
542
|
+
signalResumeFromIdle(): void;
|
|
543
|
+
get _splatCountBudget(): number;
|
|
544
|
+
/**
|
|
545
|
+
* Why 43? Because the AVP throttles down to 45Hz :(
|
|
546
|
+
*/
|
|
547
|
+
static readonly _XR_TARGET_FRAME_RATE = 43;
|
|
548
|
+
/* Excluded from this release type: _XR_SPLAT_COUNT_BUDGET */
|
|
549
|
+
/* Excluded from this release type: _SHARK_SPLAT_CAPACITY_MOBILE */
|
|
550
|
+
static readonly _SHARK_SPLAT_CAPACITY_DESKTOP: number;
|
|
551
|
+
/* Excluded from this release type: _SHARK_SPLAT_BUDGET_CAP_MOBILE */
|
|
552
|
+
static readonly _SHARK_SPLAT_BUDGET_CAP_DESKTOP = 2400000;
|
|
553
|
+
/* Excluded from this release type: _isMobileDevice */
|
|
554
|
+
/* Excluded from this release type: _sharkSplatCapacity */
|
|
555
|
+
/* Excluded from this release type: _minimumSplatCount */
|
|
556
|
+
/* Excluded from this release type: _splatCountStorageKey */
|
|
557
|
+
/* Excluded from this release type: _reloadWithLowerSplatCapacity */
|
|
558
|
+
/* Excluded from this release type: _limitSharkSplatCapacity */
|
|
559
|
+
/* Excluded from this release type: _sharkSplatBudgetCap */
|
|
560
|
+
/* Excluded from this release type: _setTargetFrameRate */
|
|
421
561
|
/* Excluded from this release type: _setXRModeActive */
|
|
562
|
+
/* Excluded from this release type: _setSplatCountBudgetOverride */
|
|
563
|
+
/* Excluded from this release type: _reportRendererPrims */
|
|
422
564
|
/* Excluded from this release type: _update */
|
|
423
565
|
getLocalTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
|
|
424
566
|
getWorldTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
|
|
425
|
-
|
|
567
|
+
/* Excluded from this release type: _updateForScene */
|
|
426
568
|
applyChanges(_entries: Change[]): void;
|
|
427
569
|
_computeAdditionalRenderNeeded(): boolean;
|
|
428
570
|
onColorSpaceDetected(_isLinear: boolean): void;
|
|
@@ -451,11 +593,40 @@ export declare type ModelRootInit = {
|
|
|
451
593
|
stream: Stream;
|
|
452
594
|
};
|
|
453
595
|
|
|
596
|
+
/**
|
|
597
|
+
* The byte-exact counterpart of getRawUint32Attribute above: same no-padding, no-takeAttribute
|
|
598
|
+
* contract, returning bytes rather than words.
|
|
599
|
+
*
|
|
600
|
+
* Use this rather than that one wherever the stride is not a whole number of words: the
|
|
601
|
+
* reflectance records' 18- and 26-byte strides are not, and an odd record count would lose that
|
|
602
|
+
* record's last field to dataPtrView's truncation.
|
|
603
|
+
*/
|
|
604
|
+
export declare type RawByteAttributeWithBounds = {
|
|
605
|
+
bytes: Uint8Array<ArrayBuffer>;
|
|
606
|
+
minValue: {
|
|
607
|
+
x: number;
|
|
608
|
+
y: number;
|
|
609
|
+
z: number;
|
|
610
|
+
};
|
|
611
|
+
maxValue: {
|
|
612
|
+
x: number;
|
|
613
|
+
y: number;
|
|
614
|
+
z: number;
|
|
615
|
+
};
|
|
616
|
+
};
|
|
617
|
+
|
|
618
|
+
declare type ReadyState_2 = typeof HaveNothing | typeof HaveMetadata | typeof HaveData;
|
|
619
|
+
export { ReadyState_2 as ReadyState }
|
|
620
|
+
|
|
621
|
+
declare type RequestAnimationFrameFn = ((callback: FrameRequestCallback) => number) | ((callback: XRFrameRequestCallback) => void);
|
|
622
|
+
|
|
454
623
|
declare interface RuntimeSettings extends EmbindObject {
|
|
455
624
|
maxBandwidthBitsPerSecond: number;
|
|
456
625
|
maxConcurrentRequests: number;
|
|
457
626
|
targetFramesPerSecond: number;
|
|
458
627
|
xrModeActive: boolean;
|
|
628
|
+
splatCountBudget: number;
|
|
629
|
+
splatCountBudgetCap: number;
|
|
459
630
|
}
|
|
460
631
|
|
|
461
632
|
export declare class Scene extends EventTarget {
|
|
@@ -467,6 +638,7 @@ export declare class Scene extends EventTarget {
|
|
|
467
638
|
readonly id: number;
|
|
468
639
|
get key(): unknown;
|
|
469
640
|
set key(key: unknown);
|
|
641
|
+
/* Excluded from this release type: _assetFormat */
|
|
470
642
|
get viewerKey(): string | null;
|
|
471
643
|
set viewerKey(viewerKey: string | null);
|
|
472
644
|
get streams(): Set<Stream>;
|
|
@@ -476,6 +648,18 @@ export declare class Scene extends EventTarget {
|
|
|
476
648
|
readonly client: Client;
|
|
477
649
|
readonly handle?: number;
|
|
478
650
|
constructor({ miris, viewerKey }: SceneInit);
|
|
651
|
+
/**
|
|
652
|
+
* Drives a frame and answers whether *this* scene's canvas needs repainting. Call it once per
|
|
653
|
+
* displayed frame from the host's animation loop, and render when it returns true.
|
|
654
|
+
*
|
|
655
|
+
* Every scene on the page calls this from its own loop. The first call in a displayed frame
|
|
656
|
+
* drives one engine tick for all of them; the rest recognise the frame and reuse it.
|
|
657
|
+
*
|
|
658
|
+
* @param ts the host's frame timestamp. Optional - the document timeline supplies one, and it
|
|
659
|
+
* reads the same for every scene in a displayed frame. Pass it when the host runs its own
|
|
660
|
+
* clock, as an immersive XR session does, because XRFrame time is not the document timeline.
|
|
661
|
+
*/
|
|
662
|
+
update(ts?: DOMHighResTimeStamp): boolean;
|
|
479
663
|
dispose(): void;
|
|
480
664
|
fetchAssets(tags?: string | Iterable<string>): Promise<{
|
|
481
665
|
name: string;
|
|
@@ -483,13 +667,16 @@ export declare class Scene extends EventTarget {
|
|
|
483
667
|
uuid: string;
|
|
484
668
|
tags: string[];
|
|
485
669
|
}[]>;
|
|
486
|
-
getDefaultCameraTransform(): Float32Array<ArrayBuffer> | null | undefined;
|
|
487
670
|
add(stream: Stream): void;
|
|
488
671
|
getStreamForId(streamObjectId: number): Stream | undefined;
|
|
489
672
|
getStreamForDescendentId(descendentObjectId: number): Stream | null;
|
|
490
673
|
getModelRootForDescendentId(descendentObjectId: number): ModelRoot | null;
|
|
674
|
+
_recordAssetFormat(modelRoot: ModelRoot, formatVersion: number): void;
|
|
675
|
+
/* Excluded from this release type: _getFeatureMesh */
|
|
491
676
|
/* Excluded from this release type: _getDrMap */
|
|
677
|
+
/* Excluded from this release type: _onDrMapLadder */
|
|
492
678
|
/* Excluded from this release type: _onFeatureData */
|
|
679
|
+
/* Excluded from this release type: _updateStreamStatuses */
|
|
493
680
|
/* Excluded from this release type: _onSceneLoaded */
|
|
494
681
|
delete(stream: Stream): void;
|
|
495
682
|
close(): void;
|
|
@@ -501,6 +688,7 @@ declare interface SceneChangeIds extends EmbindObject {
|
|
|
501
688
|
readonly modifiedObjectsCount: number;
|
|
502
689
|
readonly deactivatedObjectsCount: number;
|
|
503
690
|
readonly deletedObjectsCount: number;
|
|
691
|
+
readonly remaskedObjectsCount: number;
|
|
504
692
|
}
|
|
505
693
|
|
|
506
694
|
export declare type SceneInit = {
|
|
@@ -512,6 +700,13 @@ declare interface SceneMetadata extends EmbindObject {
|
|
|
512
700
|
readonly inputColorSpace: string;
|
|
513
701
|
}
|
|
514
702
|
|
|
703
|
+
declare type SparkAttributeInfo = {
|
|
704
|
+
elementsPerSplat: number;
|
|
705
|
+
discard: boolean;
|
|
706
|
+
};
|
|
707
|
+
|
|
708
|
+
export declare const sparkAttributeList: Record<string, SparkAttributeInfo>;
|
|
709
|
+
|
|
515
710
|
declare interface SpatialFormat extends EmbindObject {
|
|
516
711
|
metersPerUnit: number;
|
|
517
712
|
upAxis: number;
|
|
@@ -539,6 +734,8 @@ export declare class Stream extends EventTarget {
|
|
|
539
734
|
set key(key: unknown);
|
|
540
735
|
get matrix(): Matrix4x4Tuple;
|
|
541
736
|
set matrix(matrix: Matrix4x4Tuple);
|
|
737
|
+
get opacity(): number;
|
|
738
|
+
set opacity(opacity: number);
|
|
542
739
|
get boundingBox(): {
|
|
543
740
|
min: {
|
|
544
741
|
x: number;
|
|
@@ -569,6 +766,11 @@ export declare class Stream extends EventTarget {
|
|
|
569
766
|
constructor(options: StreamInit);
|
|
570
767
|
_initStream({ uuid }: StreamInit): void;
|
|
571
768
|
/* Excluded from this release type: _onStreamLoaded */
|
|
769
|
+
getDefaultCameraTransform(): Float32Array<ArrayBuffer> | null | undefined;
|
|
770
|
+
/* Excluded from this release type: _getViewingVolumeObb */
|
|
771
|
+
/** How much of the stream has loaded, as of the last frame. */
|
|
772
|
+
get readyState(): ReadyState_2;
|
|
773
|
+
/* Excluded from this release type: _updateStatus */
|
|
572
774
|
/* Excluded from this release type: _onRootLoaded */
|
|
573
775
|
add(modelRoot: ModelRoot): void;
|
|
574
776
|
end(): void;
|