@dcl/playground-assets 7.8.22-16474081501.commit-e1567af → 7.8.22-16482785086.commit-b7d3158

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.
@@ -178,11 +178,31 @@ export declare const AvatarAttach: LastWriteWinElementSetComponentDefinition<PBA
178
178
  /** @public */
179
179
  export declare const AvatarBase: LastWriteWinElementSetComponentDefinition<PBAvatarBase>;
180
180
 
181
+ /**
182
+ * @public
183
+ */
184
+ export declare const enum AvatarControlType {
185
+ /** CCT_NONE - avatar cannot move */
186
+ CCT_NONE = 0,
187
+ /** CCT_RELATIVE - avatar moves relative to the camera origin */
188
+ CCT_RELATIVE = 1,
189
+ /** CCT_TANK - avatar moves like a tank: left/right rotate the player, forward/backward advance/retreat the player */
190
+ CCT_TANK = 2
191
+ }
192
+
181
193
  /** @public */
182
194
  export declare const AvatarEmoteCommand: GrowOnlyValueSetComponentDefinition<PBAvatarEmoteCommand>;
183
195
 
184
- /** @public */
185
- export declare const AvatarEquippedData: LastWriteWinElementSetComponentDefinition<PBAvatarEquippedData>;
196
+ export declare const AvatarEquippedData: AvatarEquippedDataComponentDefinitionExtended;
197
+
198
+ /**
199
+ * @public
200
+ */
201
+ export declare type AvatarEquippedDataComponentDefinitionExtended = LastWriteWinElementSetComponentDefinition<AvatarEquippedDataType>;
202
+
203
+ export declare type AvatarEquippedDataType = Omit<PBAvatarEquippedData, 'forceRender'> & {
204
+ forceRender?: string[] | undefined;
205
+ };
186
206
 
187
207
  /** @public */
188
208
  export declare const AvatarModifierArea: LastWriteWinElementSetComponentDefinition<PBAvatarModifierArea>;
@@ -198,8 +218,47 @@ export declare const enum AvatarModifierType {
198
218
  AMT_DISABLE_PASSPORTS = 1
199
219
  }
200
220
 
201
- /** @public */
202
- export declare const AvatarShape: LastWriteWinElementSetComponentDefinition<PBAvatarShape>;
221
+ /**
222
+ * @public
223
+ */
224
+ export declare interface AvatarMovementSettings {
225
+ controlMode?: AvatarControlType | undefined;
226
+ /** if not explicitly set, the following properties default to user's preference settings */
227
+ runSpeed?: number | undefined;
228
+ /** how fast the player gets up to speed or comes to rest. higher = more responsive */
229
+ friction?: number | undefined;
230
+ /** how fast the player accelerates vertically when not on a solid surface, in m/s. should normally be negative */
231
+ gravity?: number | undefined;
232
+ /** how high the player can jump, in meters. should normally be positive. gravity must have the same sign for jumping to be possible */
233
+ jumpHeight?: number | undefined;
234
+ /** max fall speed in m/s. should normally be negative */
235
+ maxFallSpeed?: number | undefined;
236
+ /** speed the player turns in tank mode, in radians/s */
237
+ turnSpeed?: number | undefined;
238
+ /** speed the player walks at, in m/s */
239
+ walkSpeed?: number | undefined;
240
+ /** 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 */
241
+ allowWeightedMovement?: boolean | undefined;
242
+ }
243
+
244
+ /**
245
+ * @public
246
+ */
247
+ export declare namespace AvatarMovementSettings {
248
+ export function encode(message: AvatarMovementSettings, writer?: _m0.Writer): _m0.Writer;
249
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): AvatarMovementSettings;
250
+ }
251
+
252
+ export declare const AvatarShape: AvatarShapeComponentDefinitionExtended;
253
+
254
+ /**
255
+ * @public
256
+ */
257
+ export declare type AvatarShapeComponentDefinitionExtended = LastWriteWinElementSetComponentDefinition<AvatarShapeType>;
258
+
259
+ export declare type AvatarShapeType = Omit<PBAvatarShape, 'forceRender'> & {
260
+ forceRender?: string[] | undefined;
261
+ };
203
262
 
204
263
  /**
205
264
  * @public
@@ -468,11 +527,19 @@ export declare interface ByteBuffer {
468
527
  }
469
528
 
470
529
  /**
471
- * Callback function to be triggered on a specified event
472
- * @public
530
+ * legacy Callback function
531
+ *
532
+ * @public @deprecated This type is no longer used in the sdk api, EventSystemCallback is
533
+ * used for listeners instead
473
534
  */
474
535
  export declare type Callback = () => void;
475
536
 
537
+ /** @public */
538
+ export declare const CameraLayer: LastWriteWinElementSetComponentDefinition<PBCameraLayer>;
539
+
540
+ /** @public */
541
+ export declare const CameraLayers: LastWriteWinElementSetComponentDefinition<PBCameraLayers>;
542
+
476
543
  /** @public */
477
544
  export declare const CameraMode: LastWriteWinElementSetComponentDefinition<PBCameraMode>;
478
545
 
@@ -530,6 +597,39 @@ export declare const enum CameraType {
530
597
 
531
598
  export declare type Children = ReactEcs.JSX.ReactNode;
532
599
 
600
+ /**
601
+ * @public
602
+ */
603
+ export declare interface CinematicSettings {
604
+ /** Entity that defines the cinematic camera transform. */
605
+ cameraEntity: number;
606
+ /**
607
+ * Position -> camera's position
608
+ * Rotation -> camera's direction
609
+ * scale.z -> zoom level
610
+ * scale.x and scale.y -> unused
611
+ */
612
+ allowManualRotation?: boolean | undefined;
613
+ /** how far the camera can rotate around the y-axis / look left/right, in radians. default unrestricted */
614
+ yawRange?: number | undefined;
615
+ /** how far the camera can rotate around the x-axis / look up-down, in radians. default unrestricted */
616
+ pitchRange?: number | undefined;
617
+ /** note: cameras can never look up/down further than Vec3::Y */
618
+ rollRange?: number | undefined;
619
+ /** minimum zoom level. must be greater than 0. defaults to the input zoom level */
620
+ zoomMin?: number | undefined;
621
+ /** maximum zoom level. must be greater than 0. defaults to the input zoom level */
622
+ zoomMax?: number | undefined;
623
+ }
624
+
625
+ /**
626
+ * @public
627
+ */
628
+ export declare namespace CinematicSettings {
629
+ export function encode(message: CinematicSettings, writer?: _m0.Writer): _m0.Writer;
630
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): CinematicSettings;
631
+ }
632
+
533
633
  /** ColliderLayer determines the kind of collision to detect, in OR-able bit flag form. */
