@dcl/playground-assets 7.19.1-21595262606.commit-a6f1c20 → 7.19.1-21654129874.commit-4307fca

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/alpha.d.ts CHANGED
@@ -115,61 +115,6 @@ export declare const assetLoadLoadingStateSystem: AssetLoadLoadingStateSystem;
115
115
  */
116
116
  export declare type AssetLoadLoadingStateSystemCallback = (event: DeepReadonlyObject<PBAssetLoadLoadingState>) => void;
117
117
 
118
- export declare const AudioAnalysis: AudioAnalysisComponentDefinitionExtended;
119
-
120
- export declare interface AudioAnalysisComponentDefinitionExtended extends LastWriteWinElementSetComponentDefinition<PBAudioAnalysis> {
121
- /**
122
- * Reads the component data of `entity` into the provided `out` view.
123
- *
124
- * @throws Error if the entity does not have an AudioAnalysis component.
125
- * @param entity - The entity whose AudioAnalysis data will be read.
126
- * @param out - An existing AudioAnalysisView to populate with the latest values.
127
- */
128
- readIntoView(entity: Entity, out: AudioAnalysisView): void;
129
- /**
130
- * Attempts to read the component data of `entity` into the provided `out` view.
131
- *
132
- * @returns `true` if the component exists and data was written into `out`,
133
- * `false` if the entity does not have an AudioAnalysis component.
134
- * @param entity - The entity whose AudioAnalysis data will be read.
135
- * @param out - An existing AudioAnalysisView to populate.
136
- */
137
- tryReadIntoView(entity: Entity, out: AudioAnalysisView): boolean;
138
- /**
139
- * Creates an AudioAnalysis component for the given `entity`.
140
- *
141
- * If a component already exists on the entity, this call fails (does not replace).
142
- *
143
- * @param entity - The entity to attach the component to.
144
- * @param mode - Analysis mode. Defaults to `PBAudioAnalysisMode.MODE_LOGARITHMIC`.
145
- * @param amplitudeGain - Optional amplitude gain multiplier.
146
- * @param bandsGain - Optional gain multiplier applied to all frequency bands.
147
- */
148
- createAudioAnalysis(entity: Entity, mode?: PBAudioAnalysisMode, // default is PBAudioAnalysisMode.MODE_LOGARITHMIC
149
- amplitudeGain?: number, bandsGain?: number): void;
150
- /**
151
- * Creates the AudioAnalysis component if missing, or replaces the existing one.
152
- *
153
- * @param entity - The target entity.
154
- * @param mode - Analysis mode. Defaults to `PBAudioAnalysisMode.MODE_LOGARITHMIC`.
155
- * @param amplitudeGain - Optional amplitude gain multiplier.
156
- * @param bandsGain - Optional gain multiplier applied to the frequency bands.
157
- */
158
- createOrReplaceAudioAnalysis(entity: Entity, mode?: PBAudioAnalysisMode, // default is PBAudioAnalysisMode.MODE_LOGARITHMIC
159
- amplitudeGain?: number, bandsGain?: number): void;
160
- }
161
-
162
- /**
163
- * A read-only JavaScript-friendly view of AudioAnalysis ECS data.
164
- *
165
- * `amplitude` represents the aggregated signal strength.
166
- * `bands` represents the processed frequency bands.
167
- */
168
- export declare type AudioAnalysisView = {
169
- amplitude: number;
170
- bands: number[];
171
- };
172
-
173
118
  /** @public */
174
119
  export declare const AudioEvent: GrowOnlyValueSetComponentDefinition<PBAudioEvent>;
175
120
 
@@ -258,12 +203,33 @@ export declare const AvatarAttach: LastWriteWinElementSetComponentDefinition<PBA
258
203
  /** @public */
259
204
  export declare const AvatarBase: LastWriteWinElementSetComponentDefinition<PBAvatarBase>;
260
205
 
206
+ /**
207
+ * @public
208
+ */
209
+ export declare const enum AvatarControlType {
210
+ /** CCT_NONE - avatar cannot move */
211
+ CCT_NONE = 0,
212
+ /** CCT_RELATIVE - avatar moves relative to the camera origin */
213
+ CCT_RELATIVE = 1,
214
+ /** CCT_TANK - avatar moves like a tank: left/right rotate the player, forward/backward advance/retreat the player */
215
+ CCT_TANK = 2
216
+ }
217
+
261
218
  /** @public */
262
219
  export declare const AvatarEmoteCommand: GrowOnlyValueSetComponentDefinition<PBAvatarEmoteCommand>;
263
220
 
264
221
  /** @public */
265
222
  export declare const AvatarEquippedData: LastWriteWinElementSetComponentDefinition<PBAvatarEquippedData>;
266
223
 
224
+ /**
225
+ * @public
226
+ */
227
+ export declare type AvatarEquippedDataComponentDefinitionExtended = LastWriteWinElementSetComponentDefinition<AvatarEquippedDataType>;
228
+
229
+ export declare type AvatarEquippedDataType = Omit<PBAvatarEquippedData, 'forceRender'> & {
230
+ forceRender?: string[] | undefined;
231
+ };
232
+
267
233
  /** @public */
268
234
  export declare const AvatarLocomotionSettings: LastWriteWinElementSetComponentDefinition<PBAvatarLocomotionSettings>;
269
235
 
@@ -281,9 +247,49 @@ export declare const enum AvatarModifierType {
281
247
  AMT_DISABLE_PASSPORTS = 1
282
248
  }
283
249
 
250
+ /**
251
+ * @public
252
+ */
253
+ export declare interface AvatarMovementSettings {
254
+ controlMode?: AvatarControlType | undefined;
255
+ /** if not explicitly set, the following properties default to user's preference settings */
256
+ runSpeed?: number | undefined;
257
+ /** how fast the player gets up to speed or comes to rest. higher = more responsive */
258
+ friction?: number | undefined;
259
+ /** how fast the player accelerates vertically when not on a solid surface, in m/s. should normally be negative */
260
+ gravity?: number | undefined;
261
+ /** how high the player can jump, in meters. should normally be positive. gravity must have the same sign for jumping to be possible */
262
+ jumpHeight?: number | undefined;
263
+ /** max fall speed in m/s. should normally be negative */
264
+ maxFallSpeed?: number | undefined;
265
+ /** speed the player turns in tank mode, in radians/s */
266
+ turnSpeed?: number | undefined;
267
+ /** speed the player walks at, in m/s */
268
+ walkSpeed?: number | undefined;
269
+ /** whether to allow player to move at a slower speed (e.g. with a walk-key or when using a gamepad/joystick). defaults to true */
270
+ allowWeightedMovement?: boolean | undefined;
271
+ }
272
+
273
+ /**
274
+ * @public
275
+ */
276
+ export declare namespace AvatarMovementSettings {
277
+ export function encode(message: AvatarMovementSettings, writer?: _m0.Writer): _m0.Writer;
278
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): AvatarMovementSettings;
279
+ }
280
+
284
281
  /** @public */
285
282
  export declare const AvatarShape: LastWriteWinElementSetComponentDefinition<PBAvatarShape>;
286
283
 
284
+ /**
285
+ * @public
286
+ */
287
+ export declare type AvatarShapeComponentDefinitionExtended = LastWriteWinElementSetComponentDefinition<AvatarShapeType>;
288
+
289
+ export declare type AvatarShapeType = Omit<PBAvatarShape, 'forceRender'> & {
290
+ forceRender?: string[] | undefined;
291
+ };
292
+
287
293
  /**
288
294
  * @public
289
295
  */
@@ -551,11 +557,19 @@ export declare interface ByteBuffer {
551
557
  }
552
558
 
553
559
  /**
554
- * Callback function to be triggered on a specified event
555
- * @public
560
+ * legacy Callback function
561
+ *
562
+ * @public @deprecated This type is no longer used in the sdk api, EventSystemCallback is
563
+ * used for listeners instead
556
564
  */