534
634
  /**
535
635
  * @public
@@ -1303,13 +1403,18 @@ export declare const componentDefinitionByName: {
1303
1403
  "core::AvatarModifierArea": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBAvatarModifierArea>>;
1304
1404
  "core::AvatarShape": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBAvatarShape>>;
1305
1405
  "core::Billboard": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBBillboard>>;
1406
+ "core::CameraLayer": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraLayer>>;
1407
+ "core::CameraLayers": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraLayers>>;
1306
1408
  "core::CameraMode": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraMode>>;
1307
1409
  "core::CameraModeArea": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraModeArea>>;
1308
1410
  "core::EngineInfo": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBEngineInfo>>;
1411
+ "core::GlobalLight": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGlobalLight>>;
1309
1412
  "core::GltfContainer": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfContainer>>;
1310
1413
  "core::GltfContainerLoadingState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfContainerLoadingState>>;
1311
- "core::GltfNodeModifiers": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfNodeModifiers>>;
1414
+ "core::GltfNode": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfNode>>;
1415
+ "core::GltfNodeState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfNodeState>>;
1312
1416
  "core::InputModifier": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBInputModifier>>;
1417
+ "core::Light": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBLight>>;
1313
1418
  "core::MainCamera": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBMainCamera>>;
1314
1419
  "core::Material": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBMaterial>>;
1315
1420
  "core::MeshCollider": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBMeshCollider>>;
@@ -1323,17 +1428,20 @@ export declare const componentDefinitionByName: {
1323
1428
  "core::Raycast": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBRaycast>>;
1324
1429
  "core::RaycastResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBRaycastResult>>;
1325
1430
  "core::RealmInfo": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBRealmInfo>>;
1326
- "core::SkyboxTime": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBSkyboxTime>>;
1431
+ "core::Spotlight": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBSpotlight>>;
1327
1432
  "core::TextShape": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTextShape>>;
1433
+ "core::TextureCamera": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTextureCamera>>;
1328
1434
  "core::Tween": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTween>>;
1329
1435
  "core::TweenSequence": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTweenSequence>>;
1330
1436
  "core::TweenState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTweenState>>;
1331
1437
  "core::UiBackground": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiBackground>>;
1438
+ "core::UiCanvas": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiCanvas>>;
1332
1439
  "core::UiCanvasInformation": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiCanvasInformation>>;
1333
1440
  "core::UiDropdown": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiDropdown>>;
1334
1441
  "core::UiDropdownResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiDropdownResult>>;
1335
1442
  "core::UiInput": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiInput>>;
1336
1443
  "core::UiInputResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiInputResult>>;
1444
+ "core::UiScrollResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiScrollResult>>;
1337
1445
  "core::UiText": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiText>>;
1338
1446
  "core::UiTransform": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiTransform>>;
1339
1447
  "core::VideoEvent": GSetComponentGetter<GrowOnlyValueSetComponentDefinition<PBVideoEvent>>;
@@ -1900,10 +2008,18 @@ export declare type EntityComponents = {
1900
2008
  uiBackground: PBUiBackground;
1901
2009
  uiInput: PBUiInput;
1902
2010
  uiDropdown: PBUiDropdown;
1903
- onMouseDown: Callback;
1904
- onMouseUp: Callback;
1905
- onMouseEnter: Callback;
1906
- onMouseLeave: Callback;
2011
+ onMouseDown: EventSystemCallback;
2012
+ onMouseUp: EventSystemCallback;
2013
+ onMouseEnter: EventSystemCallback;
2014
+ onMouseLeave: EventSystemCallback;
2015
+ onMouseDrag: EventSystemCallback;
2016
+ onMouseDragLocked: EventSystemCallback;
2017
+ onMouseDragEnd: EventSystemCallback;
2018
+ onInputDown: MultiCallback;
2019
+ onInputUp: MultiCallback;
2020
+ onInputDrag: MultiCallback;
2021
+ onInputDragLocked: MultiCallback;
2022
+ onInputDragEnd: MultiCallback;
1907
2023
  };
1908
2024
 
1909
2025
  /** @public */
@@ -1981,6 +2097,13 @@ export declare type EventSystemOptions = {
1981
2097
  showHighlight?: boolean;
1982
2098
  };
1983
2099
 
2100
+ /**
2101
+ * @public
2102
+ */
2103
+ export declare type EventSystemOptionsCallback = EventSystemOptions & {
2104
+ cb: EventSystemCallback;
2105
+ };
2106
+
1984
2107
  /**
1985
2108
  * Excludes property keys from T where the property is assignable to U
1986
2109
  * @public
@@ -2055,6 +2178,9 @@ export declare type GlobalDirectionRaycastSystemOptions = {
2055
2178
  direction?: PBVector3;
2056
2179
  };
2057
2180
 
2181
+ /** @public */
2182
+ export declare const GlobalLight: LastWriteWinElementSetComponentDefinition<PBGlobalLight>;
2183
+
2058
2184
  export declare type GlobalTargetRaycastOptions = RaycastSystemOptions & GlobalTargetRaycastSystemOptions;
2059
2185
 
2060
2186
  export declare type GlobalTargetRaycastSystemOptions = {
@@ -2068,7 +2194,19 @@ export declare const GltfContainer: LastWriteWinElementSetComponentDefinition<PB
2068
2194
  export declare const GltfContainerLoadingState: LastWriteWinElementSetComponentDefinition<PBGltfContainerLoadingState>;
2069
2195
 
2070
2196
  /** @public */
2071
- export declare const GltfNodeModifiers: LastWriteWinElementSetComponentDefinition<PBGltfNodeModifiers>;
2197
+ export declare const GltfNode: LastWriteWinElementSetComponentDefinition<PBGltfNode>;
2198
+
2199
+ /** @public */
2200
+ export declare const GltfNodeState: LastWriteWinElementSetComponentDefinition<PBGltfNodeState>;
2201
+
2202
+ /**
2203
+ * @public
2204
+ */
2205
+ export declare const enum GltfNodeStateValue {
2206
+ GNSV_PENDING = 0,
2207
+ GNSV_FAILED = 1,
2208
+ GNSV_READY = 2
2209
+ }
2072
2210
 
2073
2211
  /**
2074
2212
  * @public
@@ -2408,6 +2546,12 @@ export declare type IInputSystem = {
2408
2546
  * @returns the input command info or undefined if there is no command in the last tick-update
2409
2547
  */
2410
2548
  getInputCommand: (inputAction: InputAction, pointerEventType: PointerEventType, entity?: Entity) => PBPointerEventsResult | null;
2549
+ /**
2550
+ * @public
2551
+ * Get an ordered iterator over events received within the current frame.
2552
+ * @returns the iterator
2553
+ */
2554
+ getInputCommands: () => Generator<PBPointerEventsResult>;
2411
2555
  };
2412
2556
 
2413
2557
  /**
@@ -2671,19 +2815,38 @@ export declare interface LastWriteWinElementSetComponentDefinition<T> extends Ba
2671
2815
  getOrCreateMutable(entity: Entity, initialValue?: T): T;
2672
2816
  }
2673
2817
 
2818
+ /** @public */
2819
+ export declare const Light: LastWriteWinElementSetComponentDefinition<PBLight>;
2820
+
2674
2821
  /**
2675
2822
  * User key event Listeners
2676
2823
  * @public
2677
2824
  */
2678
2825
  export declare type Listeners = {
2679
2826
  /** triggered on mouse down event */
2680
- onMouseDown?: Callback;
2827
+ onMouseDown?: EventSystemCallback;
2681
2828
  /** triggered on mouse up event */
2682
- onMouseUp?: Callback;
2829
+ onMouseUp?: EventSystemCallback;
2683
2830
  /** triggered on mouse hover event */
2684
- onMouseEnter?: Callback;
2831
+ onMouseEnter?: EventSystemCallback;
2685
2832
  /** triggered on mouse leave event */
2686
- onMouseLeave?: Callback;
2833
+ onMouseLeave?: EventSystemCallback;
2834
+ /** triggered on mouse drag event */
2835
+ onMouseDrag?: EventSystemCallback;
2836
+ /** triggered on mouse drag event */
2837
+ onMouseDragLocked?: EventSystemCallback;
2838
+ /** triggered on mouse drag event */
2839
+ onMouseDragEnd?: EventSystemCallback;
2840
+ /** triggered on input down event */
2841
+ onInputDown?: MultiCallback;
2842
+ /** triggered on input up event */
2843
+ onInputUp?: MultiCallback;
2844
+ /** triggered on input drag event */
2845
+ onInputDrag?: MultiCallback;
2846
+ /** triggered on input drag event */
2847
+ onInputDragLocked?: MultiCallback;
2848
+ /** triggered on input drag event */
2849
+ onInputDragEnd?: MultiCallback;
2687
2850
  };
2688
2851
 
2689
2852
  /**
@@ -3552,6 +3715,14 @@ export declare interface MeshColliderComponentDefinitionExtended extends LastWri
3552
3715
  * @param colliderMask - the set of layer where the collider reacts, default: Physics and Pointer
3553
3716
  */
3554
3717
  setSphere(entity: Entity, colliderLayers?: ColliderLayer | ColliderLayer[]): void;
3718
+ /**
3719
+ * @public
3720
+ * Set a gltf internal mesh in the MeshCollider component
3721
+ * @param entity - entity to create or replace the MeshRenderer component
3722
+ * @param source - the path to the gltf
3723
+ * @param meshName - the name of the mesh in the gltf
3724
+ */
3725
+ setGltfMesh(entity: Entity, source: string, meshName: string, colliderLayers?: ColliderLayer | ColliderLayer[]): void;
3555
3726
  }
3556
3727
 
3557
3728
  export declare const MeshRenderer: MeshRendererComponentDefinitionExtended;
@@ -3588,6 +3759,14 @@ export declare interface MeshRendererComponentDefinitionExtended extends LastWri
3588
3759
  * @param entity - entity to create or replace the MeshRenderer component
3589
3760
  */
3590
3761
  setSphere(entity: Entity): void;
3762
+ /**
3763
+ * @public
3764
+ * Set a gltf internal mesh in the MeshRenderer component
3765
+ * @param entity - entity to create or replace the MeshRenderer component
3766
+ * @param source - the path to the gltf
3767
+ * @param meshName - the name of the mesh in the gltf
3768
+ */
3769
+ setGltfMesh(entity: Entity, source: string, meshName: string): void;
3591
3770
  }
3592
3771
 
3593
3772
  /* Excluded from this release type: MessageBus */
@@ -3609,6 +3788,19 @@ export declare namespace Move {
3609
3788
  export function decode(input: _m0.Reader | Uint8Array, length?: number): Move;
3610
3789
  }
3611
3790
 
3791
+ /**
3792
+ * a record object mapping `InputAction`s to functions.
3793
+ *
3794
+ * @example
3795
+ * onInputDown={{
3796
+ * [InputAction.IA_PRIMARY]: (eventData) => { console.log("primary") },
3797
+ * [InputAction.IA_SECONDARY]: () => { console.log("secondary") },
3798
+ * }}
3799
+ *
3800
+ * @public
3801
+ */
3802
+ export declare type MultiCallback = Partial<Record<InputAction, EventSystemCallback>>;
3803
+
3612
3804
  export declare const Name: NameComponent;
3613
3805
 
3614
3806
  export declare type NameComponent = LastWriteWinElementSetComponentDefinition<NameType>;
@@ -3981,6 +4173,25 @@ export declare const onVideoEvent: Observable<{
3981
4173
  totalVideoLength: number;
3982
4174
  }>;
3983
4175
 
4176
+ /**
4177
+ * @public
4178
+ */
4179
+ export declare interface Orthographic {
4180
+ /**
4181
+ * vertical extent of the visible range in meters
4182
+ * defaults to 4m
4183
+ */
4184
+ verticalRange?: number | undefined;
4185
+ }
4186
+
4187
+ /**
4188
+ * @public
4189
+ */
4190
+ export declare namespace Orthographic {
4191
+ export function encode(message: Orthographic, writer?: _m0.Writer): _m0.Writer;
4192
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): Orthographic;
4193
+ }
4194
+
3984
4195
  /**
3985
4196
  * @public
3986
4197
  * The overflow property controls what happens to content that is too big to fit into an area
@@ -4207,6 +4418,8 @@ export declare namespace PBAvatarEmoteCommand {
4207
4418
  export declare interface PBAvatarEquippedData {
4208
4419
  wearableUrns: string[];
4209
4420
  emoteUrns: string[];
4421
+ /** slots that will render even if hidden */
4422
+ forceRender: string[];
4210
4423
  }
4211
4424
 
4212
4425
  /**
@@ -4241,6 +4454,9 @@ export declare interface PBAvatarModifierArea {
4241
4454
  excludeIds: string[];
4242
4455
  /** list of modifiers to apply */
4243
4456
  modifiers: AvatarModifierType[];
4457
+ movementSettings?: AvatarMovementSettings | undefined;
4458
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
4459
+ useColliderRange?: boolean | undefined;
4244
4460
  }
4245
4461
 
4246
4462
  /**
@@ -4297,6 +4513,8 @@ export declare interface PBAvatarShape {
4297
4513
  wearables: string[];
4298
4514
  /** available emotes (default empty) */
4299
4515
  emotes: string[];
4516
+ /** slots that will render even if hidden */
4517
+ forceRender: string[];
4300
4518
  }
4301
4519
 
4302
4520
  /**
@@ -4331,6 +4549,51 @@ export declare namespace PBBillboard {
4331
4549
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBBillboard;
4332
4550
  }
4333
4551
 
4552
+ /**
4553
+ * @public
4554
+ */
4555
+ export declare interface PBCameraLayer {
4556
+ /**
4557
+ * layer to which these settings apply. must be > 0
4558
+ * Layer 0 is the default "real world" layer viewed by the player and cannot be modified.
4559
+ */
4560
+ layer: number;
4561
+ /** should the sun light affect this layer? default false */
4562
+ directionalLight?: boolean | undefined;
4563
+ /** should this layer show player avatars? default false */
4564
+ showAvatars?: boolean | undefined;
4565
+ /** should this layer show the sky? default false */
4566
+ showSkybox?: boolean | undefined;
4567
+ /** should this layer show distance fog? default false */
4568
+ showFog?: boolean | undefined;
4569
+ /** ambient light overrides for this layer. default -> use same as main camera */
4570
+ ambientColorOverride?: PBColor3 | undefined;
4571
+ ambientBrightnessOverride?: number | undefined;
4572
+ }
4573
+
4574
+ /**
4575
+ * @public
4576
+ */
4577
+ export declare namespace PBCameraLayer {
4578
+ export function encode(message: PBCameraLayer, writer?: _m0.Writer): _m0.Writer;
4579
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBCameraLayer;
4580
+ }
4581
+
4582
+ /**
4583
+ * @public
4584
+ */
4585
+ export declare interface PBCameraLayers {
4586
+ layers: number[];
4587
+ }
4588
+
4589
+ /**
4590
+ * @public
4591
+ */
4592
+ export declare namespace PBCameraLayers {
4593
+ export function encode(message: PBCameraLayers, writer?: _m0.Writer): _m0.Writer;
4594
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBCameraLayers;
4595
+ }
4596
+
4334
4597
  /**
4335
4598
  * The CameraMode component can be used to determine whether the player is using a first-person o
4336
4599
  * third-person view.
@@ -4353,7 +4616,7 @@ export declare namespace PBCameraMode {
4353
4616
 
4354
4617
  /**
4355
4618
  * The CameraModeArea component can be attached to an Entity to define a region of space where
4356
- * the player's camera mode (1st-person or 3rd-person) is overridden.
4619
+ * the player's camera mode (1st-person, 3rd-person or cinematic) is overridden.
4357
4620
  *
4358
4621
  * The Entity's Transform position determines the center-point of the region, while its size is
4359
4622
  * given as a vector in the `area` property below. The Transform rotation is applied, but the scale
@@ -4363,6 +4626,8 @@ export declare namespace PBCameraMode {
4363
4626
  *
4364
4627
  * Note that, while commonly used to delineate a 2D area in a scene (hence the name), the region
4365
4628
  * is actually a 3D volume.
4629
+ *
4630
+ * When mode is set to CtCinematic, the cinematic_settings field must also be provided.
4366
4631
  */
4367
4632
  /**
4368
4633
  * @public
@@ -4372,6 +4637,9 @@ export declare interface PBCameraModeArea {
4372
4637
  area: PBVector3 | undefined;
4373
4638
  /** the camera mode to enforce */
4374
4639
  mode: CameraType;
4640
+ cinematicSettings?: CinematicSettings | undefined;
4641
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
4642
+ useColliderRange?: boolean | undefined;
4375
4643
  }