557
565
  export declare type Callback = () => void;
558
566
 
567
+ /** @public */
568
+ export declare const CameraLayer: LastWriteWinElementSetComponentDefinition<PBCameraLayer>;
569
+
570
+ /** @public */
571
+ export declare const CameraLayers: LastWriteWinElementSetComponentDefinition<PBCameraLayers>;
572
+
559
573
  /** @public */
560
574
  export declare const CameraMode: LastWriteWinElementSetComponentDefinition<PBCameraMode>;
561
575
 
@@ -613,6 +627,39 @@ export declare const enum CameraType {
613
627
 
614
628
  export declare type Children = ReactEcs.JSX.ReactNode;
615
629
 
630
+ /**
631
+ * @public
632
+ */
633
+ export declare interface CinematicSettings {
634
+ /** Entity that defines the cinematic camera transform. */
635
+ cameraEntity: number;
636
+ /**
637
+ * Position -> camera's position
638
+ * Rotation -> camera's direction
639
+ * scale.z -> zoom level
640
+ * scale.x and scale.y -> unused
641
+ */
642
+ allowManualRotation?: boolean | undefined;
643
+ /** how far the camera can rotate around the y-axis / look left/right, in radians. default unrestricted */
644
+ yawRange?: number | undefined;
645
+ /** how far the camera can rotate around the x-axis / look up-down, in radians. default unrestricted */
646
+ pitchRange?: number | undefined;
647
+ /** note: cameras can never look up/down further than Vec3::Y */
648
+ rollRange?: number | undefined;
649
+ /** minimum zoom level. must be greater than 0. defaults to the input zoom level */
650
+ zoomMin?: number | undefined;
651
+ /** maximum zoom level. must be greater than 0. defaults to the input zoom level */
652
+ zoomMax?: number | undefined;
653
+ }
654
+
655
+ /**
656
+ * @public
657
+ */
658
+ export declare namespace CinematicSettings {
659
+ export function encode(message: CinematicSettings, writer?: _m0.Writer): _m0.Writer;
660
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): CinematicSettings;
661
+ }
662
+
616
663
  /** ColliderLayer determines the kind of collision to detect, in OR-able bit flag form. */
617
664
  /**
618
665
  * @public
@@ -1379,7 +1426,6 @@ export declare const componentDefinitionByName: {
1379
1426
  "core::Animator": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBAnimator>>;
1380
1427
  "core::AssetLoad": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBAssetLoad>>;
1381
1428
  "core::AssetLoadLoadingState": GSetComponentGetter<GrowOnlyValueSetComponentDefinition<PBAssetLoadLoadingState>>;
1382
- "core::AudioAnalysis": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBAudioAnalysis>>;
1383
1429
  "core::AudioEvent": GSetComponentGetter<GrowOnlyValueSetComponentDefinition<PBAudioEvent>>;
1384
1430
  "core::AudioSource": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBAudioSource>>;
1385
1431
  "core::AudioStream": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBAudioStream>>;
@@ -1391,12 +1437,17 @@ export declare const componentDefinitionByName: {
1391
1437
  "core::AvatarModifierArea": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBAvatarModifierArea>>;
1392
1438
  "core::AvatarShape": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBAvatarShape>>;
1393
1439
  "core::Billboard": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBBillboard>>;
1440
+ "core::CameraLayer": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraLayer>>;
1441
+ "core::CameraLayers": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraLayers>>;
1394
1442
  "core::CameraMode": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraMode>>;
1395
1443
  "core::CameraModeArea": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraModeArea>>;
1396
1444
  "core::EngineInfo": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBEngineInfo>>;
1445
+ "core::GlobalLight": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGlobalLight>>;
1397
1446
  "core::GltfContainer": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfContainer>>;
1398
1447
  "core::GltfContainerLoadingState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfContainerLoadingState>>;
1448
+ "core::GltfNode": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfNode>>;
1399
1449
  "core::GltfNodeModifiers": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfNodeModifiers>>;
1450
+ "core::GltfNodeState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfNodeState>>;
1400
1451
  "core::InputModifier": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBInputModifier>>;
1401
1452
  "core::LightSource": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBLightSource>>;
1402
1453
  "core::MainCamera": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBMainCamera>>;
@@ -1414,17 +1465,20 @@ export declare const componentDefinitionByName: {
1414
1465
  "core::RealmInfo": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBRealmInfo>>;
1415
1466
  "core::SkyboxTime": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBSkyboxTime>>;
1416
1467
  "core::TextShape": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTextShape>>;
1468
+ "core::TextureCamera": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTextureCamera>>;
1417
1469
  "core::TriggerArea": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTriggerArea>>;
1418
1470
  "core::TriggerAreaResult": GSetComponentGetter<GrowOnlyValueSetComponentDefinition<PBTriggerAreaResult>>;
1419
1471
  "core::Tween": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTween>>;
1420
1472
  "core::TweenSequence": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTweenSequence>>;
1421
1473
  "core::TweenState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTweenState>>;
1422
1474
  "core::UiBackground": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiBackground>>;
1475
+ "core::UiCanvas": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiCanvas>>;
1423
1476
  "core::UiCanvasInformation": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiCanvasInformation>>;
1424
1477
  "core::UiDropdown": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiDropdown>>;
1425
1478
  "core::UiDropdownResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiDropdownResult>>;
1426
1479
  "core::UiInput": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiInput>>;
1427
1480
  "core::UiInputResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiInputResult>>;
1481
+ "core::UiScrollResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiScrollResult>>;
1428
1482
  "core::UiText": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiText>>;
1429
1483
  "core::UiTransform": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiTransform>>;
1430
1484
  "core::VideoEvent": GSetComponentGetter<GrowOnlyValueSetComponentDefinition<PBVideoEvent>>;
@@ -2012,10 +2066,18 @@ export declare type EntityComponents = {
2012
2066
  uiBackground: PBUiBackground;
2013
2067
  uiInput: PBUiInput;
2014
2068
  uiDropdown: PBUiDropdown;
2015
- onMouseDown: Callback;
2016
- onMouseUp: Callback;
2017
- onMouseEnter: Callback;
2018
- onMouseLeave: Callback;
2069
+ onMouseDown: EventSystemCallback;
2070
+ onMouseUp: EventSystemCallback;
2071
+ onMouseEnter: EventSystemCallback;
2072
+ onMouseLeave: EventSystemCallback;
2073
+ onMouseDrag: EventSystemCallback;
2074
+ onMouseDragLocked: EventSystemCallback;
2075
+ onMouseDragEnd: EventSystemCallback;
2076
+ onInputDown: MultiCallback;
2077
+ onInputUp: MultiCallback;
2078
+ onInputDrag: MultiCallback;
2079
+ onInputDragLocked: MultiCallback;
2080
+ onInputDragEnd: MultiCallback;
2019
2081
  };
2020
2082
 
2021
2083
  /** @public */
@@ -2094,6 +2156,13 @@ export declare type EventSystemOptions = {
2094
2156
  maxPlayerDistance?: number;
2095
2157
  };
2096
2158
 
2159
+ /**
2160
+ * @public
2161
+ */
2162
+ export declare type EventSystemOptionsCallback = EventSystemOptions & {
2163
+ cb: EventSystemCallback;
2164
+ };
2165
+
2097
2166
  /**
2098
2167
  * Excludes property keys from T where the property is assignable to U
2099
2168
  * @public
@@ -2312,6 +2381,9 @@ export declare type GlobalDirectionRaycastSystemOptions = {
2312
2381
  direction?: PBVector3;
2313
2382
  };
2314
2383
 
2384
+ /** @public */
2385
+ export declare const GlobalLight: LastWriteWinElementSetComponentDefinition<PBGlobalLight>;
2386
+
2315
2387
  export declare type GlobalTargetRaycastOptions = RaycastSystemOptions & GlobalTargetRaycastSystemOptions;
2316
2388
 
2317
2389
  export declare type GlobalTargetRaycastSystemOptions = {
@@ -2324,9 +2396,24 @@ export declare const GltfContainer: LastWriteWinElementSetComponentDefinition<PB
2324
2396
  /** @public */
2325
2397
  export declare const GltfContainerLoadingState: LastWriteWinElementSetComponentDefinition<PBGltfContainerLoadingState>;
2326
2398
 
2399
+ /** @public */
2400
+ export declare const GltfNode: LastWriteWinElementSetComponentDefinition<PBGltfNode>;
2401
+
2327
2402
  /** @public */
2328
2403
  export declare const GltfNodeModifiers: LastWriteWinElementSetComponentDefinition<PBGltfNodeModifiers>;
2329
2404
 
2405
+ /** @public */
2406
+ export declare const GltfNodeState: LastWriteWinElementSetComponentDefinition<PBGltfNodeState>;
2407
+
2408
+ /**
2409
+ * @public
2410
+ */
2411
+ export declare const enum GltfNodeStateValue {
2412
+ GNSV_PENDING = 0,
2413
+ GNSV_FAILED = 1,
2414
+ GNSV_READY = 2
2415
+ }
2416
+
2330
2417
  /**
2331
2418
  * @public
2332
2419
  */
@@ -2681,6 +2768,12 @@ export declare type IInputSystem = {
2681
2768
  * @returns the input command info or undefined if there is no command in the last tick-update
2682
2769
  */
2683
2770
  getInputCommand: (inputAction: InputAction, pointerEventType: PointerEventType, entity?: Entity) => PBPointerEventsResult | null;
2771
+ /**
2772
+ * @public
2773
+ * Get an ordered iterator over events received within the current frame.
2774
+ * @returns the iterator
2775
+ */
2776
+ getInputCommands: () => Generator<PBPointerEventsResult>;
2684
2777
  };
2685
2778
 
2686
2779
  /**
@@ -2745,8 +2838,7 @@ export declare const enum InputAction {
2745
2838
  IA_ACTION_3 = 10,
2746
2839
  IA_ACTION_4 = 11,
2747
2840
  IA_ACTION_5 = 12,
2748
- IA_ACTION_6 = 13,
2749
- IA_MODIFIER = 14
2841
+ IA_ACTION_6 = 13
2750
2842
  }
2751
2843
 
2752
2844
  export declare const InputModifier: InputModifierComponentDefinitionExtended;
@@ -2977,13 +3069,29 @@ export declare interface LightSourceHelper {
2977
3069
  */
2978
3070
  export declare type Listeners = {
2979
3071
  /** triggered on mouse down event */
2980
- onMouseDown?: Callback;
3072
+ onMouseDown?: EventSystemCallback;
2981
3073
  /** triggered on mouse up event */
2982
- onMouseUp?: Callback;
3074
+ onMouseUp?: EventSystemCallback;
2983
3075
  /** triggered on mouse hover event */
2984
- onMouseEnter?: Callback;
3076
+ onMouseEnter?: EventSystemCallback;
2985
3077
  /** triggered on mouse leave event */
2986
- onMouseLeave?: Callback;
3078
+ onMouseLeave?: EventSystemCallback;
3079
+ /** triggered on mouse drag event */
3080
+ onMouseDrag?: EventSystemCallback;
3081
+ /** triggered on mouse drag event */
3082
+ onMouseDragLocked?: EventSystemCallback;
3083
+ /** triggered on mouse drag event */
3084
+ onMouseDragEnd?: EventSystemCallback;
3085
+ /** triggered on input down event */
3086
+ onInputDown?: MultiCallback;
3087
+ /** triggered on input up event */
3088
+ onInputUp?: MultiCallback;
3089
+ /** triggered on input drag event */
3090
+ onInputDrag?: MultiCallback;
3091
+ /** triggered on input drag event */
3092
+ onInputDragLocked?: MultiCallback;
3093
+ /** triggered on input drag event */
3094
+ onInputDragEnd?: MultiCallback;
2987
3095
  };
2988
3096
 
2989
3097
  /**
@@ -3888,6 +3996,14 @@ export declare interface MeshColliderComponentDefinitionExtended extends LastWri
3888
3996
  * @param colliderMask - the set of layer where the collider reacts, default: Physics and Pointer
3889
3997
  */
3890
3998
  setSphere(entity: Entity, colliderLayers?: ColliderLayer | ColliderLayer[]): void;
3999
+ /**
4000
+ * @public
4001
+ * Set a gltf internal mesh in the MeshCollider component
4002
+ * @param entity - entity to create or replace the MeshRenderer component
4003
+ * @param source - the path to the gltf
4004
+ * @param meshName - the name of the mesh in the gltf
4005
+ */
4006
+ setGltfMesh(entity: Entity, source: string, meshName: string, colliderLayers?: ColliderLayer | ColliderLayer[]): void;
3891
4007
  }
3892
4008
 
3893
4009
  export declare const MeshRenderer: MeshRendererComponentDefinitionExtended;
@@ -3924,6 +4040,14 @@ export declare interface MeshRendererComponentDefinitionExtended extends LastWri
3924
4040
  * @param entity - entity to create or replace the MeshRenderer component
3925
4041
  */
3926
4042
  setSphere(entity: Entity): void;
4043
+ /**
4044
+ * @public
4045
+ * Set a gltf internal mesh in the MeshRenderer component
4046
+ * @param entity - entity to create or replace the MeshRenderer component
4047
+ * @param source - the path to the gltf
4048
+ * @param meshName - the name of the mesh in the gltf
4049
+ */
4050
+ setGltfMesh(entity: Entity, source: string, meshName: string): void;
3927
4051
  }
3928
4052
 
3929
4053
  /**
@@ -3972,6 +4096,19 @@ export declare namespace MoveContinuous {
3972
4096
  export function decode(input: _m0.Reader | Uint8Array, length?: number): MoveContinuous;
3973
4097
  }
3974
4098
 
4099
+ /**
4100
+ * a record object mapping `InputAction`s to functions.
4101
+ *
4102
+ * @example
4103
+ * onInputDown={{
4104
+ * [InputAction.IA_PRIMARY]: (eventData) => { console.log("primary") },
4105
+ * [InputAction.IA_SECONDARY]: () => { console.log("secondary") },
4106
+ * }}
4107
+ *
4108
+ * @public
4109
+ */
4110
+ export declare type MultiCallback = Partial<Record<InputAction, EventSystemCallback>>;
4111
+
3975
4112
  export declare const Name: NameComponent;
3976
4113
 
3977
4114
  export declare type NameComponent = LastWriteWinElementSetComponentDefinition<NameType>;
@@ -4352,6 +4489,25 @@ export declare const onVideoEvent: Observable<{
4352
4489
  totalVideoLength: number;
4353
4490
  }>;
4354
4491
 