4376
4644
 
4377
4645
  /**
@@ -4443,6 +4711,39 @@ export declare namespace PBEngineInfo {
4443
4711
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBEngineInfo;
4444
4712
  }
4445
4713
 
4714
+ /**
4715
+ * defines the global scene light settings. must be added to the scene root.
4716
+ * to control sunlight color, intensity, shadows etc, you can also add a PBLight to the scene root.
4717
+ */
4718
+ /**
4719
+ * @public
4720
+ */
4721
+ export declare interface PBGlobalLight {
4722
+ /**
4723
+ * the direction the directional light shines in.
4724
+ * default depends on time of day and explorer implementation
4725
+ */
4726
+ direction?: PBVector3 | undefined;
4727
+ /**
4728
+ * ambient light color
4729
+ * default: White
4730
+ */
4731
+ ambientColor?: PBColor3 | undefined;
4732
+ /**
4733
+ * ambient light intensity. the explorer default ambient brightness is multiplied by this non-physical quantity.
4734
+ * default 1
4735
+ */
4736
+ ambientBrightness?: number | undefined;
4737
+ }
4738
+
4739
+ /**
4740
+ * @public
4741
+ */
4742
+ export declare namespace PBGlobalLight {
4743
+ export function encode(message: PBGlobalLight, writer?: _m0.Writer): _m0.Writer;
4744
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGlobalLight;
4745
+ }
4746
+
4446
4747
  /**
4447
4748
  * GltfContainer loads a GLTF file (and any additional files packaged inside) attached to an Entity.
4448
4749
  *
@@ -4478,6 +4779,25 @@ export declare namespace PBGltfContainer {
4478
4779
  */
4479
4780
  export declare interface PBGltfContainerLoadingState {
4480
4781
  currentState: LoadingState;
4782
+ /** all node paths in the gltf, which can be used with a GltfNode to inspect and modify the gltf contents */
4783
+ nodePaths: string[];
4784
+ /** all meshes in the gltf. unnamed meshes will be auto-assigned a name of the form `MeshX` or `MeshX/PrimitiveY` */
4785
+ meshNames: string[];
4786
+ /**
4787
+ * where X is the mesh index and Y is the primitive index (and there is more than 1 primitive). note this may
4788
+ * conflict with manually named meshes - to avoid any issues make sure all your meshes are explicitly named.
4789
+ */
4790
+ materialNames: string[];
4791
+ /**
4792
+ * X is the material index. note this may conflict with manually named materials - to avoid any issues make
4793
+ * sure all your materials are explicitly named.
4794
+ */
4795
+ skinNames: string[];
4796
+ /**
4797
+ * X is the skin index. note this may conflict with manually named skins - to avoid any issues make sure all
4798
+ * your skins are explicitly named.
4799
+ */
4800
+ animationNames: string[];
4481
4801
  }
4482
4802
 
4483
4803
  /**
@@ -4489,48 +4809,74 @@ export declare namespace PBGltfContainerLoadingState {
4489
4809
  }
4490
4810
 
4491
4811
  /**
4492
- * GltfNodeModifiers component is to be used attached to entities that have the GltfContainer component.
4812
+ * a GltfNode links a scene entity with a node from within a gltf, allowing the scene to inspect it or modify it.
4813
+ * This component must be added to a direct child of an entity with a PBGltfContainer component, or
4814
+ * to a direct child of another entity with a GltfNode component, and the referenced gltf node must be a descendent of the gltf node
4815
+ * in the parent.
4816
+ * The name must match the path of one of the nodes within the Gltf. These are available on the GltfContainerLoadingState component.
4817
+ *
4818
+ * The renderer will attach a PBGltfNodeState to the entity describing the state. Once the state is `GNS_READY`,
4819
+ * - the `Transform` will be updated to match the position of the node within the gltf (relative to the gltf root, or the parent node),
4820
+ * - a `MeshRenderer` with a GltfMesh mesh type will be added (if the gltf node has a mesh).
4821
+ * - a `MeshCollider` with a GltfMesh mesh type will be added (if the gltf node has a collider).
4822
+ * - a `Material` component including a GltfMaterial reference will be added (if the gltf node has a material).
4493
4823
  *
4494
- * This allows to override either the Material or the Casting Shadows behaviour of the target GLTF Node.
4824
+ * After creation, if an animation moves the node, the `Transform` will be updated.
4495
4825
  *
4496
- * * If the 'path' of the first modifier in the collection is an empty string: the configuration will
4497
- * affect all of the GLTF Nodes (as a global modifier).
4498
- * * Otherwise, for the modifiers whose 'path' is found in the GLTF hierarchy, the modifier will affect only
4499
- * the target Nodes.
4826
+ * From the scene, you can modify various components to alter the gltf node:
4827
+ * - modifying the `Transform` position/rotation/scale will move the node. The position is interpreted relative to the gltf root (or parent node),
4828
+ * regardless of any intermediate gltf node hierarchy.
4829
+ * If an animation is playing, the animation takes priority and the scene entity's position will be updated to match the animation.
4830
+ * - `Visibility` can be added to hide or show the node and it's children in the gltf hierarchy.
4831
+ * - `MeshRenderer` can be added/modified/removed to create/modify/remove a mesh on the node.
4832
+ * - `MeshCollider` can be added/modified/removed to create/modify/remove a collider on the node.
4833
+ * - `Material` can be added or modified to change the material properties. If the gltf node has a material, the original material will be
4834
+ * 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
4835
+ * PBMaterial will be maintained.
4836
+ *
4837
+ * The scene can add additional entities as children to the gltf node, but structural modifications of the gltf are not possible:
4838
+ * - changing the scene hierarchy will not change the gltf node hierarchy. Moving the entity out of the gltf will sever the link and
4839
+ * change the state to `GNS_FAILED`.
4840
+ * - deleting the scene entity will not delete the gltf node.
4841
+ *
4842
+ * Removing the GltfNode will revert any changes to the original gltf. If the GltfNode component is removed and the mesh/collider/material
4843
+ * are not removed, this will result in a duplication of these components as the previously-linked entity will retain it's components and
4844
+ * the gltf node will also be displayed.
4500
4845
  */
4501
4846
  /**
4502
4847
  * @public
4503
4848
  */