4492
+ /**
4493
+ * @public
4494
+ */
4495
+ export declare interface Orthographic {
4496
+ /**
4497
+ * vertical extent of the visible range in meters
4498
+ * defaults to 4m
4499
+ */
4500
+ verticalRange?: number | undefined;
4501
+ }
4502
+
4503
+ /**
4504
+ * @public
4505
+ */
4506
+ export declare namespace Orthographic {
4507
+ export function encode(message: Orthographic, writer?: _m0.Writer): _m0.Writer;
4508
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): Orthographic;
4509
+ }
4510
+
4355
4511
  /**
4356
4512
  * @public
4357
4513
  * The overflow property controls what happens to content that is too big to fit into an area
@@ -4450,45 +4606,6 @@ export declare namespace PBAssetLoadLoadingState {
4450
4606
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBAssetLoadLoadingState;
4451
4607
  }
4452
4608
 
4453
- /**
4454
- * @public
4455
- */
4456
- export declare interface PBAudioAnalysis {
4457
- /** Parameters section */
4458
- mode: PBAudioAnalysisMode;
4459
- /** Used only when mode == MODE_LOGARITHMIC */
4460
- amplitudeGain?: number | undefined;
4461
- /** End when mode == MODE_LOGARITHMIC */
4462
- bandsGain?: number | undefined;
4463
- /** Result section */
4464
- amplitude: number;
4465
- /** Protobuf doesn't support fixed arrays -> 8 band fields */
4466
- band0: number;
4467
- band1: number;
4468
- band2: number;
4469
- band3: number;
4470
- band4: number;
4471
- band5: number;
4472
- band6: number;
4473
- band7: number;
4474
- }
4475
-
4476
- /**
4477
- * @public
4478
- */
4479
- export declare namespace PBAudioAnalysis {
4480
- export function encode(message: PBAudioAnalysis, writer?: _m0.Writer): _m0.Writer;
4481
- export function decode(input: _m0.Reader | Uint8Array, length?: number): PBAudioAnalysis;
4482
- }
4483
-
4484
- /**
4485
- * @public
4486
- */
4487
- export declare const enum PBAudioAnalysisMode {
4488
- MODE_RAW = 0,
4489
- MODE_LOGARITHMIC = 1
4490
- }
4491
-
4492
4609
  /**
4493
4610
  * @public
4494
4611
  */
@@ -4668,6 +4785,8 @@ export declare namespace PBAvatarEmoteCommand {
4668
4785
  export declare interface PBAvatarEquippedData {
4669
4786
  wearableUrns: string[];
4670
4787
  emoteUrns: string[];
4788
+ /** slots that will render even if hidden */
4789
+ forceRender: string[];
4671
4790
  }
4672
4791
 
4673
4792
  /**
@@ -4732,6 +4851,9 @@ export declare interface PBAvatarModifierArea {
4732
4851
  excludeIds: string[];
4733
4852
  /** list of modifiers to apply */
4734
4853
  modifiers: AvatarModifierType[];
4854
+ movementSettings?: AvatarMovementSettings | undefined;
4855
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
4856
+ useColliderRange?: boolean | undefined;
4735
4857
  }
4736
4858
 
4737
4859
  /**
@@ -4790,6 +4912,8 @@ export declare interface PBAvatarShape {
4790
4912
  emotes: string[];
4791
4913
  /** hides the skin + hair + facial features (default: false) */
4792
4914
  showOnlyWearables?: boolean | undefined;
4915
+ /** slots that will render even if hidden */
4916
+ forceRender: string[];
4793
4917
  }
4794
4918
 
4795
4919
  /**
@@ -4824,6 +4948,51 @@ export declare namespace PBBillboard {
4824
4948
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBBillboard;
4825
4949
  }
4826
4950
 
4951
+ /**
4952
+ * @public
4953
+ */
4954
+ export declare interface PBCameraLayer {
4955
+ /**
4956
+ * layer to which these settings apply. must be > 0
4957
+ * Layer 0 is the default "real world" layer viewed by the player and cannot be modified.
4958
+ */
4959
+ layer: number;
4960
+ /** should the sun light affect this layer? default false */
4961
+ directionalLight?: boolean | undefined;
4962
+ /** should this layer show player avatars? default false */
4963
+ showAvatars?: boolean | undefined;
4964
+ /** should this layer show the sky? default false */
4965
+ showSkybox?: boolean | undefined;
4966
+ /** should this layer show distance fog? default false */
4967
+ showFog?: boolean | undefined;
4968
+ /** ambient light overrides for this layer. default -> use same as main camera */
4969
+ ambientColorOverride?: PBColor3 | undefined;
4970
+ ambientBrightnessOverride?: number | undefined;
4971
+ }
4972
+
4973
+ /**
4974
+ * @public
4975
+ */
4976
+ export declare namespace PBCameraLayer {
4977
+ export function encode(message: PBCameraLayer, writer?: _m0.Writer): _m0.Writer;
4978
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBCameraLayer;
4979
+ }
4980
+
4981
+ /**
4982
+ * @public
4983
+ */
4984
+ export declare interface PBCameraLayers {
4985
+ layers: number[];
4986
+ }
4987
+
4988
+ /**
4989
+ * @public
4990
+ */
4991
+ export declare namespace PBCameraLayers {
4992
+ export function encode(message: PBCameraLayers, writer?: _m0.Writer): _m0.Writer;
4993
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBCameraLayers;
4994
+ }
4995
+
4827
4996
  /**
4828
4997
  * The CameraMode component can be used to determine whether the player is using a first-person o
4829
4998
  * third-person view.
@@ -4846,7 +5015,7 @@ export declare namespace PBCameraMode {
4846
5015
 
4847
5016
  /**
4848
5017
  * The CameraModeArea component can be attached to an Entity to define a region of space where
4849
- * the player's camera mode (1st-person or 3rd-person) is overridden.
5018
+ * the player's camera mode (1st-person, 3rd-person or cinematic) is overridden.
4850
5019
  *
4851
5020
  * The Entity's Transform position determines the center-point of the region, while its size is
4852
5021
  * given as a vector in the `area` property below. The Transform rotation is applied, but the scale
@@ -4856,6 +5025,8 @@ export declare namespace PBCameraMode {
4856
5025
  *
4857
5026
  * Note that, while commonly used to delineate a 2D area in a scene (hence the name), the region
4858
5027
  * is actually a 3D volume.
5028
+ *
5029
+ * When mode is set to CtCinematic, the cinematic_settings field must also be provided.
4859
5030
  */
4860
5031
  /**
4861
5032
  * @public
@@ -4865,6 +5036,9 @@ export declare interface PBCameraModeArea {
4865
5036
  area: PBVector3 | undefined;
4866
5037
  /** the camera mode to enforce */
4867
5038
  mode: CameraType;
5039
+ cinematicSettings?: CinematicSettings | undefined;
5040
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
5041
+ useColliderRange?: boolean | undefined;
4868
5042
  }
4869
5043
 
4870
5044
  /**
@@ -4936,6 +5110,39 @@ export declare namespace PBEngineInfo {
4936
5110
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBEngineInfo;
4937
5111
  }
4938
5112
 
5113
+ /**
5114
+ * defines the global scene light settings. must be added to the scene root.
5115
+ * to control sunlight color, intensity, shadows etc, you can also add a PBLight to the scene root.
5116
+ */
5117
+ /**
5118
+ * @public
5119
+ */
5120
+ export declare interface PBGlobalLight {
5121
+ /**
5122
+ * the direction the directional light shines in.
5123
+ * default depends on time of day and explorer implementation
5124
+ */
5125
+ direction?: PBVector3 | undefined;
5126
+ /**
5127
+ * ambient light color
5128
+ * default: White
5129
+ */
5130
+ ambientColor?: PBColor3 | undefined;
5131
+ /**
5132
+ * ambient light intensity. the explorer default ambient brightness is multiplied by this non-physical quantity.
5133
+ * default 1
5134
+ */
5135
+ ambientBrightness?: number | undefined;
5136
+ }
5137
+
5138
+ /**
5139
+ * @public
5140
+ */
5141
+ export declare namespace PBGlobalLight {
5142
+ export function encode(message: PBGlobalLight, writer?: _m0.Writer): _m0.Writer;
5143
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGlobalLight;
5144
+ }
5145
+
4939
5146
  /**
4940
5147
  * GltfContainer loads a GLTF file (and any additional files packaged inside) attached to an Entity.
4941
5148
  *
@@ -4971,6 +5178,25 @@ export declare namespace PBGltfContainer {
4971
5178
  */