4504
- export declare interface PBGltfNodeModifiers {
4505
- modifiers: PBGltfNodeModifiers_GltfNodeModifier[];
4849
+ export declare interface PBGltfNode {
4850
+ /** the path of the target node in the Gltf. */
4851
+ path: string;
4506
4852
  }
4507
4853
 
4508
4854
  /**
4509
4855
  * @public
4510
4856
  */
4511
- export declare namespace PBGltfNodeModifiers {
4512
- export function encode(message: PBGltfNodeModifiers, writer?: _m0.Writer): _m0.Writer;
4513
- export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNodeModifiers;
4857
+ export declare namespace PBGltfNode {
4858
+ export function encode(message: PBGltfNode, writer?: _m0.Writer): _m0.Writer;
4859
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNode;
4514
4860
  }
4515
4861
 
4862
+ /**
4863
+ * The state of a linked gltf node.
4864
+ * If the state is GNSV_FAILED, the renderer may describe the failure in the error string.
4865
+ */
4516
4866
  /**
4517
4867
  * @public
4518
4868
  */
4519
- export declare interface PBGltfNodeModifiers_GltfNodeModifier {
4520
- /** The GLTF hierarchy path of the target Node to be affected */
4521
- path: string;
4522
- /** The casting shadows enabled override */
4523
- castShadows?: boolean | undefined;
4524
- /** The Material that will be overridden on the target Node */
4525
- material?: PBMaterial | undefined;
4869
+ export declare interface PBGltfNodeState {
4870
+ state: GltfNodeStateValue;
4871
+ error?: string | undefined;
4526
4872
  }
4527
4873
 
4528
4874
  /**
4529
4875
  * @public
4530
4876
  */
4531
- export declare namespace PBGltfNodeModifiers_GltfNodeModifier {
4532
- export function encode(message: PBGltfNodeModifiers_GltfNodeModifier, writer?: _m0.Writer): _m0.Writer;
4533
- export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNodeModifiers_GltfNodeModifier;
4877
+ export declare namespace PBGltfNodeState {
4878
+ export function encode(message: PBGltfNodeState, writer?: _m0.Writer): _m0.Writer;
4879
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNodeState;
4534
4880
  }
4535
4881
 
4536
4882
  /**
@@ -4572,6 +4918,62 @@ export declare namespace PBInputModifier_StandardInput {
4572
4918
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBInputModifier_StandardInput;
4573
4919
  }
4574
4920
 
4921
+ /**
4922
+ * defines a light source.
4923
+ * the world has a default directional light (like sunlight) which can be overridden by adding the light component to the scene root.
4924
+ * a PBGlobalLight component can also be added to the root to control the directional light direction.
4925
+ * point lights (lightbulbs) or spotlights can be created by attaching the light component to non-root entities.
4926
+ */
4927
+ /**
4928
+ * @public
4929
+ */
4930
+ export declare interface PBLight {
4931
+ /**
4932
+ * whether the light is on
4933
+ * default true
4934
+ */
4935
+ enabled?: boolean | undefined;
4936
+ /**
4937
+ * light brightness in lux (lumens/m^2).
4938
+ *
4939
+ * for global directional light, this applies as a constant value at all surfaces and distances (though the effect on the surface still depends on incidence angle).
4940
+ * the default global light illuminance varies from 400 (sunrise/sunset) to 10,000 (midday).
4941
+ * for typical values, see https://en.wikipedia.org/wiki/Lux#Illuminance
4942
+ *
4943
+ * for point and spot lights, this is the lumens/m^2 at 1m distance from the light. to transform from raw lumens,
4944
+ * divide lumens by ~12 (4*pi).
4945
+ * e.g. a 100w household bulb with 1200 lumens would have an illuminance of ~100.
4946
+ * a lighthouse bulb with 200,000 lumens would have an illuminance of ~15,000 (ignoring beam reflections)
4947
+ *
4948
+ * default
4949
+ * for point/spotlights: 10,000
4950
+ * for global directional light: depends on explorer implementation. may vary on light direction, time of day, etc
4951
+ */
4952
+ illuminance?: number | undefined;
4953
+ /**
4954
+ * whether the light should cast shadows.
4955
+ * note: even when set to true the engine may not display shadows, or may only show shadows for a limited number
4956
+ * of lights depending on the implementation, platform, and user settings.
4957
+ * default
4958
+ * for point/spotlights: false / off
4959
+ * for global directional light: true / on
4960
+ */
4961
+ shadows?: boolean | undefined;
4962
+ /**
4963
+ * light color
4964
+ * default White
4965
+ */
4966
+ color?: PBColor3 | undefined;
4967
+ }
4968
+
4969
+ /**
4970
+ * @public
4971
+ */
4972
+ export declare namespace PBLight {
4973
+ export function encode(message: PBLight, writer?: _m0.Writer): _m0.Writer;
4974
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBLight;
4975
+ }
4976
+
4575
4977
  /**
4576
4978
  * PBMainCamera.virtualCameraEntity defines which VirtualCamera entity is active at the moment.
4577
4979
  * This component may hold 'repeated common.CameraTransition' transitionOverrides in the future
@@ -4603,6 +5005,14 @@ export declare interface PBMaterial {
4603
5005
  $case: "pbr";
4604
5006
  pbr: PBMaterial_PbrMaterial;
4605
5007
  } | undefined;
5008
+ /**
5009
+ * A gltf material that may provide additional features not supported by the PbMaterial fields.
5010
+ * If both gltf and material fields are provided, the gltf will be used only for extended features not
5011
+ * supported by the PbMaterial.
5012
+ * If this is provided and the `material` field is not provided, the renderer will update the material
5013
+ * field with data that reflects the gltf material once it is loaded.
5014
+ */
5015
+ gltf?: PBMaterial_GltfMaterial | undefined;
4606
5016
  }
4607
5017
 
4608
5018
  /**
@@ -4613,6 +5023,22 @@ export declare namespace PBMaterial {
4613
5023
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial;
4614
5024
  }
4615
5025
 
5026
+ /**
5027
+ * @public
5028
+ */
5029
+ export declare interface PBMaterial_GltfMaterial {
5030
+ gltfSrc: string;
5031
+ name: string;
5032
+ }
5033
+
5034
+ /**
5035
+ * @public
5036
+ */
5037
+ export declare namespace PBMaterial_GltfMaterial {
5038
+ export function encode(message: PBMaterial_GltfMaterial, writer?: _m0.Writer): _m0.Writer;
5039
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial_GltfMaterial;
5040
+ }
5041
+
4616
5042
  /**
4617
5043
  * @public
4618
5044
  */
@@ -4709,6 +5135,9 @@ export declare interface PBMeshCollider {
4709
5135
  } | {
4710
5136
  $case: "plane";
4711
5137
  plane: PBMeshCollider_PlaneMesh;
5138
+ } | {
5139
+ $case: "gltf";
5140
+ gltf: PBMeshCollider_GltfMesh;
4712
5141
  } | undefined;
4713
5142
  }
4714
5143
 
@@ -4754,6 +5183,25 @@ export declare namespace PBMeshCollider_CylinderMesh {
4754
5183
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_CylinderMesh;
4755
5184
  }
4756
5185
 
5186
+ /** A collider constructed from a Gltf Mesh. */
5187
+ /**
5188
+ * @public
5189
+ */
5190
+ export declare interface PBMeshCollider_GltfMesh {
5191
+ /** the GLTF file path as listed in the scene's manifest. */
5192
+ gltfSrc: string;
5193
+ /** the name of the mesh asset */
5194
+ name: string;
5195
+ }
5196
+
5197
+ /**
5198
+ * @public
5199
+ */
5200
+ export declare namespace PBMeshCollider_GltfMesh {
5201
+ export function encode(message: PBMeshCollider_GltfMesh, writer?: _m0.Writer): _m0.Writer;
5202
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_GltfMesh;
5203
+ }
5204
+
4757
5205
  /** PlaneMesh is a 2D rectangle described by the Entity's Transform. */
4758
5206
  /**
4759
5207
  * @public
@@ -4786,13 +5234,11 @@ export declare namespace PBMeshCollider_SphereMesh {
4786
5234
 
4787
5235
  /**
4788
5236
  * The MeshRenderer component renders a basic geometric shape for an Entity. It can be a cube, a
4789
- * plane, a sphere or a cylinder.
5237
+ * plane, a sphere, a cylinder, or a Gltf mesh.
4790
5238
  *
4791
5239
  * The cube and plane variants can include a UV texture mapping, so specific areas of a material
4792
5240
  * texture are rendered on different faces of the shape. They are serialized as a sequence of 2D
4793
5241
  * `float` coordinates, one for each corner of each side of each face.
4794
- *
4795
- * More complex shapes require the use of a `GltfContainer` component.
4796
5242
  */
4797
5243
  /**
4798
5244
  * @public
@@ -4810,6 +5256,9 @@ export declare interface PBMeshRenderer {
4810
5256
  } | {
4811
5257
  $case: "plane";
4812
5258
  plane: PBMeshRenderer_PlaneMesh;
5259
+ } | {
5260
+ $case: "gltf";
5261
+ gltf: PBMeshRenderer_GltfMesh;
4813
5262
  } | undefined;
4814
5263
  }
4815
5264
 
@@ -4857,6 +5306,25 @@ export declare namespace PBMeshRenderer_CylinderMesh {
4857
5306
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_CylinderMesh;
4858
5307
  }
4859
5308
 
5309
+ /** A mesh from a Gltf. */
5310
+ /**
5311
+ * @public
5312
+ */
5313
+ export declare interface PBMeshRenderer_GltfMesh {
5314
+ /** the GLTF file path as listed in the scene's manifest. */
5315
+ gltfSrc: string;
5316
+ /** the name of the mesh asset */
5317
+ name: string;
5318
+ }
5319
+
5320
+ /**
5321
+ * @public
5322
+ */
5323
+ export declare namespace PBMeshRenderer_GltfMesh {
5324
+ export function encode(message: PBMeshRenderer_GltfMesh, writer?: _m0.Writer): _m0.Writer;
5325
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_GltfMesh;
5326
+ }
5327
+
4860
5328
  /** PlaneMesh renders a 2D rectangular shape. */
4861
5329
  /**
4862
5330
  * @public
@@ -5105,7 +5573,10 @@ export declare interface PBPrimaryPointerInfo {
5105
5573
  screenCoordinates?: PBVector2 | undefined;
5106
5574
  /** Movement since last frame (pixels) */
5107
5575
  screenDelta?: PBVector2 | undefined;
5108
- /** Direction vector for 3D ray casting */
5576
+ /**
5577
+ * ray direction that can be used with the primary camera origin for
5578
+ * raycasting from the cursor into the world
5579
+ */
5109
5580
  worldRayDirection?: PBVector3 | undefined;
5110
5581
  }
5111
5582
 
@@ -5246,25 +5717,36 @@ export declare namespace PBRealmInfo {
5246
5717
  }
5247
5718
 
5248
5719
  /**
5249
- * The SkyboxTime component allows controlling the time of day for the skybox,
5250
- * affecting the lighting and appearance of the sky in the scene.
5720
+ * defines a spotlight.
5721
+ * spotlights are point lights that emit light only in a cone around the transform's forward direction.
5722
+ * add this component together with the PBLight component to transform a point light into a spotlight.
5723
+ * note that spotlights do not model any internal reflections / focus, they only restrict the area of effect.
5724
+ * so for e.g. a torch beam, the bulb illuminance should be multiplied by the solid angle.
5725
+ * a typical torch with a beam width of 15 degrees would use outer angle of 0.15 (7.5 degrees in radians),
5726
+ * and an illuminance approximately equal to the bulb's lumens, e.g. 1200.
5251
5727
  */
5252
5728
  /**
5253
5729
  * @public
5254
5730
  */
5255
- export declare interface PBSkyboxTime {
5256
- /** fixed time of day, represented as a number of seconds since the start of the day, where 0 is 00:00hs, 43200 is 12:00hs and 86400 is 24:00hs */
5257
- fixedTime: number;
5258
- /** default = TransitionMode.TM_FORWARD, controls the direction of time transitions */
5259
- transitionMode?: TransitionMode | undefined;
5731
+ export declare interface PBSpotlight {
5732
+ /**
5733
+ * the cone radius in radians. distance away from forward in which the light is visible.
5734
+ * for a torch a value around 0.15 is appropriate.
5735
+ */
5736
+ angle: number;
5737
+ /**
5738
+ * optional angle at which the light is brightest. should be <= outer angle.
5739
+ * if specified, the light will fall off smoothly between `inner_angle` and `angle`.
5740
+ */
5741
+ innerAngle?: number | undefined;
5260
5742
  }
5261
5743
 
5262
5744
  /**
5263
5745
  * @public
5264
5746
  */
5265
- export declare namespace PBSkyboxTime {
5266
- export function encode(message: PBSkyboxTime, writer?: _m0.Writer): _m0.Writer;
5267
- export function decode(input: _m0.Reader | Uint8Array, length?: number): PBSkyboxTime;
5747
+ export declare namespace PBSpotlight {
5748
+ export function encode(message: PBSpotlight, writer?: _m0.Writer): _m0.Writer;
5749
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBSpotlight;
5268
5750
  }
5269
5751
 
5270
5752
  /**
@@ -5331,6 +5813,46 @@ export declare namespace PBTextShape {
5331
5813
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBTextShape;
5332
5814
  }
5333
5815
 
5816
+ /**
5817
+ * @public
5818
+ */
5819
+ export declare interface PBTextureCamera {
5820
+ /** rendered texture width */
5821
+ width?: number | undefined;
5822
+ /** rendered texture height */
5823
+ height?: number | undefined;
5824
+ /**
5825
+ * which layer of entities to render. entity layers can be specified by adding PBCameraLayers to target entities.
5826
+ * defaults to 0
5827
+ */
5828
+ layer?: number | undefined;
5829
+ /** default black */
5830
+ clearColor?: PBColor4 | undefined;
5831
+ /** default infinity */
5832
+ farPlane?: number | undefined;
5833
+ mode?: {
5834
+ $case: "perspective";
5835
+ perspective: Perspective;
5836
+ } | {
5837
+ $case: "orthographic";
5838
+ orthographic: Orthographic;
5839
+ } | undefined;
5840
+ /**
5841
+ * controls whether this camera acts as a receiver for audio on sources with matching `PBCameraLayers`.
5842
+ * range: 0 (off) - 1 (full volume)
5843
+ * default: 0
5844
+ */
5845
+ volume?: number | undefined;
5846
+ }
5847
+
5848
+ /**
5849
+ * @public
5850
+ */
5851
+ export declare namespace PBTextureCamera {
5852
+ export function encode(message: PBTextureCamera, writer?: _m0.Writer): _m0.Writer;
5853
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBTextureCamera;
5854
+ }
5855
+
5334
5856
  /**
5335
5857
  * @public
5336
5858
  */
@@ -5420,6 +5942,25 @@ export declare namespace PBUiBackground {
5420
5942
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiBackground;
5421
5943
  }
5422
5944
 
5945
+ /** The UiCanvas component can be attached to a ui root entity to specify properties of the ui texture. */
5946
+ /**
5947
+ * @public
5948
+ */
5949
+ export declare interface PBUiCanvas {
5950
+ width: number;
5951
+ height: number;
5952
+ /** default = (0.0, 0.0, 0.0, 0.0) / transparent */
5953
+ color?: PBColor4 | undefined;
5954
+ }
5955
+
5956
+ /**
5957
+ * @public
5958
+ */
5959
+ export declare namespace PBUiCanvas {
5960
+ export function encode(message: PBUiCanvas, writer?: _m0.Writer): _m0.Writer;
5961
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiCanvas;
5962
+ }
5963
+
5423
5964
  /** This component is created by the renderer and used by the scenes to know the resolution of the UI canvas */
5424
5965
  /**
5425
5966
  * @public
@@ -5536,6 +6077,21 @@ export declare namespace PBUiInputResult {
5536
6077
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiInputResult;
5537
6078
  }
5538
6079
 
6080
+ /**
6081
+ * @public
6082
+ */
6083
+ export declare interface PBUiScrollResult {
6084
+ value: PBVector2 | undefined;
6085
+ }
6086
+
6087
+ /**
6088
+ * @public
6089
+ */
6090
+ export declare namespace PBUiScrollResult {
6091
+ export function encode(message: PBUiScrollResult, writer?: _m0.Writer): _m0.Writer;
6092
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiScrollResult;
6093
+ }
6094
+
5539
6095
  /**
5540
6096
  * @public
5541
6097
  */
@@ -5552,6 +6108,10 @@ export declare interface PBUiText {
5552
6108
  fontSize?: number | undefined;
5553
6109
  /** wrap text when the border is reached (default: TW_WRAP) */
5554
6110
  textWrap?: TextWrap | undefined;
6111
+ /** width of the outline (default: 0) */
6112
+ outlineWidth?: number | undefined;
6113
+ /** RGBA color of the outline (default: opaque black) */
6114
+ outlineColor?: PBColor4 | undefined;
5555
6115
  }
5556
6116
 
5557
6117
  /**
@@ -5679,6 +6239,12 @@ export declare interface PBUiTransform {
5679
6239
  borderRightColor?: PBColor4 | undefined;
5680
6240
  /** default: 1 */
5681
6241
  opacity?: number | undefined;
6242
+ /** reference for scroll_position. default empty */
6243
+ elementId?: string | undefined;
6244
+ /** default position=(0,0) */
6245
+ scrollPosition?: ScrollPositionValue | undefined;
6246
+ /** default ShowScrollBar.SSB_BOTH */
6247
+ scrollVisible?: ShowScrollBar | undefined;
5682
6248
  /** default: 0 — controls render stacking order. Higher values appear in front of lower values. */
5683
6249
  zIndex?: number | undefined;
5684
6250
  }
@@ -5810,6 +6376,25 @@ export declare namespace PBVisibilityComponent {
5810
6376
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBVisibilityComponent;
5811
6377
  }
5812
6378
 
6379
+ /**
6380
+ * @public
6381
+ */
6382
+ export declare interface Perspective {
6383
+ /**
6384
+ * vertical field of view in radians
6385
+ * defaults to pi/4 = 45 degrees
6386
+ */
6387
+ fieldOfView?: number | undefined;
6388
+ }
6389
+
6390
+ /**
6391
+ * @public
6392
+ */
6393
+ export declare namespace Perspective {
6394
+ export function encode(message: Perspective, writer?: _m0.Writer): _m0.Writer;
6395
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): Perspective;
6396
+ }
6397
+
5813
6398
  /**
5814
6399
  * Represens a plane by the equation ax + by + cz + d = 0
5815
6400
  * @public
@@ -5965,11 +6550,37 @@ export declare interface PointerEventsSystem {
5965
6550
  * @param entity - Entity where the callback was attached
5966
6551
  */
5967
6552
  removeOnPointerHoverLeave(entity: Entity): void;
6553
+ /**
6554
+ * @public
6555
+ * Remove the callback for onPointerDrag event
6556
+ * @param entity - Entity where the callback was attached
6557
+ */
6558
+ removeOnPointerDrag(entity: Entity): void;
6559
+ /**
6560
+ * @public
6561
+ * Remove the callback for onPointerDragLocked event
6562
+ * @param entity - Entity where the callback was attached
6563
+ */
6564
+ removeOnPointerDragLocked(entity: Entity): void;
6565
+ /**
6566
+ * @public
6567
+ * Remove the callback for onPointerDragEnd event
6568
+ * @param entity - Entity where the callback was attached
6569
+ */
6570
+ removeOnPointerDragEnd(entity: Entity): void;
6571
+ /**
6572
+ * @public
6573
+ * Execute callbacks when the user presses one of the InputButtons pointing at the entity
6574
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
6575
+ */
6576
+ onPointerDown(pointerData: {
6577
+ entity: Entity;
6578
+ optsList: EventSystemOptionsCallback[];
6579
+ }): void;
5968
6580
  /**
5969
6581
  * @public
5970
6582
  * Execute callback when the user press the InputButton pointing at the entity
5971
6583
  * @param pointerData - Entity to attach the callback, Opts to trigger Feedback and Button
5972
- * @param cb - Function to execute when click fires
5973
6584
  */
5974
6585
  onPointerDown(pointerData: {
5975
6586
  entity: Entity;
@@ -5982,6 +6593,15 @@ export declare interface PointerEventsSystem {
5982
6593
  * @param opts - Opts to trigger Feedback and Button
5983
6594
  */
5984
6595
  onPointerDown(entity: Entity, cb: EventSystemCallback, opts?: Partial<EventSystemOptions>): void;
6596
+ /**
6597
+ * @public
6598
+ * Execute callbacks when the user releases one of the InputButtons pointing at the entity
6599
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
6600
+ */
6601
+ onPointerUp(pointerData: {
6602
+ entity: Entity;
6603
+ optsList: EventSystemOptionsCallback[];
6604
+ }): void;
5985
6605
  /**
5986
6606
  * @public
5987
6607
  * Execute callback when the user releases the InputButton pointing at the entity
@@ -6019,6 +6639,64 @@ export declare interface PointerEventsSystem {
6019
6639
  entity: Entity;
6020
6640
  opts?: Partial<EventSystemOptions>;
6021
6641
  }, cb: EventSystemCallback): void;
6642
+ /**
6643
+ * @public
6644
+ * Execute callbacks when the user drags the pointer from inside the entity
6645
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
6646
+ */
6647
+ onPointerDrag(pointerData: {
6648
+ entity: Entity;
6649
+ optsList: EventSystemOptionsCallback[];
6650
+ }): void;
6651
+ /**
6652
+ * @public
6653
+ * Execute callback when the user clicks and drags the pointer from inside the entity
6654
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
6655
+ * @param cb - Function to execute when click fires
6656
+ */
6657
+ onPointerDrag(pointerData: {
6658
+ entity: Entity;
6659
+ opts?: Partial<EventSystemOptions>;
6660
+ }, cb: EventSystemCallback): void;
6661
+ /**
6662
+ * @public
6663
+ * Execute callbacks when the user drags the pointer from inside the entity, locking the cursor in place.
6664
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
6665
+ */
6666
+ onPointerDragLocked(pointerData: {
6667
+ entity: Entity;
6668
+ optsList: EventSystemOptionsCallback[];
6669
+ }): void;
6670
+ /**
6671
+ * @public
6672
+ * Execute callback when the user clicks and drags the pointer from inside the entity,
6673
+ * locking the cursor in place
6674
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
6675
+ * @param cb - Function to execute when click fires
6676
+ */
6677
+ onPointerDragLocked(pointerData: {
6678
+ entity: Entity;
6679
+ opts?: Partial<EventSystemOptions>;
6680
+ }, cb: EventSystemCallback): void;
6681
+ /**
6682
+ * @public
6683
+ * Execute callbacks when the user releases a button after a drag
6684
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
6685
+ */
6686
+ onPointerDragEnd(pointerData: {
6687
+ entity: Entity;
6688
+ optsList: EventSystemOptionsCallback[];
6689
+ }): void;
6690
+ /**
6691
+ * @public
6692
+ * Execute callback when the user releases the button after a drag
6693
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
6694
+ * @param cb - Function to execute when click fires
6695
+ */
6696
+ onPointerDragEnd(pointerData: {
6697
+ entity: Entity;
6698
+ opts?: Partial<EventSystemOptions>;
6699
+ }, cb: EventSystemCallback): void;
6022
6700
  }
6023
6701
 
6024
6702
  /**
@@ -6035,7 +6713,10 @@ export declare const enum PointerEventType {
6035
6713
  PET_UP = 0,
6036
6714
  PET_DOWN = 1,
6037
6715
  PET_HOVER_ENTER = 2,
6038
- PET_HOVER_LEAVE = 3
6716
+ PET_HOVER_LEAVE = 3,
6717
+ PET_DRAG_LOCKED = 4,
6718
+ PET_DRAG = 5,
6719
+ PET_DRAG_END = 6
6039
6720
  }
6040
6721
 
6041
6722
  /**
@@ -6066,7 +6747,10 @@ export declare const enum PointerType {
6066
6747
  /** POT_NONE - No pointer input */
6067
6748
  POT_NONE = 0,
6068
6749
  /** POT_MOUSE - Traditional mouse input */
6069
- POT_MOUSE = 1
6750
+ POT_MOUSE = 1,
6751
+ POT_PAD = 2,
6752
+ POT_TOUCH = 3,
6753
+ POT_WAND = 4
6070
6754
  }
6071
6755
 
6072
6756
  /**
@@ -6663,6 +7347,7 @@ export declare type RaycastSystemOptions = {
6663
7347
  export declare interface ReactBasedUiSystem {
6664
7348
  destroy(): void;
6665
7349
  setUiRenderer(ui: UiComponent): void;
7350
+ setTextureRenderer(entity: Entity, ui: UiComponent): void;
6666
7351
  }
6667
7352
 
6668
7353
  /**
@@ -7125,8 +7810,42 @@ export declare namespace Schemas {
7125
7810
  }) => void;
7126
7811
  }
7127
7812
 
7128
- /** @public */
7129
- export declare const SkyboxTime: LastWriteWinElementSetComponentDefinition<PBSkyboxTime>;
7813
+ /**
7814
+ * @public
7815
+ */
7816
+ export declare interface ScrollPositionValue {
7817
+ value?: {
7818
+ $case: "position";
7819
+ position: PBVector2;
7820
+ } | {
7821
+ $case: "reference";
7822
+ reference: string;
7823
+ } | undefined;
7824
+ }
7825
+
7826
+ /**
7827
+ * @public
7828
+ */
7829
+ export declare namespace ScrollPositionValue {
7830
+ export function encode(message: ScrollPositionValue, writer?: _m0.Writer): _m0.Writer;
7831
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): ScrollPositionValue;
7832
+ }
7833
+
7834
+ /**
7835
+ * @public
7836
+ * The scroll-visible determines if the scrollbars are shown when the scroll overflow is enabled
7837
+ */
7838
+ export declare type ScrollVisibleType = 'horizontal' | 'vertical' | 'both' | 'hidden';
7839
+
7840
+ /**
7841
+ * @public
7842
+ */
7843
+ export declare const enum ShowScrollBar {
7844
+ SSB_BOTH = 0,
7845
+ SSB_ONLY_VERTICAL = 1,
7846
+ SSB_ONLY_HORIZONTAL = 2,
7847
+ SSB_HIDDEN = 3
7848
+ }
7130
7849
 
7131
7850
  /**
7132
7851
  * @public
@@ -7135,6 +7854,9 @@ export declare interface Spec {
7135
7854
  [key: string]: ISchema;
7136
7855
  }
7137
7856
 
7857
+ /** @public */
7858
+ export declare const Spotlight: LastWriteWinElementSetComponentDefinition<PBSpotlight>;
7859
+
7138
7860
  /* Excluded from this release type: SyncComponents */
7139
7861
 
7140
7862
  /**
@@ -7204,6 +7926,9 @@ export declare namespace Texture {
7204
7926
  export function decode(input: _m0.Reader | Uint8Array, length?: number): Texture;
7205
7927
  }
7206
7928
 
7929
+ /** @public */
7930
+ export declare const TextureCamera: LastWriteWinElementSetComponentDefinition<PBTextureCamera>;
7931
+
7207
7932
  /**
7208
7933
  * @public
7209
7934
  */
@@ -7296,6 +8021,9 @@ export declare interface TextureUnion {
7296
8021
  } | {
7297
8022
  $case: "videoTexture";
7298
8023
  videoTexture: VideoTexture;
8024
+ } | {
8025
+ $case: "uiTexture";
8026
+ uiTexture: UiCanvasTexture;
7299
8027
  } | undefined;
7300
8028
  }