4972
5179
  export declare interface PBGltfContainerLoadingState {
4973
5180
  currentState: LoadingState;
5181
+ /** all node paths in the gltf, which can be used with a GltfNode to inspect and modify the gltf contents */
5182
+ nodePaths: string[];
5183
+ /** all meshes in the gltf. unnamed meshes will be auto-assigned a name of the form `MeshX` or `MeshX/PrimitiveY` */
5184
+ meshNames: string[];
5185
+ /**
5186
+ * where X is the mesh index and Y is the primitive index (and there is more than 1 primitive). note this may
5187
+ * conflict with manually named meshes - to avoid any issues make sure all your meshes are explicitly named.
5188
+ */
5189
+ materialNames: string[];
5190
+ /**
5191
+ * X is the material index. note this may conflict with manually named materials - to avoid any issues make
5192
+ * sure all your materials are explicitly named.
5193
+ */
5194
+ skinNames: string[];
5195
+ /**
5196
+ * X is the skin index. note this may conflict with manually named skins - to avoid any issues make sure all
5197
+ * your skins are explicitly named.
5198
+ */
5199
+ animationNames: string[];
4974
5200
  }
4975
5201
 
4976
5202
  /**
@@ -4981,6 +5207,57 @@ export declare namespace PBGltfContainerLoadingState {
4981
5207
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfContainerLoadingState;
4982
5208
  }
4983
5209
 
5210
+ /**
5211
+ * a GltfNode links a scene entity with a node from within a gltf, allowing the scene to inspect it or modify it.
5212
+ * This component must be added to a direct child of an entity with a PBGltfContainer component, or
5213
+ * to a direct child of another entity with a GltfNode component, and the referenced gltf node must be a descendent of the gltf node
5214
+ * in the parent.
5215
+ * The name must match the path of one of the nodes within the Gltf. These are available on the GltfContainerLoadingState component.
5216
+ *
5217
+ * The renderer will attach a PBGltfNodeState to the entity describing the state. Once the state is `GNS_READY`,
5218
+ * - the `Transform` will be updated to match the position of the node within the gltf (relative to the gltf root, or the parent node),
5219
+ * - a `MeshRenderer` with a GltfMesh mesh type will be added (if the gltf node has a mesh).
5220
+ * - a `MeshCollider` with a GltfMesh mesh type will be added (if the gltf node has a collider).
5221
+ * - a `Material` component including a GltfMaterial reference will be added (if the gltf node has a material).
5222
+ *
5223
+ * After creation, if an animation moves the node, the `Transform` will be updated.
5224
+ *
5225
+ * From the scene, you can modify various components to alter the gltf node:
5226
+ * - modifying the `Transform` position/rotation/scale will move the node. The position is interpreted relative to the gltf root (or parent node),
5227
+ * regardless of any intermediate gltf node hierarchy.
5228
+ * If an animation is playing, the animation takes priority and the scene entity's position will be updated to match the animation.
5229
+ * - `Visibility` can be added to hide or show the node and it's children in the gltf hierarchy.
5230
+ * - `MeshRenderer` can be added/modified/removed to create/modify/remove a mesh on the node.
5231
+ * - `MeshCollider` can be added/modified/removed to create/modify/remove a collider on the node.
5232
+ * - `Material` can be added or modified to change the material properties. If the gltf node has a material, the original material will be
5233
+ * used as a base, and any gltf features (e.g. occlusion maps) from the gtlf spec that the renderer supports but that are not exposed in the
5234
+ * PBMaterial will be maintained.
5235
+ *
5236
+ * The scene can add additional entities as children to the gltf node, but structural modifications of the gltf are not possible:
5237
+ * - changing the scene hierarchy will not change the gltf node hierarchy. Moving the entity out of the gltf will sever the link and
5238
+ * change the state to `GNS_FAILED`.
5239
+ * - deleting the scene entity will not delete the gltf node.
5240
+ *
5241
+ * Removing the GltfNode will revert any changes to the original gltf. If the GltfNode component is removed and the mesh/collider/material
5242
+ * are not removed, this will result in a duplication of these components as the previously-linked entity will retain it's components and
5243
+ * the gltf node will also be displayed.
5244
+ */
5245
+ /**
5246
+ * @public
5247
+ */
5248
+ export declare interface PBGltfNode {
5249
+ /** the path of the target node in the Gltf. */
5250
+ path: string;
5251
+ }
5252
+
5253
+ /**
5254
+ * @public
5255
+ */
5256
+ export declare namespace PBGltfNode {
5257
+ export function encode(message: PBGltfNode, writer?: _m0.Writer): _m0.Writer;
5258
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNode;
5259
+ }
5260
+
4984
5261
  /**
4985
5262
  * GltfNodeModifiers component is to be used attached to entities that have the GltfContainer component.
4986
5263
  *
@@ -5026,6 +5303,26 @@ export declare namespace PBGltfNodeModifiers_GltfNodeModifier {
5026
5303
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNodeModifiers_GltfNodeModifier;
5027
5304
  }
5028
5305
 
5306
+ /**
5307
+ * The state of a linked gltf node.
5308
+ * If the state is GNSV_FAILED, the renderer may describe the failure in the error string.
5309
+ */
5310
+ /**
5311
+ * @public
5312
+ */
5313
+ export declare interface PBGltfNodeState {
5314
+ state: GltfNodeStateValue;
5315
+ error?: string | undefined;
5316
+ }
5317
+
5318
+ /**
5319
+ * @public
5320
+ */
5321
+ export declare namespace PBGltfNodeState {
5322
+ export function encode(message: PBGltfNodeState, writer?: _m0.Writer): _m0.Writer;
5323
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNodeState;
5324
+ }
5325
+
5029
5326
  /**
5030
5327
  * @public
5031
5328
  */
@@ -5161,6 +5458,14 @@ export declare interface PBMaterial {
5161
5458
  $case: "pbr";
5162
5459
  pbr: PBMaterial_PbrMaterial;
5163
5460
  } | undefined;
5461
+ /**
5462
+ * A gltf material that may provide additional features not supported by the PbMaterial fields.
5463
+ * If both gltf and material fields are provided, the gltf will be used only for extended features not
5464
+ * supported by the PbMaterial.
5465
+ * If this is provided and the `material` field is not provided, the renderer will update the material
5466
+ * field with data that reflects the gltf material once it is loaded.
5467
+ */
5468
+ gltf?: PBMaterial_GltfMaterial | undefined;
5164
5469
  }
5165
5470
 
5166
5471
  /**
@@ -5171,6 +5476,22 @@ export declare namespace PBMaterial {
5171
5476
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial;
5172
5477
  }
5173
5478
 
5479
+ /**
5480
+ * @public
5481
+ */
5482
+ export declare interface PBMaterial_GltfMaterial {
5483
+ gltfSrc: string;
5484
+ name: string;
5485
+ }
5486
+
5487
+ /**
5488
+ * @public
5489
+ */
5490
+ export declare namespace PBMaterial_GltfMaterial {
5491
+ export function encode(message: PBMaterial_GltfMaterial, writer?: _m0.Writer): _m0.Writer;
5492
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial_GltfMaterial;
5493
+ }
5494
+
5174
5495
  /**
5175
5496
  * @public
5176
5497
  */
@@ -5267,6 +5588,9 @@ export declare interface PBMeshCollider {
5267
5588
  } | {
5268
5589
  $case: "plane";
5269
5590
  plane: PBMeshCollider_PlaneMesh;
5591
+ } | {
5592
+ $case: "gltf";
5593
+ gltf: PBMeshCollider_GltfMesh;
5270
5594
  } | undefined;
5271
5595
  }
5272
5596
 
@@ -5312,6 +5636,25 @@ export declare namespace PBMeshCollider_CylinderMesh {
5312
5636
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_CylinderMesh;
5313
5637
  }
5314
5638
 
5639
+ /** A collider constructed from a Gltf Mesh. */
5640
+ /**
5641
+ * @public
5642
+ */
5643
+ export declare interface PBMeshCollider_GltfMesh {
5644
+ /** the GLTF file path as listed in the scene's manifest. */
5645
+ gltfSrc: string;
5646
+ /** the name of the mesh asset */
5647
+ name: string;
5648
+ }
5649
+
5650
+ /**
5651
+ * @public
5652
+ */
5653
+ export declare namespace PBMeshCollider_GltfMesh {
5654
+ export function encode(message: PBMeshCollider_GltfMesh, writer?: _m0.Writer): _m0.Writer;
5655
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_GltfMesh;
5656
+ }
5657
+
5315
5658
  /** PlaneMesh is a 2D rectangle described by the Entity's Transform. */
5316
5659
  /**
5317
5660
  * @public
@@ -5344,13 +5687,11 @@ export declare namespace PBMeshCollider_SphereMesh {
5344
5687
 
5345
5688
  /**
5346
5689
  * The MeshRenderer component renders a basic geometric shape for an Entity. It can be a cube, a
5347
- * plane, a sphere or a cylinder.
5690
+ * plane, a sphere, a cylinder, or a Gltf mesh.
5348
5691
  *
5349
5692
  * The cube and plane variants can include a UV texture mapping, so specific areas of a material
5350
5693
  * texture are rendered on different faces of the shape. They are serialized as a sequence of 2D
5351
5694
  * `float` coordinates, one for each corner of each side of each face.
5352
- *
5353
- * More complex shapes require the use of a `GltfContainer` component.
5354
5695
  */
5355
5696
  /**
5356
5697
  * @public
@@ -5368,6 +5709,9 @@ export declare interface PBMeshRenderer {
5368
5709
  } | {
5369
5710
  $case: "plane";
5370
5711
  plane: PBMeshRenderer_PlaneMesh;
5712
+ } | {
5713
+ $case: "gltf";
5714
+ gltf: PBMeshRenderer_GltfMesh;
5371
5715
  } | undefined;
5372
5716
  }
5373
5717
 
@@ -5415,6 +5759,25 @@ export declare namespace PBMeshRenderer_CylinderMesh {
5415
5759
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_CylinderMesh;
5416
5760
  }
5417
5761
 
5762
+ /** A mesh from a Gltf. */
5763
+ /**
5764
+ * @public
5765
+ */
5766
+ export declare interface PBMeshRenderer_GltfMesh {
5767
+ /** the GLTF file path as listed in the scene's manifest. */
5768
+ gltfSrc: string;
5769
+ /** the name of the mesh asset */
5770
+ name: string;
5771
+ }
5772
+
5773
+ /**
5774
+ * @public
5775
+ */
5776
+ export declare namespace PBMeshRenderer_GltfMesh {
5777
+ export function encode(message: PBMeshRenderer_GltfMesh, writer?: _m0.Writer): _m0.Writer;
5778
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_GltfMesh;
5779
+ }
5780
+
5418
5781
  /** PlaneMesh renders a 2D rectangular shape. */
5419
5782
  /**
5420
5783
  * @public
@@ -5688,7 +6051,10 @@ export declare interface PBPrimaryPointerInfo {
5688
6051
  screenCoordinates?: PBVector2 | undefined;
5689
6052
  /** Movement since last frame (pixels) */
5690
6053
  screenDelta?: PBVector2 | undefined;
5691
- /** Direction vector for 3D ray casting */
6054
+ /**
6055
+ * ray direction that can be used with the primary camera origin for
6056
+ * raycasting from the cursor into the world
6057
+ */
5692
6058
  worldRayDirection?: PBVector3 | undefined;
5693
6059
  }
5694
6060
 
@@ -5914,6 +6280,46 @@ export declare namespace PBTextShape {
5914
6280
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBTextShape;
5915
6281
  }
5916
6282
 
6283
+ /**
6284
+ * @public
6285
+ */
6286
+ export declare interface PBTextureCamera {
6287
+ /** rendered texture width */
6288
+ width?: number | undefined;
6289
+ /** rendered texture height */
6290
+ height?: number | undefined;
6291
+ /**
6292
+ * which layer of entities to render. entity layers can be specified by adding PBCameraLayers to target entities.
6293
+ * defaults to 0
6294
+ */
6295
+ layer?: number | undefined;
6296
+ /** default black */
6297
+ clearColor?: PBColor4 | undefined;
6298
+ /** default infinity */
6299
+ farPlane?: number | undefined;
6300
+ mode?: {
6301
+ $case: "perspective";
6302
+ perspective: Perspective;
6303
+ } | {
6304
+ $case: "orthographic";
6305
+ orthographic: Orthographic;
6306
+ } | undefined;
6307
+ /**
6308
+ * controls whether this camera acts as a receiver for audio on sources with matching `PBCameraLayers`.
6309
+ * range: 0 (off) - 1 (full volume)
6310
+ * default: 0
6311
+ */
6312
+ volume?: number | undefined;
6313
+ }
6314
+
6315
+ /**
6316
+ * @public
6317
+ */
6318
+ export declare namespace PBTextureCamera {
6319
+ export function encode(message: PBTextureCamera, writer?: _m0.Writer): _m0.Writer;
6320
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBTextureCamera;
6321
+ }
6322
+
5917
6323
  /**
5918
6324
  * The PBTriggerArea component is used to raise collision triggering events (through the TriggerAreaResult component)
5919
6325
  * when entities enter this component's defined area.
@@ -6092,6 +6498,25 @@ export declare namespace PBUiBackground {
6092
6498
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiBackground;
6093
6499
  }
6094
6500
 
6501
+ /** The UiCanvas component can be attached to a ui root entity to specify properties of the ui texture. */
6502
+ /**
6503
+ * @public
6504
+ */
6505
+ export declare interface PBUiCanvas {
6506
+ width: number;
6507
+ height: number;
6508
+ /** default = (0.0, 0.0, 0.0, 0.0) / transparent */
6509
+ color?: PBColor4 | undefined;
6510
+ }
6511
+
6512
+ /**
6513
+ * @public
6514
+ */
6515
+ export declare namespace PBUiCanvas {
6516
+ export function encode(message: PBUiCanvas, writer?: _m0.Writer): _m0.Writer;
6517
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiCanvas;
6518
+ }
6519
+
6095
6520
  /** This component is created by the renderer and used by the scenes to know the resolution of the UI canvas */
6096
6521
  /**
6097
6522
  * @public
@@ -6208,6 +6633,21 @@ export declare namespace PBUiInputResult {
6208
6633
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiInputResult;
6209
6634
  }
6210
6635
 
6636
+ /**
6637
+ * @public
6638
+ */
6639
+ export declare interface PBUiScrollResult {
6640
+ value: PBVector2 | undefined;
6641
+ }
6642
+
6643
+ /**
6644
+ * @public
6645
+ */
6646
+ export declare namespace PBUiScrollResult {
6647
+ export function encode(message: PBUiScrollResult, writer?: _m0.Writer): _m0.Writer;
6648
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiScrollResult;
6649
+ }
6650
+
6211
6651
  /**
6212
6652
  * @public
6213
6653
  */
@@ -6224,6 +6664,10 @@ export declare interface PBUiText {
6224
6664
  fontSize?: number | undefined;
6225
6665
  /** wrap text when the border is reached (default: TW_WRAP) */
6226
6666
  textWrap?: TextWrap | undefined;
6667
+ /** width of the outline (default: 0) */
6668
+ outlineWidth?: number | undefined;
6669
+ /** RGBA color of the outline (default: opaque black) */
6670
+ outlineColor?: PBColor4 | undefined;
6227
6671
  }
6228
6672
 
6229
6673
  /**
@@ -6351,6 +6795,12 @@ export declare interface PBUiTransform {
6351
6795
  borderRightColor?: PBColor4 | undefined;
6352
6796
  /** default: 1 */