7301
8029
 
@@ -7389,17 +8117,6 @@ export declare type TransformType = {
7389
8117
  */
7390
8118
  export declare type TransformTypeWithOptionals = Partial<TransformType>;
7391
8119
 
7392
- /** Controls the direction for animated skybox transitions */
7393
- /**
7394
- * @public
7395
- */
7396
- export declare const enum TransitionMode {
7397
- /** TM_FORWARD - transitions forward (default) */
7398
- TM_FORWARD = 0,
7399
- /** TM_BACKWARD - transitions backward */
7400
- TM_BACKWARD = 1
7401
- }
7402
-
7403
8120
  /**
7404
8121
  * @public
7405
8122
  */
@@ -7514,6 +8231,8 @@ export declare interface UiBackgroundProps {
7514
8231
  uvs?: number[];
7515
8232
  /** AvatarTexture for the background */
7516
8233
  avatarTexture?: UiAvatarTexture;
8234
+ /** VideoTexture for the background */
8235
+ videoTexture?: UiVideoTexture;
7517
8236
  /** Texture for the background */
7518
8237
  texture?: UiTexture;
7519
8238
  }
@@ -7533,9 +8252,31 @@ export declare interface UiButtonProps extends UiLabelProps, EntityPropTypes {
7533
8252
  disabled?: boolean;
7534
8253
  }
7535
8254
 
8255
+ /** @public */
8256
+ export declare const UiCanvas: LastWriteWinElementSetComponentDefinition<PBUiCanvas>;
8257
+
7536
8258
  /** @public */
7537
8259
  export declare const UiCanvasInformation: LastWriteWinElementSetComponentDefinition<PBUiCanvasInformation>;
7538
8260
 
8261
+ /**
8262
+ * @public
8263
+ */
8264
+ export declare interface UiCanvasTexture {
8265
+ uiCanvasEntity: number;
8266
+ /** default = TextureWrapMode.Clamp */
8267
+ wrapMode?: TextureWrapMode | undefined;
8268
+ /** default = FilterMode.Bilinear */
8269
+ filterMode?: TextureFilterMode | undefined;
8270
+ }
8271
+
8272
+ /**
8273
+ * @public
8274
+ */
8275
+ export declare namespace UiCanvasTexture {
8276
+ export function encode(message: UiCanvasTexture, writer?: _m0.Writer): _m0.Writer;
8277
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): UiCanvasTexture;
8278
+ }
8279
+
7539
8280
  /**
7540
8281
  * @public
7541
8282
  */