6353
6797
  opacity?: number | undefined;
6798
+ /** reference for scroll_position. default empty */
6799
+ elementId?: string | undefined;
6800
+ /** default position=(0,0) */
6801
+ scrollPosition?: ScrollPositionValue | undefined;
6802
+ /** default ShowScrollBar.SSB_BOTH */
6803
+ scrollVisible?: ShowScrollBar | undefined;
6354
6804
  /** default: 0 — controls render stacking order. Higher values appear in front of lower values. */
6355
6805
  zIndex?: number | undefined;
6356
6806
  }
@@ -6459,7 +6909,6 @@ export declare namespace PBVideoPlayer {
6459
6909
  * an 'instant' transition (like using speed/time = 0)
6460
6910
  * * The lookAtEntity defines to which entity the Camera has to look at constantly (independent from
6461
6911
  * the holding entity transform).
6462
- * * The fov defines the Field of View of the virtual camera
6463
6912
  */
6464
6913
  /**
6465
6914
  * @public
@@ -6467,8 +6916,6 @@ export declare namespace PBVideoPlayer {
6467
6916
  export declare interface PBVirtualCamera {
6468
6917
  defaultTransition?: CameraTransition | undefined;
6469
6918
  lookAtEntity?: number | undefined;
6470
- /** default: 60 */
6471
- fov?: number | undefined;
6472
6919
  }
6473
6920
 
6474
6921
  /**
@@ -6503,6 +6950,25 @@ export declare namespace PBVisibilityComponent {
6503
6950
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBVisibilityComponent;
6504
6951
  }
6505
6952
 
6953
+ /**
6954
+ * @public
6955
+ */
6956
+ export declare interface Perspective {
6957
+ /**
6958
+ * vertical field of view in radians
6959
+ * defaults to pi/4 = 45 degrees
6960
+ */
6961
+ fieldOfView?: number | undefined;
6962
+ }
6963
+
6964
+ /**
6965
+ * @public
6966
+ */
6967
+ export declare namespace Perspective {
6968
+ export function encode(message: Perspective, writer?: _m0.Writer): _m0.Writer;
6969
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): Perspective;
6970
+ }
6971
+
6506
6972
  /**
6507
6973
  * Represens a plane by the equation ax + by + cz + d = 0
6508
6974
  * @public
@@ -6658,11 +7124,37 @@ export declare interface PointerEventsSystem {
6658
7124
  * @param entity - Entity where the callback was attached
6659
7125
  */
6660
7126
  removeOnPointerHoverLeave(entity: Entity): void;
7127
+ /**
7128
+ * @public
7129
+ * Remove the callback for onPointerDrag event
7130
+ * @param entity - Entity where the callback was attached
7131
+ */
7132
+ removeOnPointerDrag(entity: Entity): void;
7133
+ /**
7134
+ * @public
7135
+ * Remove the callback for onPointerDragLocked event
7136
+ * @param entity - Entity where the callback was attached
7137
+ */
7138
+ removeOnPointerDragLocked(entity: Entity): void;
7139
+ /**
7140
+ * @public
7141
+ * Remove the callback for onPointerDragEnd event
7142
+ * @param entity - Entity where the callback was attached
7143
+ */
7144
+ removeOnPointerDragEnd(entity: Entity): void;
7145
+ /**
7146
+ * @public
7147
+ * Execute callbacks when the user presses one of the InputButtons pointing at the entity
7148
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
7149
+ */
7150
+ onPointerDown(pointerData: {
7151
+ entity: Entity;
7152
+ optsList: EventSystemOptionsCallback[];
7153
+ }): void;
6661
7154
  /**
6662
7155
  * @public
6663
7156
  * Execute callback when the user press the InputButton pointing at the entity
6664
7157
  * @param pointerData - Entity to attach the callback, Opts to trigger Feedback and Button
6665
- * @param cb - Function to execute when click fires
6666
7158
  */
6667
7159
  onPointerDown(pointerData: {
6668
7160
  entity: Entity;
@@ -6675,6 +7167,15 @@ export declare interface PointerEventsSystem {
6675
7167
  * @param opts - Opts to trigger Feedback and Button
6676
7168
  */
6677
7169
  onPointerDown(entity: Entity, cb: EventSystemCallback, opts?: Partial<EventSystemOptions>): void;
7170
+ /**
7171
+ * @public
7172
+ * Execute callbacks when the user releases one of the InputButtons pointing at the entity
7173
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
7174
+ */
7175
+ onPointerUp(pointerData: {
7176
+ entity: Entity;
7177
+ optsList: EventSystemOptionsCallback[];
7178
+ }): void;
6678
7179
  /**
6679
7180
  * @public
6680
7181
  * Execute callback when the user releases the InputButton pointing at the entity
@@ -6712,6 +7213,64 @@ export declare interface PointerEventsSystem {
6712
7213
  entity: Entity;
6713
7214
  opts?: Partial<EventSystemOptions>;
6714
7215
  }, cb: EventSystemCallback): void;
7216
+ /**
7217
+ * @public
7218
+ * Execute callbacks when the user drags the pointer from inside the entity
7219
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
7220
+ */
7221
+ onPointerDrag(pointerData: {
7222
+ entity: Entity;
7223
+ optsList: EventSystemOptionsCallback[];
7224
+ }): void;
7225
+ /**
7226
+ * @public
7227
+ * Execute callback when the user clicks and drags the pointer from inside the entity
7228
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
7229
+ * @param cb - Function to execute when click fires
7230
+ */
7231
+ onPointerDrag(pointerData: {
7232
+ entity: Entity;
7233
+ opts?: Partial<EventSystemOptions>;
7234
+ }, cb: EventSystemCallback): void;
7235
+ /**
7236
+ * @public
7237
+ * Execute callbacks when the user drags the pointer from inside the entity, locking the cursor in place.
7238
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
7239
+ */
7240
+ onPointerDragLocked(pointerData: {
7241
+ entity: Entity;
7242
+ optsList: EventSystemOptionsCallback[];
7243
+ }): void;
7244
+ /**
7245
+ * @public
7246
+ * Execute callback when the user clicks and drags the pointer from inside the entity,
7247
+ * locking the cursor in place
7248
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
7249
+ * @param cb - Function to execute when click fires
7250
+ */
7251
+ onPointerDragLocked(pointerData: {
7252
+ entity: Entity;
7253
+ opts?: Partial<EventSystemOptions>;
7254
+ }, cb: EventSystemCallback): void;
7255
+ /**
7256
+ * @public
7257
+ * Execute callbacks when the user releases a button after a drag
7258
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
7259
+ */
7260
+ onPointerDragEnd(pointerData: {
7261
+ entity: Entity;
7262
+ optsList: EventSystemOptionsCallback[];
7263
+ }): void;
7264
+ /**
7265
+ * @public
7266
+ * Execute callback when the user releases the button after a drag
7267
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
7268
+ * @param cb - Function to execute when click fires
7269
+ */
7270
+ onPointerDragEnd(pointerData: {
7271
+ entity: Entity;
7272
+ opts?: Partial<EventSystemOptions>;
7273
+ }, cb: EventSystemCallback): void;
6715
7274
  }
6716
7275
 
6717
7276
  /**
@@ -6728,7 +7287,10 @@ export declare const enum PointerEventType {
6728
7287
  PET_UP = 0,
6729
7288
  PET_DOWN = 1,
6730
7289
  PET_HOVER_ENTER = 2,
6731
- PET_HOVER_LEAVE = 3
7290
+ PET_HOVER_LEAVE = 3,
7291
+ PET_DRAG_LOCKED = 4,
7292
+ PET_DRAG = 5,
7293
+ PET_DRAG_END = 6
6732
7294
  }
6733
7295
 
6734
7296
  /**
@@ -6759,7 +7321,10 @@ export declare const enum PointerType {
6759
7321
  /** POT_NONE - No pointer input */
6760
7322
  POT_NONE = 0,
6761
7323
  /** POT_MOUSE - Traditional mouse input */
6762
- POT_MOUSE = 1
7324
+ POT_MOUSE = 1,
7325
+ POT_PAD = 2,
7326
+ POT_TOUCH = 3,
7327
+ POT_WAND = 4
6763
7328
  }
6764
7329
 
6765
7330
  /**
@@ -7362,6 +7927,11 @@ export declare interface ReactBasedUiSystem {
7362
7927
  * Set the main UI renderer. Optional virtual size defines the global UI scale factor.
7363
7928
  */
7364
7929
  setUiRenderer(ui: UiComponent, options?: UiRendererOptions): void;
7930
+ /**
7931
+ * Set a texture renderer for a specific entity.
7932
+ * @deprecated Use addUiRenderer instead
7933
+ */
7934
+ setTextureRenderer(entity: Entity, ui: UiComponent): void;
7365
7935
  /**
7366
7936
  * Add a UI renderer associated with an entity. The UI will be automatically cleaned up
7367
7937
  * when the entity is removed from the engine.
@@ -7945,6 +8515,43 @@ export declare namespace Schemas {
7945
8515
  }) => void;
7946
8516
  }
7947
8517
 
8518
+ /**
8519
+ * @public
8520
+ */
8521
+ export declare interface ScrollPositionValue {
8522
+ value?: {
8523
+ $case: "position";
8524
+ position: PBVector2;
8525
+ } | {
8526
+ $case: "reference";
8527
+ reference: string;
8528
+ } | undefined;
8529
+ }
8530
+
8531
+ /**
8532
+ * @public
8533
+ */
8534
+ export declare namespace ScrollPositionValue {
8535
+ export function encode(message: ScrollPositionValue, writer?: _m0.Writer): _m0.Writer;
8536
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): ScrollPositionValue;
8537
+ }
8538
+
8539
+ /**
8540
+ * @public
8541
+ * The scroll-visible determines if the scrollbars are shown when the scroll overflow is enabled
8542
+ */
8543
+ export declare type ScrollVisibleType = 'horizontal' | 'vertical' | 'both' | 'hidden';
8544
+
8545
+ /**
8546
+ * @public
8547
+ */
8548
+ export declare const enum ShowScrollBar {
8549
+ SSB_BOTH = 0,
8550
+ SSB_ONLY_VERTICAL = 1,
8551
+ SSB_ONLY_HORIZONTAL = 2,
8552
+ SSB_HIDDEN = 3
8553
+ }
8554
+
7948
8555
  /** @public */