@@ -7605,6 +8346,10 @@ export declare interface UiLabelProps {
7605
8346
  textAlign?: TextAlignType | undefined;
7606
8347
  /** Label font type. @defaultValue 'sans-serif' */
7607
8348
  font?: UiFontType | undefined;
8349
+ /** Outline width of the text. @defaultValue 0 */
8350
+ outlineWidth?: number | undefined;
8351
+ /** Outline color of the text. @defaultValue `{ r: 0, g: 0, b: 0, a: 1 }` */
8352
+ outlineColor?: PBColor4 | undefined;
7608
8353
  /** Behaviour when text reached. @defaultValue 'wrap' */
7609
8354
  textWrap?: UiTextWrapType | undefined;
7610
8355
  }
@@ -7614,6 +8359,9 @@ export declare interface UiLabelProps {
7614
8359
  */
7615
8360
  export declare type uint32 = number;
7616
8361
 
8362
+ /** @public */
8363
+ export declare const UiScrollResult: LastWriteWinElementSetComponentDefinition<PBUiScrollResult>;
8364
+
7617
8365
  /** @public */
7618
8366
  export declare const UiText: LastWriteWinElementSetComponentDefinition<PBUiText>;
7619
8367
 
@@ -7691,10 +8439,26 @@ export declare interface UiTransformProps {
7691
8439
  borderWidth?: Partial<Position> | PositionUnit;
7692
8440
  /** The opacity property sets the opacity level for an element, it's accumulated across children @defaultValue 1 */
7693
8441
  opacity?: number;
8442
+ /** A reference value to identify the element, default empty */
8443
+ elementId?: string;
8444
+ /** default position=(0,0) if it aplies, a vector or a reference-id */
8445
+ scrollPosition?: PBVector2 | string;
8446
+ /** default ShowScrollBar.SSB_BOTH */
8447
+ scrollVisible?: ScrollVisibleType;
7694
8448
  /** default 0 */
7695
8449
  zIndex?: number;
7696
8450
  }
7697
8451
 
8452
+ /**
8453
+ * Texture
8454
+ * @public
8455
+ */
8456
+ export declare interface UiVideoTexture {
8457
+ videoPlayerEntity: Entity;
8458
+ wrapMode?: TextureWrapType;
8459
+ filterMode?: TextureFilterType;
8460
+ }
8461
+
7698
8462
  /**
7699
8463
  * @public
7700
8464
  */