7949
8556
  export declare const SkyboxTime: LastWriteWinElementSetComponentDefinition<PBSkyboxTime>;
7950
8557
 
@@ -8056,6 +8663,9 @@ export declare namespace Texture {
8056
8663
  export function decode(input: _m0.Reader | Uint8Array, length?: number): Texture;
8057
8664
  }
8058
8665
 
8666
+ /** @public */
8667
+ export declare const TextureCamera: LastWriteWinElementSetComponentDefinition<PBTextureCamera>;
8668
+
8059
8669
  /**
8060
8670
  * @public
8061
8671
  */
@@ -8166,6 +8776,9 @@ export declare interface TextureUnion {
8166
8776
  } | {
8167
8777
  $case: "videoTexture";
8168
8778
  videoTexture: VideoTexture;
8779
+ } | {
8780
+ $case: "uiTexture";
8781
+ uiTexture: UiCanvasTexture;
8169
8782
  } | undefined;
8170
8783
  }
8171
8784
 
@@ -8643,6 +9256,8 @@ export declare interface UiBackgroundProps {
8643
9256
  uvs?: number[];
8644
9257
  /** AvatarTexture for the background */
8645
9258
  avatarTexture?: UiAvatarTexture;
9259
+ /** VideoTexture for the background */
9260
+ videoTexture?: UiVideoTexture;
8646
9261
  /** Texture for the background */
8647
9262
  texture?: UiTexture;
8648
9263
  }
@@ -8662,9 +9277,31 @@ export declare interface UiButtonProps extends UiLabelProps, EntityPropTypes {
8662
9277
  disabled?: boolean;
8663
9278
  }
8664
9279
 
9280
+ /** @public */
9281
+ export declare const UiCanvas: LastWriteWinElementSetComponentDefinition<PBUiCanvas>;
9282
+
8665
9283
  /** @public */
8666
9284
  export declare const UiCanvasInformation: LastWriteWinElementSetComponentDefinition<PBUiCanvasInformation>;
8667
9285
 
9286
+ /**
9287
+ * @public
9288
+ */
9289
+ export declare interface UiCanvasTexture {
9290
+ uiCanvasEntity: number;
9291
+ /** default = TextureWrapMode.Clamp */
9292
+ wrapMode?: TextureWrapMode | undefined;
9293
+ /** default = FilterMode.Bilinear */
9294
+ filterMode?: TextureFilterMode | undefined;
9295
+ }
9296
+
9297
+ /**
9298
+ * @public
9299
+ */
9300
+ export declare namespace UiCanvasTexture {
9301
+ export function encode(message: UiCanvasTexture, writer?: _m0.Writer): _m0.Writer;
9302
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): UiCanvasTexture;
9303
+ }
9304
+
8668
9305
  /**
8669
9306
  * @public
8670
9307
  */
@@ -8734,6 +9371,10 @@ export declare interface UiLabelProps {
8734
9371
  textAlign?: TextAlignType | undefined;
8735
9372
  /** Label font type. @defaultValue 'sans-serif' */
8736
9373
  font?: UiFontType | undefined;
9374
+ /** Outline width of the text. @defaultValue 0 */
9375
+ outlineWidth?: number | undefined;
9376
+ /** Outline color of the text. @defaultValue `{ r: 0, g: 0, b: 0, a: 1 }` */
9377
+ outlineColor?: PBColor4 | undefined;
8737
9378
  /** Behaviour when text reached. @defaultValue 'wrap' */
8738
9379
  textWrap?: UiTextWrapType | undefined;
8739
9380
  }
@@ -8751,6 +9392,9 @@ export declare type UiRendererOptions = {
8751
9392
  virtualHeight: number;
8752
9393
  };
8753
9394
 
9395
+ /** @public */
9396
+ export declare const UiScrollResult: LastWriteWinElementSetComponentDefinition<PBUiScrollResult>;
9397
+
8754
9398
  /** @public */
8755
9399
  export declare const UiText: LastWriteWinElementSetComponentDefinition<PBUiText>;
8756
9400
 
@@ -8828,10 +9472,26 @@ export declare interface UiTransformProps {
8828
9472
  borderWidth?: Partial<Position> | PositionUnit;
8829
9473
  /** The opacity property sets the opacity level for an element, it's accumulated across children @defaultValue 1 */
8830
9474
  opacity?: number;
9475
+ /** A reference value to identify the element, default empty */
9476
+ elementId?: string;
9477
+ /** default position=(0,0) if it aplies, a vector or a reference-id */
9478
+ scrollPosition?: PBVector2 | string;
9479
+ /** default ShowScrollBar.SSB_BOTH */
9480
+ scrollVisible?: ScrollVisibleType;
8831
9481
  /** default 0 */
8832
9482
  zIndex?: number;
8833
9483
  }
8834
9484
 
9485
+ /**
9486
+ * Texture
9487
+ * @public
9488
+ */
9489
+ export declare interface UiVideoTexture {
9490
+ videoPlayerEntity: Entity;
9491
+ wrapMode?: TextureWrapType;
9492
+ filterMode?: TextureFilterType;
9493
+ }
9494
+
8835
9495
  /**
8836
9496
  * @public
8837
9497
  */