@dcl/playground-assets 7.12.2 → 7.12.3-19242573384.commit-09d14b4

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/beta.d.ts CHANGED
@@ -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
@@ -1304,12 +1404,17 @@ export declare const componentDefinitionByName: {
1304
1404
  "core::AvatarModifierArea": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBAvatarModifierArea>>;
1305
1405
  "core::AvatarShape": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBAvatarShape>>;
1306
1406
  "core::Billboard": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBBillboard>>;
1407
+ "core::CameraLayer": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraLayer>>;
1408
+ "core::CameraLayers": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraLayers>>;
1307
1409
  "core::CameraMode": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraMode>>;
1308
1410
  "core::CameraModeArea": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraModeArea>>;
1309
1411
  "core::EngineInfo": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBEngineInfo>>;
1412
+ "core::GlobalLight": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGlobalLight>>;
1310
1413
  "core::GltfContainer": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfContainer>>;
1311
1414
  "core::GltfContainerLoadingState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfContainerLoadingState>>;
1415
+ "core::GltfNode": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfNode>>;
1312
1416
  "core::GltfNodeModifiers": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfNodeModifiers>>;
1417
+ "core::GltfNodeState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfNodeState>>;
1313
1418
  "core::InputModifier": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBInputModifier>>;
1314
1419
  "core::LightSource": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBLightSource>>;
1315
1420
  "core::MainCamera": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBMainCamera>>;
@@ -1327,17 +1432,20 @@ export declare const componentDefinitionByName: {
1327
1432
  "core::RealmInfo": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBRealmInfo>>;
1328
1433
  "core::SkyboxTime": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBSkyboxTime>>;
1329
1434
  "core::TextShape": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTextShape>>;
1435
+ "core::TextureCamera": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTextureCamera>>;
1330
1436
  "core::TriggerArea": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTriggerArea>>;
1331
- "core::TriggerAreaResult": GSetComponentGetter<GrowOnlyValueSetComponentDefinition<PBTriggerAreaResult>>;
1437
+ "core::TriggerAreaResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTriggerAreaResult>>;
1332
1438
  "core::Tween": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTween>>;
1333
1439
  "core::TweenSequence": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTweenSequence>>;
1334
1440
  "core::TweenState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTweenState>>;
1335
1441
  "core::UiBackground": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiBackground>>;
1442
+ "core::UiCanvas": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiCanvas>>;
1336
1443
  "core::UiCanvasInformation": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiCanvasInformation>>;
1337
1444
  "core::UiDropdown": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiDropdown>>;
1338
1445
  "core::UiDropdownResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiDropdownResult>>;
1339
1446
  "core::UiInput": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiInput>>;
1340
1447
  "core::UiInputResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiInputResult>>;
1448
+ "core::UiScrollResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiScrollResult>>;
1341
1449
  "core::UiText": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiText>>;
1342
1450
  "core::UiTransform": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiTransform>>;
1343
1451
  "core::VideoEvent": GSetComponentGetter<GrowOnlyValueSetComponentDefinition<PBVideoEvent>>;
@@ -1904,10 +2012,18 @@ export declare type EntityComponents = {
1904
2012
  uiBackground: PBUiBackground;
1905
2013
  uiInput: PBUiInput;
1906
2014
  uiDropdown: PBUiDropdown;
1907
- onMouseDown: Callback;
1908
- onMouseUp: Callback;
1909
- onMouseEnter: Callback;
1910
- onMouseLeave: Callback;
2015
+ onMouseDown: EventSystemCallback;
2016
+ onMouseUp: EventSystemCallback;
2017
+ onMouseEnter: EventSystemCallback;
2018
+ onMouseLeave: EventSystemCallback;
2019
+ onMouseDrag: EventSystemCallback;
2020
+ onMouseDragLocked: EventSystemCallback;
2021
+ onMouseDragEnd: EventSystemCallback;
2022
+ onInputDown: MultiCallback;
2023
+ onInputUp: MultiCallback;
2024
+ onInputDrag: MultiCallback;
2025
+ onInputDragLocked: MultiCallback;
2026
+ onInputDragEnd: MultiCallback;
1911
2027
  };
1912
2028
 
1913
2029
  /** @public */
@@ -1985,6 +2101,13 @@ export declare type EventSystemOptions = {
1985
2101
  showHighlight?: boolean;
1986
2102
  };
1987
2103
 
2104
+ /**
2105
+ * @public
2106
+ */
2107
+ export declare type EventSystemOptionsCallback = EventSystemOptions & {
2108
+ cb: EventSystemCallback;
2109
+ };
2110
+
1988
2111
  /**
1989
2112
  * Excludes property keys from T where the property is assignable to U
1990
2113
  * @public
@@ -2059,6 +2182,9 @@ export declare type GlobalDirectionRaycastSystemOptions = {
2059
2182
  direction?: PBVector3;
2060
2183
  };
2061
2184
 
2185
+ /** @public */
2186
+ export declare const GlobalLight: LastWriteWinElementSetComponentDefinition<PBGlobalLight>;
2187
+
2062
2188
  export declare type GlobalTargetRaycastOptions = RaycastSystemOptions & GlobalTargetRaycastSystemOptions;
2063
2189
 
2064
2190
  export declare type GlobalTargetRaycastSystemOptions = {
@@ -2071,9 +2197,24 @@ export declare const GltfContainer: LastWriteWinElementSetComponentDefinition<PB
2071
2197
  /** @public */
2072
2198
  export declare const GltfContainerLoadingState: LastWriteWinElementSetComponentDefinition<PBGltfContainerLoadingState>;
2073
2199
 
2200
+ /** @public */
2201
+ export declare const GltfNode: LastWriteWinElementSetComponentDefinition<PBGltfNode>;
2202
+
2074
2203
  /** @public */
2075
2204
  export declare const GltfNodeModifiers: LastWriteWinElementSetComponentDefinition<PBGltfNodeModifiers>;
2076
2205
 
2206
+ /** @public */
2207
+ export declare const GltfNodeState: LastWriteWinElementSetComponentDefinition<PBGltfNodeState>;
2208
+
2209
+ /**
2210
+ * @public
2211
+ */
2212
+ export declare const enum GltfNodeStateValue {
2213
+ GNSV_PENDING = 0,
2214
+ GNSV_FAILED = 1,
2215
+ GNSV_READY = 2
2216
+ }
2217
+
2077
2218
  /**
2078
2219
  * @public
2079
2220
  */
@@ -2248,13 +2389,6 @@ export declare interface IEngine {
2248
2389
  * @typeParam T - The type of the entity name value
2249
2390
  */
2250
2391
  getEntityByName<T = never, K = T>(value: K & (T extends never ? never : string)): Entity;
2251
- /**
2252
- * @public
2253
- * Get all entities that have a specific tag in their Tag component
2254
- * @param tag - Tag to search
2255
- * @returns Iterator of entities that have the given tag
2256
- */
2257
- getEntitiesByTag(tagName: string): Iterable<Entity>;
2258
2392
  /**
2259
2393
  * @public
2260
2394
  * @param deltaTime - deltaTime in seconds
@@ -2419,6 +2553,12 @@ export declare type IInputSystem = {
2419
2553
  * @returns the input command info or undefined if there is no command in the last tick-update
2420
2554
  */
2421
2555
  getInputCommand: (inputAction: InputAction, pointerEventType: PointerEventType, entity?: Entity) => PBPointerEventsResult | null;
2556
+ /**
2557
+ * @public
2558
+ * Get an ordered iterator over events received within the current frame.
2559
+ * @returns the iterator
2560
+ */
2561
+ getInputCommands: () => Generator<PBPointerEventsResult>;
2422
2562
  };
2423
2563
 
2424
2564
  /**
@@ -2682,31 +2822,8 @@ export declare interface LastWriteWinElementSetComponentDefinition<T> extends Ba
2682
2822
  getOrCreateMutable(entity: Entity, initialValue?: T): T;
2683
2823
  }
2684
2824
 
2685
- export declare const LightSource: LightSourceComponentDefinitionExtended;
2686
-
2687
- /**
2688
- * @public
2689
- */
2690
- export declare interface LightSourceComponentDefinitionExtended extends LastWriteWinElementSetComponentDefinition<PBLightSource> {
2691
- /**
2692
- * LightSource helper with constructor
2693
- */
2694
- Type: LightSourceHelper;
2695
- }
2696
-
2697
- /**
2698
- * @public
2699
- */
2700
- export declare interface LightSourceHelper {
2701
- /**
2702
- * @returns a Light Source type
2703
- */
2704
- Point: (point: PBLightSource_Point) => PBLightSource['type'];
2705
- /**
2706
- * @returns a Light Source type
2707
- */
2708
- Spot: (spot: PBLightSource_Spot) => PBLightSource['type'];
2709
- }
2825
+ /** @public */
2826
+ export declare const LightSource: LastWriteWinElementSetComponentDefinition<PBLightSource>;
2710
2827
 
2711
2828
  /**
2712
2829
  * User key event Listeners
@@ -2714,13 +2831,29 @@ export declare interface LightSourceHelper {
2714
2831
  */
2715
2832
  export declare type Listeners = {
2716
2833
  /** triggered on mouse down event */
2717
- onMouseDown?: Callback;
2834
+ onMouseDown?: EventSystemCallback;
2718
2835
  /** triggered on mouse up event */
2719
- onMouseUp?: Callback;
2836
+ onMouseUp?: EventSystemCallback;
2720
2837
  /** triggered on mouse hover event */
2721
- onMouseEnter?: Callback;
2838
+ onMouseEnter?: EventSystemCallback;
2722
2839
  /** triggered on mouse leave event */
2723
- onMouseLeave?: Callback;
2840
+ onMouseLeave?: EventSystemCallback;
2841
+ /** triggered on mouse drag event */
2842
+ onMouseDrag?: EventSystemCallback;
2843
+ /** triggered on mouse drag event */
2844
+ onMouseDragLocked?: EventSystemCallback;
2845
+ /** triggered on mouse drag event */
2846
+ onMouseDragEnd?: EventSystemCallback;
2847
+ /** triggered on input down event */
2848
+ onInputDown?: MultiCallback;
2849
+ /** triggered on input up event */
2850
+ onInputUp?: MultiCallback;
2851
+ /** triggered on input drag event */
2852
+ onInputDrag?: MultiCallback;
2853
+ /** triggered on input drag event */
2854
+ onInputDragLocked?: MultiCallback;
2855
+ /** triggered on input drag event */
2856
+ onInputDragEnd?: MultiCallback;
2724
2857
  };
2725
2858
 
2726
2859
  /**
@@ -3589,6 +3722,14 @@ export declare interface MeshColliderComponentDefinitionExtended extends LastWri
3589
3722
  * @param colliderMask - the set of layer where the collider reacts, default: Physics and Pointer
3590
3723
  */
3591
3724
  setSphere(entity: Entity, colliderLayers?: ColliderLayer | ColliderLayer[]): void;
3725
+ /**
3726
+ * @public
3727
+ * Set a gltf internal mesh in the MeshCollider component
3728
+ * @param entity - entity to create or replace the MeshRenderer component
3729
+ * @param source - the path to the gltf
3730
+ * @param meshName - the name of the mesh in the gltf
3731
+ */
3732
+ setGltfMesh(entity: Entity, source: string, meshName: string, colliderLayers?: ColliderLayer | ColliderLayer[]): void;
3592
3733
  }
3593
3734
 
3594
3735
  export declare const MeshRenderer: MeshRendererComponentDefinitionExtended;
@@ -3625,6 +3766,14 @@ export declare interface MeshRendererComponentDefinitionExtended extends LastWri
3625
3766
  * @param entity - entity to create or replace the MeshRenderer component
3626
3767
  */
3627
3768
  setSphere(entity: Entity): void;
3769
+ /**
3770
+ * @public
3771
+ * Set a gltf internal mesh in the MeshRenderer component
3772
+ * @param entity - entity to create or replace the MeshRenderer component
3773
+ * @param source - the path to the gltf
3774
+ * @param meshName - the name of the mesh in the gltf
3775
+ */
3776
+ setGltfMesh(entity: Entity, source: string, meshName: string): void;
3628
3777
  }
3629
3778
 
3630
3779
  /* Excluded from this release type: MessageBus */
@@ -3662,6 +3811,19 @@ export declare namespace MoveContinuous {
3662
3811
  export function decode(input: _m0.Reader | Uint8Array, length?: number): MoveContinuous;
3663
3812
  }
3664
3813
 
3814
+ /**
3815
+ * a record object mapping `InputAction`s to functions.
3816
+ *
3817
+ * @example
3818
+ * onInputDown={{
3819
+ * [InputAction.IA_PRIMARY]: (eventData) => { console.log("primary") },
3820
+ * [InputAction.IA_SECONDARY]: () => { console.log("secondary") },
3821
+ * }}
3822
+ *
3823
+ * @public
3824
+ */
3825
+ export declare type MultiCallback = Partial<Record<InputAction, EventSystemCallback>>;
3826
+
3665
3827
  export declare const Name: NameComponent;
3666
3828
 
3667
3829
  export declare type NameComponent = LastWriteWinElementSetComponentDefinition<NameType>;
@@ -4034,6 +4196,25 @@ export declare const onVideoEvent: Observable<{
4034
4196
  totalVideoLength: number;
4035
4197
  }>;
4036
4198
 
4199
+ /**
4200
+ * @public
4201
+ */
4202
+ export declare interface Orthographic {
4203
+ /**
4204
+ * vertical extent of the visible range in meters
4205
+ * defaults to 4m
4206
+ */
4207
+ verticalRange?: number | undefined;
4208
+ }
4209
+
4210
+ /**
4211
+ * @public
4212
+ */
4213
+ export declare namespace Orthographic {
4214
+ export function encode(message: Orthographic, writer?: _m0.Writer): _m0.Writer;
4215
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): Orthographic;
4216
+ }
4217
+
4037
4218
  /**
4038
4219
  * @public
4039
4220
  * The overflow property controls what happens to content that is too big to fit into an area
@@ -4260,6 +4441,8 @@ export declare namespace PBAvatarEmoteCommand {
4260
4441
  export declare interface PBAvatarEquippedData {
4261
4442
  wearableUrns: string[];
4262
4443
  emoteUrns: string[];
4444
+ /** slots that will render even if hidden */
4445
+ forceRender: string[];
4263
4446
  }
4264
4447
 
4265
4448
  /**
@@ -4294,6 +4477,9 @@ export declare interface PBAvatarModifierArea {
4294
4477
  excludeIds: string[];
4295
4478
  /** list of modifiers to apply */
4296
4479
  modifiers: AvatarModifierType[];
4480
+ movementSettings?: AvatarMovementSettings | undefined;
4481
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
4482
+ useColliderRange?: boolean | undefined;
4297
4483
  }
4298
4484
 
4299
4485
  /**
@@ -4352,6 +4538,8 @@ export declare interface PBAvatarShape {
4352
4538
  emotes: string[];
4353
4539
  /** hides the skin + hair + facial features (default: false) */
4354
4540
  showOnlyWearables?: boolean | undefined;
4541
+ /** slots that will render even if hidden */
4542
+ forceRender: string[];
4355
4543
  }
4356
4544
 
4357
4545
  /**
@@ -4386,6 +4574,51 @@ export declare namespace PBBillboard {
4386
4574
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBBillboard;
4387
4575
  }
4388
4576
 
4577
+ /**
4578
+ * @public
4579
+ */
4580
+ export declare interface PBCameraLayer {
4581
+ /**
4582
+ * layer to which these settings apply. must be > 0
4583
+ * Layer 0 is the default "real world" layer viewed by the player and cannot be modified.
4584
+ */
4585
+ layer: number;
4586
+ /** should the sun light affect this layer? default false */
4587
+ directionalLight?: boolean | undefined;
4588
+ /** should this layer show player avatars? default false */
4589
+ showAvatars?: boolean | undefined;
4590
+ /** should this layer show the sky? default false */
4591
+ showSkybox?: boolean | undefined;
4592
+ /** should this layer show distance fog? default false */
4593
+ showFog?: boolean | undefined;
4594
+ /** ambient light overrides for this layer. default -> use same as main camera */
4595
+ ambientColorOverride?: PBColor3 | undefined;
4596
+ ambientBrightnessOverride?: number | undefined;
4597
+ }
4598
+
4599
+ /**
4600
+ * @public
4601
+ */
4602
+ export declare namespace PBCameraLayer {
4603
+ export function encode(message: PBCameraLayer, writer?: _m0.Writer): _m0.Writer;
4604
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBCameraLayer;
4605
+ }
4606
+
4607
+ /**
4608
+ * @public
4609
+ */
4610
+ export declare interface PBCameraLayers {
4611
+ layers: number[];
4612
+ }
4613
+
4614
+ /**
4615
+ * @public
4616
+ */
4617
+ export declare namespace PBCameraLayers {
4618
+ export function encode(message: PBCameraLayers, writer?: _m0.Writer): _m0.Writer;
4619
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBCameraLayers;
4620
+ }
4621
+
4389
4622
  /**
4390
4623
  * The CameraMode component can be used to determine whether the player is using a first-person o
4391
4624
  * third-person view.
@@ -4408,7 +4641,7 @@ export declare namespace PBCameraMode {
4408
4641
 
4409
4642
  /**
4410
4643
  * The CameraModeArea component can be attached to an Entity to define a region of space where
4411
- * the player's camera mode (1st-person or 3rd-person) is overridden.
4644
+ * the player's camera mode (1st-person, 3rd-person or cinematic) is overridden.
4412
4645
  *
4413
4646
  * The Entity's Transform position determines the center-point of the region, while its size is
4414
4647
  * given as a vector in the `area` property below. The Transform rotation is applied, but the scale
@@ -4418,6 +4651,8 @@ export declare namespace PBCameraMode {
4418
4651
  *
4419
4652
  * Note that, while commonly used to delineate a 2D area in a scene (hence the name), the region
4420
4653
  * is actually a 3D volume.
4654
+ *
4655
+ * When mode is set to CtCinematic, the cinematic_settings field must also be provided.
4421
4656
  */
4422
4657
  /**
4423
4658
  * @public
@@ -4427,6 +4662,9 @@ export declare interface PBCameraModeArea {
4427
4662
  area: PBVector3 | undefined;
4428
4663
  /** the camera mode to enforce */
4429
4664
  mode: CameraType;
4665
+ cinematicSettings?: CinematicSettings | undefined;
4666
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
4667
+ useColliderRange?: boolean | undefined;
4430
4668
  }
4431
4669
 
4432
4670
  /**
@@ -4498,6 +4736,39 @@ export declare namespace PBEngineInfo {
4498
4736
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBEngineInfo;
4499
4737
  }
4500
4738
 
4739
+ /**
4740
+ * defines the global scene light settings. must be added to the scene root.
4741
+ * to control sunlight color, intensity, shadows etc, you can also add a PBLight to the scene root.
4742
+ */
4743
+ /**
4744
+ * @public
4745
+ */
4746
+ export declare interface PBGlobalLight {
4747
+ /**
4748
+ * the direction the directional light shines in.
4749
+ * default depends on time of day and explorer implementation
4750
+ */
4751
+ direction?: PBVector3 | undefined;
4752
+ /**
4753
+ * ambient light color
4754
+ * default: White
4755
+ */
4756
+ ambientColor?: PBColor3 | undefined;
4757
+ /**
4758
+ * ambient light intensity. the explorer default ambient brightness is multiplied by this non-physical quantity.
4759
+ * default 1
4760
+ */
4761
+ ambientBrightness?: number | undefined;
4762
+ }
4763
+
4764
+ /**
4765
+ * @public
4766
+ */
4767
+ export declare namespace PBGlobalLight {
4768
+ export function encode(message: PBGlobalLight, writer?: _m0.Writer): _m0.Writer;
4769
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGlobalLight;
4770
+ }
4771
+
4501
4772
  /**
4502
4773
  * GltfContainer loads a GLTF file (and any additional files packaged inside) attached to an Entity.
4503
4774
  *
@@ -4533,6 +4804,25 @@ export declare namespace PBGltfContainer {
4533
4804
  */
4534
4805
  export declare interface PBGltfContainerLoadingState {
4535
4806
  currentState: LoadingState;
4807
+ /** all node paths in the gltf, which can be used with a GltfNode to inspect and modify the gltf contents */
4808
+ nodePaths: string[];
4809
+ /** all meshes in the gltf. unnamed meshes will be auto-assigned a name of the form `MeshX` or `MeshX/PrimitiveY` */
4810
+ meshNames: string[];
4811
+ /**
4812
+ * where X is the mesh index and Y is the primitive index (and there is more than 1 primitive). note this may
4813
+ * conflict with manually named meshes - to avoid any issues make sure all your meshes are explicitly named.
4814
+ */
4815
+ materialNames: string[];
4816
+ /**
4817
+ * X is the material index. note this may conflict with manually named materials - to avoid any issues make
4818
+ * sure all your materials are explicitly named.
4819
+ */
4820
+ skinNames: string[];
4821
+ /**
4822
+ * X is the skin index. note this may conflict with manually named skins - to avoid any issues make sure all
4823
+ * your skins are explicitly named.
4824
+ */
4825
+ animationNames: string[];
4536
4826
  }
4537
4827
 
4538
4828
  /**
@@ -4543,6 +4833,57 @@ export declare namespace PBGltfContainerLoadingState {
4543
4833
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfContainerLoadingState;
4544
4834
  }
4545
4835
 
4836
+ /**
4837
+ * a GltfNode links a scene entity with a node from within a gltf, allowing the scene to inspect it or modify it.
4838
+ * This component must be added to a direct child of an entity with a PBGltfContainer component, or
4839
+ * to a direct child of another entity with a GltfNode component, and the referenced gltf node must be a descendent of the gltf node
4840
+ * in the parent.
4841
+ * The name must match the path of one of the nodes within the Gltf. These are available on the GltfContainerLoadingState component.
4842
+ *
4843
+ * The renderer will attach a PBGltfNodeState to the entity describing the state. Once the state is `GNS_READY`,
4844
+ * - the `Transform` will be updated to match the position of the node within the gltf (relative to the gltf root, or the parent node),
4845
+ * - a `MeshRenderer` with a GltfMesh mesh type will be added (if the gltf node has a mesh).
4846
+ * - a `MeshCollider` with a GltfMesh mesh type will be added (if the gltf node has a collider).
4847
+ * - a `Material` component including a GltfMaterial reference will be added (if the gltf node has a material).
4848
+ *
4849
+ * After creation, if an animation moves the node, the `Transform` will be updated.
4850
+ *
4851
+ * From the scene, you can modify various components to alter the gltf node:
4852
+ * - modifying the `Transform` position/rotation/scale will move the node. The position is interpreted relative to the gltf root (or parent node),
4853
+ * regardless of any intermediate gltf node hierarchy.
4854
+ * If an animation is playing, the animation takes priority and the scene entity's position will be updated to match the animation.
4855
+ * - `Visibility` can be added to hide or show the node and it's children in the gltf hierarchy.
4856
+ * - `MeshRenderer` can be added/modified/removed to create/modify/remove a mesh on the node.
4857
+ * - `MeshCollider` can be added/modified/removed to create/modify/remove a collider on the node.
4858
+ * - `Material` can be added or modified to change the material properties. If the gltf node has a material, the original material will be
4859
+ * 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
4860
+ * PBMaterial will be maintained.
4861
+ *
4862
+ * The scene can add additional entities as children to the gltf node, but structural modifications of the gltf are not possible:
4863
+ * - changing the scene hierarchy will not change the gltf node hierarchy. Moving the entity out of the gltf will sever the link and
4864
+ * change the state to `GNS_FAILED`.
4865
+ * - deleting the scene entity will not delete the gltf node.
4866
+ *
4867
+ * Removing the GltfNode will revert any changes to the original gltf. If the GltfNode component is removed and the mesh/collider/material
4868
+ * are not removed, this will result in a duplication of these components as the previously-linked entity will retain it's components and
4869
+ * the gltf node will also be displayed.
4870
+ */
4871
+ /**
4872
+ * @public
4873
+ */
4874
+ export declare interface PBGltfNode {
4875
+ /** the path of the target node in the Gltf. */
4876
+ path: string;
4877
+ }
4878
+
4879
+ /**
4880
+ * @public
4881
+ */
4882
+ export declare namespace PBGltfNode {
4883
+ export function encode(message: PBGltfNode, writer?: _m0.Writer): _m0.Writer;
4884
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNode;
4885
+ }
4886
+
4546
4887
  /**
4547
4888
  * GltfNodeModifiers component is to be used attached to entities that have the GltfContainer component.
4548
4889
  *
@@ -4588,6 +4929,26 @@ export declare namespace PBGltfNodeModifiers_GltfNodeModifier {
4588
4929
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNodeModifiers_GltfNodeModifier;
4589
4930
  }
4590
4931
 
4932
+ /**
4933
+ * The state of a linked gltf node.
4934
+ * If the state is GNSV_FAILED, the renderer may describe the failure in the error string.
4935
+ */
4936
+ /**
4937
+ * @public
4938
+ */
4939
+ export declare interface PBGltfNodeState {
4940
+ state: GltfNodeStateValue;
4941
+ error?: string | undefined;
4942
+ }
4943
+
4944
+ /**
4945
+ * @public
4946
+ */
4947
+ export declare namespace PBGltfNodeState {
4948
+ export function encode(message: PBGltfNodeState, writer?: _m0.Writer): _m0.Writer;
4949
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNodeState;
4950
+ }
4951
+
4591
4952
  /**
4592
4953
  * @public
4593
4954
  */
@@ -4723,6 +5084,14 @@ export declare interface PBMaterial {
4723
5084
  $case: "pbr";
4724
5085
  pbr: PBMaterial_PbrMaterial;
4725
5086
  } | undefined;
5087
+ /**
5088
+ * A gltf material that may provide additional features not supported by the PbMaterial fields.
5089
+ * If both gltf and material fields are provided, the gltf will be used only for extended features not
5090
+ * supported by the PbMaterial.
5091
+ * If this is provided and the `material` field is not provided, the renderer will update the material
5092
+ * field with data that reflects the gltf material once it is loaded.
5093
+ */
5094
+ gltf?: PBMaterial_GltfMaterial | undefined;
4726
5095
  }
4727
5096
 
4728
5097
  /**
@@ -4733,6 +5102,22 @@ export declare namespace PBMaterial {
4733
5102
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial;
4734
5103
  }
4735
5104
 
5105
+ /**
5106
+ * @public
5107
+ */
5108
+ export declare interface PBMaterial_GltfMaterial {
5109
+ gltfSrc: string;
5110
+ name: string;
5111
+ }
5112
+
5113
+ /**
5114
+ * @public
5115
+ */
5116
+ export declare namespace PBMaterial_GltfMaterial {
5117
+ export function encode(message: PBMaterial_GltfMaterial, writer?: _m0.Writer): _m0.Writer;
5118
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial_GltfMaterial;
5119
+ }
5120
+
4736
5121
  /**
4737
5122
  * @public
4738
5123
  */
@@ -4829,6 +5214,9 @@ export declare interface PBMeshCollider {
4829
5214
  } | {
4830
5215
  $case: "plane";
4831
5216
  plane: PBMeshCollider_PlaneMesh;
5217
+ } | {
5218
+ $case: "gltf";
5219
+ gltf: PBMeshCollider_GltfMesh;
4832
5220
  } | undefined;
4833
5221
  }
4834
5222
 
@@ -4874,6 +5262,25 @@ export declare namespace PBMeshCollider_CylinderMesh {
4874
5262
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_CylinderMesh;
4875
5263
  }
4876
5264
 
5265
+ /** A collider constructed from a Gltf Mesh. */
5266
+ /**
5267
+ * @public
5268
+ */
5269
+ export declare interface PBMeshCollider_GltfMesh {
5270
+ /** the GLTF file path as listed in the scene's manifest. */
5271
+ gltfSrc: string;
5272
+ /** the name of the mesh asset */
5273
+ name: string;
5274
+ }
5275
+
5276
+ /**
5277
+ * @public
5278
+ */
5279
+ export declare namespace PBMeshCollider_GltfMesh {
5280
+ export function encode(message: PBMeshCollider_GltfMesh, writer?: _m0.Writer): _m0.Writer;
5281
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_GltfMesh;
5282
+ }
5283
+
4877
5284
  /** PlaneMesh is a 2D rectangle described by the Entity's Transform. */
4878
5285
  /**
4879
5286
  * @public
@@ -4906,13 +5313,11 @@ export declare namespace PBMeshCollider_SphereMesh {
4906
5313
 
4907
5314
  /**
4908
5315
  * The MeshRenderer component renders a basic geometric shape for an Entity. It can be a cube, a
4909
- * plane, a sphere or a cylinder.
5316
+ * plane, a sphere, a cylinder, or a Gltf mesh.
4910
5317
  *
4911
5318
  * The cube and plane variants can include a UV texture mapping, so specific areas of a material
4912
5319
  * texture are rendered on different faces of the shape. They are serialized as a sequence of 2D
4913
5320
  * `float` coordinates, one for each corner of each side of each face.
4914
- *
4915
- * More complex shapes require the use of a `GltfContainer` component.
4916
5321
  */
4917
5322
  /**
4918
5323
  * @public
@@ -4930,6 +5335,9 @@ export declare interface PBMeshRenderer {
4930
5335
  } | {
4931
5336
  $case: "plane";
4932
5337
  plane: PBMeshRenderer_PlaneMesh;
5338
+ } | {
5339
+ $case: "gltf";
5340
+ gltf: PBMeshRenderer_GltfMesh;
4933
5341
  } | undefined;
4934
5342
  }
4935
5343
 
@@ -4977,6 +5385,25 @@ export declare namespace PBMeshRenderer_CylinderMesh {
4977
5385
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_CylinderMesh;
4978
5386
  }
4979
5387
 
5388
+ /** A mesh from a Gltf. */
5389
+ /**
5390
+ * @public
5391
+ */
5392
+ export declare interface PBMeshRenderer_GltfMesh {
5393
+ /** the GLTF file path as listed in the scene's manifest. */
5394
+ gltfSrc: string;
5395
+ /** the name of the mesh asset */
5396
+ name: string;
5397
+ }
5398
+
5399
+ /**
5400
+ * @public
5401
+ */
5402
+ export declare namespace PBMeshRenderer_GltfMesh {
5403
+ export function encode(message: PBMeshRenderer_GltfMesh, writer?: _m0.Writer): _m0.Writer;
5404
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_GltfMesh;
5405
+ }
5406
+
4980
5407
  /** PlaneMesh renders a 2D rectangular shape. */
4981
5408
  /**
4982
5409
  * @public
@@ -5225,7 +5652,10 @@ export declare interface PBPrimaryPointerInfo {
5225
5652
  screenCoordinates?: PBVector2 | undefined;
5226
5653
  /** Movement since last frame (pixels) */
5227
5654
  screenDelta?: PBVector2 | undefined;
5228
- /** Direction vector for 3D ray casting */
5655
+ /**
5656
+ * ray direction that can be used with the primary camera origin for
5657
+ * raycasting from the cursor into the world
5658
+ */
5229
5659
  worldRayDirection?: PBVector3 | undefined;
5230
5660
  }
5231
5661
 
@@ -5451,6 +5881,46 @@ export declare namespace PBTextShape {
5451
5881
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBTextShape;
5452
5882
  }
5453
5883
 
5884
+ /**
5885
+ * @public
5886
+ */
5887
+ export declare interface PBTextureCamera {
5888
+ /** rendered texture width */
5889
+ width?: number | undefined;
5890
+ /** rendered texture height */
5891
+ height?: number | undefined;
5892
+ /**
5893
+ * which layer of entities to render. entity layers can be specified by adding PBCameraLayers to target entities.
5894
+ * defaults to 0
5895
+ */
5896
+ layer?: number | undefined;
5897
+ /** default black */
5898
+ clearColor?: PBColor4 | undefined;
5899
+ /** default infinity */
5900
+ farPlane?: number | undefined;
5901
+ mode?: {
5902
+ $case: "perspective";
5903
+ perspective: Perspective;
5904
+ } | {
5905
+ $case: "orthographic";
5906
+ orthographic: Orthographic;
5907
+ } | undefined;
5908
+ /**
5909
+ * controls whether this camera acts as a receiver for audio on sources with matching `PBCameraLayers`.
5910
+ * range: 0 (off) - 1 (full volume)
5911
+ * default: 0
5912
+ */
5913
+ volume?: number | undefined;
5914
+ }
5915
+
5916
+ /**
5917
+ * @public
5918
+ */
5919
+ export declare namespace PBTextureCamera {
5920
+ export function encode(message: PBTextureCamera, writer?: _m0.Writer): _m0.Writer;
5921
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBTextureCamera;
5922
+ }
5923
+
5454
5924
  /**
5455
5925
  * The PBTriggerArea component is used to raise collision triggering events (through the TriggerAreaResult component)
5456
5926
  * when entities enter this component's defined area.
@@ -5629,6 +6099,25 @@ export declare namespace PBUiBackground {
5629
6099
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiBackground;
5630
6100
  }
5631
6101
 
6102
+ /** The UiCanvas component can be attached to a ui root entity to specify properties of the ui texture. */
6103
+ /**
6104
+ * @public
6105
+ */
6106
+ export declare interface PBUiCanvas {
6107
+ width: number;
6108
+ height: number;
6109
+ /** default = (0.0, 0.0, 0.0, 0.0) / transparent */
6110
+ color?: PBColor4 | undefined;
6111
+ }
6112
+
6113
+ /**
6114
+ * @public
6115
+ */
6116
+ export declare namespace PBUiCanvas {
6117
+ export function encode(message: PBUiCanvas, writer?: _m0.Writer): _m0.Writer;
6118
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiCanvas;
6119
+ }
6120
+
5632
6121
  /** This component is created by the renderer and used by the scenes to know the resolution of the UI canvas */
5633
6122
  /**
5634
6123
  * @public
@@ -5745,6 +6234,21 @@ export declare namespace PBUiInputResult {
5745
6234
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiInputResult;
5746
6235
  }
5747
6236
 
6237
+ /**
6238
+ * @public
6239
+ */
6240
+ export declare interface PBUiScrollResult {
6241
+ value: PBVector2 | undefined;
6242
+ }
6243
+
6244
+ /**
6245
+ * @public
6246
+ */
6247
+ export declare namespace PBUiScrollResult {
6248
+ export function encode(message: PBUiScrollResult, writer?: _m0.Writer): _m0.Writer;
6249
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiScrollResult;
6250
+ }
6251
+
5748
6252
  /**
5749
6253
  * @public
5750
6254
  */
@@ -5761,6 +6265,10 @@ export declare interface PBUiText {
5761
6265
  fontSize?: number | undefined;
5762
6266
  /** wrap text when the border is reached (default: TW_WRAP) */
5763
6267
  textWrap?: TextWrap | undefined;
6268
+ /** width of the outline (default: 0) */
6269
+ outlineWidth?: number | undefined;
6270
+ /** RGBA color of the outline (default: opaque black) */
6271
+ outlineColor?: PBColor4 | undefined;
5764
6272
  }
5765
6273
 
5766
6274
  /**
@@ -5888,6 +6396,12 @@ export declare interface PBUiTransform {
5888
6396
  borderRightColor?: PBColor4 | undefined;
5889
6397
  /** default: 1 */
5890
6398
  opacity?: number | undefined;
6399
+ /** reference for scroll_position. default empty */
6400
+ elementId?: string | undefined;
6401
+ /** default position=(0,0) */
6402
+ scrollPosition?: ScrollPositionValue | undefined;
6403
+ /** default ShowScrollBar.SSB_BOTH */
6404
+ scrollVisible?: ShowScrollBar | undefined;
5891
6405
  /** default: 0 — controls render stacking order. Higher values appear in front of lower values. */
5892
6406
  zIndex?: number | undefined;
5893
6407
  }
@@ -6019,6 +6533,25 @@ export declare namespace PBVisibilityComponent {
6019
6533
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBVisibilityComponent;
6020
6534
  }
6021
6535
 
6536
+ /**
6537
+ * @public
6538
+ */
6539
+ export declare interface Perspective {
6540
+ /**
6541
+ * vertical field of view in radians
6542
+ * defaults to pi/4 = 45 degrees
6543
+ */
6544
+ fieldOfView?: number | undefined;
6545
+ }
6546
+
6547
+ /**
6548
+ * @public
6549
+ */
6550
+ export declare namespace Perspective {
6551
+ export function encode(message: Perspective, writer?: _m0.Writer): _m0.Writer;
6552
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): Perspective;
6553
+ }
6554
+
6022
6555
  /**
6023
6556
  * Represens a plane by the equation ax + by + cz + d = 0
6024
6557
  * @public
@@ -6174,11 +6707,37 @@ export declare interface PointerEventsSystem {
6174
6707
  * @param entity - Entity where the callback was attached
6175
6708
  */
6176
6709
  removeOnPointerHoverLeave(entity: Entity): void;
6710
+ /**
6711
+ * @public
6712
+ * Remove the callback for onPointerDrag event
6713
+ * @param entity - Entity where the callback was attached
6714
+ */
6715
+ removeOnPointerDrag(entity: Entity): void;
6716
+ /**
6717
+ * @public
6718
+ * Remove the callback for onPointerDragLocked event
6719
+ * @param entity - Entity where the callback was attached
6720
+ */
6721
+ removeOnPointerDragLocked(entity: Entity): void;
6722
+ /**
6723
+ * @public
6724
+ * Remove the callback for onPointerDragEnd event
6725
+ * @param entity - Entity where the callback was attached
6726
+ */
6727
+ removeOnPointerDragEnd(entity: Entity): void;
6728
+ /**
6729
+ * @public
6730
+ * Execute callbacks when the user presses one of the InputButtons pointing at the entity
6731
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
6732
+ */
6733
+ onPointerDown(pointerData: {
6734
+ entity: Entity;
6735
+ optsList: EventSystemOptionsCallback[];
6736
+ }): void;
6177
6737
  /**
6178
6738
  * @public
6179
6739
  * Execute callback when the user press the InputButton pointing at the entity
6180
6740
  * @param pointerData - Entity to attach the callback, Opts to trigger Feedback and Button
6181
- * @param cb - Function to execute when click fires
6182
6741
  */
6183
6742
  onPointerDown(pointerData: {
6184
6743
  entity: Entity;
@@ -6191,6 +6750,15 @@ export declare interface PointerEventsSystem {
6191
6750
  * @param opts - Opts to trigger Feedback and Button
6192
6751
  */
6193
6752
  onPointerDown(entity: Entity, cb: EventSystemCallback, opts?: Partial<EventSystemOptions>): void;
6753
+ /**
6754
+ * @public
6755
+ * Execute callbacks when the user releases one of the InputButtons pointing at the entity
6756
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
6757
+ */
6758
+ onPointerUp(pointerData: {
6759
+ entity: Entity;
6760
+ optsList: EventSystemOptionsCallback[];
6761
+ }): void;
6194
6762
  /**
6195
6763
  * @public
6196
6764
  * Execute callback when the user releases the InputButton pointing at the entity
@@ -6228,6 +6796,64 @@ export declare interface PointerEventsSystem {
6228
6796
  entity: Entity;
6229
6797
  opts?: Partial<EventSystemOptions>;
6230
6798
  }, cb: EventSystemCallback): void;
6799
+ /**
6800
+ * @public
6801
+ * Execute callbacks when the user drags the pointer from inside the entity
6802
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
6803
+ */
6804
+ onPointerDrag(pointerData: {
6805
+ entity: Entity;
6806
+ optsList: EventSystemOptionsCallback[];
6807
+ }): void;
6808
+ /**
6809
+ * @public
6810
+ * Execute callback when the user clicks and drags the pointer from inside the entity
6811
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
6812
+ * @param cb - Function to execute when click fires
6813
+ */
6814
+ onPointerDrag(pointerData: {
6815
+ entity: Entity;
6816
+ opts?: Partial<EventSystemOptions>;
6817
+ }, cb: EventSystemCallback): void;
6818
+ /**
6819
+ * @public
6820
+ * Execute callbacks when the user drags the pointer from inside the entity, locking the cursor in place.
6821
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
6822
+ */
6823
+ onPointerDragLocked(pointerData: {
6824
+ entity: Entity;
6825
+ optsList: EventSystemOptionsCallback[];
6826
+ }): void;
6827
+ /**
6828
+ * @public
6829
+ * Execute callback when the user clicks and drags the pointer from inside the entity,
6830
+ * locking the cursor in place
6831
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
6832
+ * @param cb - Function to execute when click fires
6833
+ */
6834
+ onPointerDragLocked(pointerData: {
6835
+ entity: Entity;
6836
+ opts?: Partial<EventSystemOptions>;
6837
+ }, cb: EventSystemCallback): void;
6838
+ /**
6839
+ * @public
6840
+ * Execute callbacks when the user releases a button after a drag
6841
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
6842
+ */
6843
+ onPointerDragEnd(pointerData: {
6844
+ entity: Entity;
6845
+ optsList: EventSystemOptionsCallback[];
6846
+ }): void;
6847
+ /**
6848
+ * @public
6849
+ * Execute callback when the user releases the button after a drag
6850
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
6851
+ * @param cb - Function to execute when click fires
6852
+ */
6853
+ onPointerDragEnd(pointerData: {
6854
+ entity: Entity;
6855
+ opts?: Partial<EventSystemOptions>;
6856
+ }, cb: EventSystemCallback): void;
6231
6857
  }
6232
6858
 
6233
6859
  /**
@@ -6244,7 +6870,10 @@ export declare const enum PointerEventType {
6244
6870
  PET_UP = 0,
6245
6871
  PET_DOWN = 1,
6246
6872
  PET_HOVER_ENTER = 2,
6247
- PET_HOVER_LEAVE = 3
6873
+ PET_HOVER_LEAVE = 3,
6874
+ PET_DRAG_LOCKED = 4,
6875
+ PET_DRAG = 5,
6876
+ PET_DRAG_END = 6
6248
6877
  }
6249
6878
 
6250
6879
  /**
@@ -6275,7 +6904,10 @@ export declare const enum PointerType {
6275
6904
  /** POT_NONE - No pointer input */
6276
6905
  POT_NONE = 0,
6277
6906
  /** POT_MOUSE - Traditional mouse input */
6278
- POT_MOUSE = 1
6907
+ POT_MOUSE = 1,
6908
+ POT_PAD = 2,
6909
+ POT_TOUCH = 3,
6910
+ POT_WAND = 4
6279
6911
  }
6280
6912
 
6281
6913
  /**
@@ -6872,6 +7504,7 @@ export declare type RaycastSystemOptions = {
6872
7504
  export declare interface ReactBasedUiSystem {
6873
7505
  destroy(): void;
6874
7506
  setUiRenderer(ui: UiComponent): void;
7507
+ setTextureRenderer(entity: Entity, ui: UiComponent): void;
6875
7508
  }
6876
7509
 
6877
7510
  /**
@@ -7350,6 +7983,43 @@ export declare namespace Schemas {
7350
7983
  }) => void;
7351
7984
  }
7352
7985
 
7986
+ /**
7987
+ * @public
7988
+ */
7989
+ export declare interface ScrollPositionValue {
7990
+ value?: {
7991
+ $case: "position";
7992
+ position: PBVector2;
7993
+ } | {
7994
+ $case: "reference";
7995
+ reference: string;
7996
+ } | undefined;
7997
+ }
7998
+
7999
+ /**
8000
+ * @public
8001
+ */
8002
+ export declare namespace ScrollPositionValue {
8003
+ export function encode(message: ScrollPositionValue, writer?: _m0.Writer): _m0.Writer;
8004
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): ScrollPositionValue;
8005
+ }
8006
+
8007
+ /**
8008
+ * @public
8009
+ * The scroll-visible determines if the scrollbars are shown when the scroll overflow is enabled
8010
+ */
8011
+ export declare type ScrollVisibleType = 'horizontal' | 'vertical' | 'both' | 'hidden';
8012
+
8013
+ /**
8014
+ * @public
8015
+ */
8016
+ export declare const enum ShowScrollBar {
8017
+ SSB_BOTH = 0,
8018
+ SSB_ONLY_VERTICAL = 1,
8019
+ SSB_ONLY_HORIZONTAL = 2,
8020
+ SSB_HIDDEN = 3
8021
+ }
8022
+
7353
8023
  /** @public */
7354
8024
  export declare const SkyboxTime: LastWriteWinElementSetComponentDefinition<PBSkyboxTime>;
7355
8025
 
@@ -7375,33 +8045,6 @@ export declare type SystemItem = {
7375
8045
 
7376
8046
  export declare const SYSTEMS_REGULAR_PRIORITY = 100000;
7377
8047
 
7378
- export declare const Tags: TagsComponentDefinitionExtended;
7379
-
7380
- export declare interface TagsComponentDefinitionExtended extends LastWriteWinElementSetComponentDefinition<TagsType> {
7381
- /**
7382
- * @public
7383
- *
7384
- * Add a tag to the entity's Tags component or create the component if it doesn't exist and add the tag
7385
- * @param entity - entity to add the tag to
7386
- * @param tagName - the tag name to add
7387
- * @returns true
7388
- */
7389
- add(entity: Entity, tagName: string): boolean;
7390
- /**
7391
- * @public
7392
- *
7393
- * Remove a tag from the entity's Tags component
7394
- * @param entity - entity to remove the tag from
7395
- * @param tagName - the tag name to remove
7396
- * @returns true if successful, false if the entity doesn't have a Tags component or the tag doesn't exist
7397
- */
7398
- remove(entity: Entity, tagName: string): boolean;
7399
- }
7400
-
7401
- export declare interface TagsType {
7402
- tags: string[];
7403
- }
7404
-
7405
8048
  export declare type TargetEntityRaycastOptions = RaycastSystemOptions & TargetEntityRaycastSystemOptions;
7406
8049
 
7407
8050
  export declare type TargetEntityRaycastSystemOptions = {
@@ -7456,6 +8099,9 @@ export declare namespace Texture {
7456
8099
  export function decode(input: _m0.Reader | Uint8Array, length?: number): Texture;
7457
8100
  }
7458
8101
 
8102
+ /** @public */
8103
+ export declare const TextureCamera: LastWriteWinElementSetComponentDefinition<PBTextureCamera>;
8104
+
7459
8105
  /**
7460
8106
  * @public
7461
8107
  */
@@ -7566,6 +8212,9 @@ export declare interface TextureUnion {
7566
8212
  } | {
7567
8213
  $case: "videoTexture";
7568
8214
  videoTexture: VideoTexture;
8215
+ } | {
8216
+ $case: "uiTexture";
8217
+ uiTexture: UiCanvasTexture;
7569
8218
  } | undefined;
7570
8219
  }
7571
8220
 
@@ -7689,83 +8338,8 @@ export declare type Transport = {
7689
8338
  */
7690
8339
  export declare type TransportMessage = Omit<ReceiveMessage, 'data'>;
7691
8340
 
7692
- export declare const TriggerArea: TriggerAreaComponentDefinitionExtended;
7693
-
7694
- /**
7695
- * @public
7696
- */
7697
- export declare interface TriggerAreaComponentDefinitionExtended extends LastWriteWinElementSetComponentDefinition<PBTriggerArea> {
7698
- /**
7699
- * @public
7700
- * Set a box in the MeshCollider component
7701
- * @param entity - entity to create or replace the TriggerArea component
7702
- * @param collisionMask - the collision layers mask for the trigger to react, default: Player
7703
- */
7704
- setBox(entity: Entity, collisionMask?: ColliderLayer | ColliderLayer[]): void;
7705
- /**
7706
- * @public
7707
- * Set a sphere in the MeshCollider component
7708
- * @param entity - entity to create or replace the TriggerArea component
7709
- * @param collisionMask - the collision layers mask for the trigger to react, default: Player
7710
- */
7711
- setSphere(entity: Entity, collisionMask?: ColliderLayer | ColliderLayer[]): void;
7712
- }
7713
-
7714
- /**
7715
- * @public
7716
- */
7717
- export declare interface TriggerAreaEventsSystem {
7718
- /**
7719
- * @public
7720
- * Execute callback when an entity enters the Trigger Area
7721
- * @param entity - The entity that already has the TriggerArea component
7722
- * @param cb - Function to execute the 'Enter' type of result is detected
7723
- */
7724
- onTriggerEnter(entity: Entity, cb: TriggerAreaEventSystemCallback): void;
7725
- /**
7726
- * @public
7727
- * Remove the callback for Trigger Area 'Enter' type of result
7728
- * @param entity - Entity where the Trigger Area was attached
7729
- */
7730
- removeOnTriggerEnter(entity: Entity): void;
7731
- /**
7732
- * @public
7733
- * Execute callback when an entity stays in the Trigger Area
7734
- * @param entity - The entity that already has the TriggerArea component
7735
- * @param cb - Function to execute the 'Stay' type of result is detected
7736
- */
7737
- onTriggerStay(entity: Entity, cb: TriggerAreaEventSystemCallback): void;
7738
- /**
7739
- * @public
7740
- * Remove the callback for Trigger Area 'Stay' type of result
7741
- * @param entity - Entity where the Trigger Area was attached
7742
- */
7743
- removeOnTriggerStay(entity: Entity): void;
7744
- /**
7745
- * @public
7746
- * Execute callback when an entity exits the Trigger Area
7747
- * @param entity - The entity that already has the TriggerArea component
7748
- * @param cb - Function to execute the 'Exit' type of result is detected
7749
- */
7750
- onTriggerExit(entity: Entity, cb: TriggerAreaEventSystemCallback): void;
7751
- /**
7752
- * @public
7753
- * Remove the callback for Trigger Area 'Exit' type of result
7754
- * @param entity - Entity where the Trigger Area was attached
7755
- */
7756
- removeOnTriggerExit(entity: Entity): void;
7757
- }
7758
-
7759
- /**
7760
- * @public
7761
- * Register callback functions for trigger area results.
7762
- */
7763
- export declare const triggerAreaEventsSystem: TriggerAreaEventsSystem;
7764
-
7765
- /**
7766
- * @public
7767
- */
7768
- export declare type TriggerAreaEventSystemCallback = (result: DeepReadonlyObject<PBTriggerAreaResult>) => void;
8341
+ /** @public */
8342
+ export declare const TriggerArea: LastWriteWinElementSetComponentDefinition<PBTriggerArea>;
7769
8343
 
7770
8344
  /**
7771
8345
  * @public
@@ -7785,7 +8359,7 @@ export declare const enum TriggerAreaMeshType {
7785
8359
  }
7786
8360
 
7787
8361
  /** @public */
7788
- export declare const TriggerAreaResult: GrowOnlyValueSetComponentDefinition<PBTriggerAreaResult>;
8362
+ export declare const TriggerAreaResult: LastWriteWinElementSetComponentDefinition<PBTriggerAreaResult>;
7789
8363
 
7790
8364
  export declare const Tween: TweenComponentDefinitionExtended;
7791
8365
 
@@ -7797,82 +8371,6 @@ export declare interface TweenComponentDefinitionExtended extends LastWriteWinEl
7797
8371
  * Texture helpers with constructor
7798
8372
  */
7799
8373
  Mode: TweenHelper;
7800
- /**
7801
- * @public
7802
- *
7803
- * Creates or replaces a move tween component that animates an entity's position from start to end
7804
- * @param entity - entity to apply the tween to
7805
- * @param start - starting position vector
7806
- * @param end - ending position vector
7807
- * @param duration - duration of the tween in milliseconds
7808
- * @param easingFunction - easing function to use (defaults to EF_LINEAR)
7809
- */
7810
- setMove(entity: Entity, start: PBVector3, end: PBVector3, duration: number, easingFunction?: EasingFunction): void;
7811
- /**
7812
- * @public
7813
- *
7814
- * Creates or replaces a scale tween component that animates an entity's scale from start to end
7815
- * @param entity - entity to apply the tween to
7816
- * @param start - starting scale vector
7817
- * @param end - ending scale vector
7818
- * @param duration - duration of the tween in milliseconds
7819
- * @param easingFunction - easing function to use (defaults to EF_LINEAR)
7820
- */
7821
- setScale(entity: Entity, start: PBVector3, end: PBVector3, duration: number, easingFunction?: EasingFunction): void;
7822
- /**
7823
- * @public
7824
- *
7825
- * Creates or replaces a rotation tween component that animates an entity's rotation from start to end
7826
- * @param entity - entity to apply the tween to
7827
- * @param start - starting rotation quaternion
7828
- * @param end - ending rotation quaternion
7829
- * @param duration - duration of the tween in milliseconds
7830
- * @param easingFunction - easing function to use (defaults to EF_LINEAR)
7831
- */
7832
- setRotate(entity: Entity, start: PBQuaternion, end: PBQuaternion, duration: number, easingFunction?: EasingFunction): void;
7833
- /**
7834
- * @public
7835
- *
7836
- * Creates or replaces a texture move tween component that animates texture UV coordinates from start to end
7837
- * @param entity - entity to apply the tween to
7838
- * @param start - starting UV coordinates
7839
- * @param end - ending UV coordinates
7840
- * @param duration - duration of the tween in milliseconds
7841
- * @param movementType - type of texture movement (defaults to TMT_OFFSET)
7842
- * @param easingFunction - easing function to use (defaults to EF_LINEAR)
7843
- */
7844
- setTextureMove(entity: Entity, start: PBVector2, end: PBVector2, duration: number, movementType?: TextureMovementType, easingFunction?: EasingFunction): void;
7845
- /**
7846
- * @public
7847
- *
7848
- * Creates or replaces a continuous move tween component that moves an entity continuously in a direction
7849
- * @param entity - entity to apply the tween to
7850
- * @param direction - direction vector to move towards
7851
- * @param speed - speed of movement per second
7852
- * @param duration - duration of the tween in milliseconds (defaults to 0 for infinite)
7853
- */
7854
- setMoveContinuous(entity: Entity, direction: PBVector3, speed: number, duration?: number): void;
7855
- /**
7856
- * @public
7857
- *
7858
- * Creates or replaces a continuous rotation tween component that rotates an entity continuously
7859
- * @param entity - entity to apply the tween to
7860
- * @param direction - rotation direction quaternion
7861
- * @param speed - speed of rotation per second
7862
- * @param duration - duration of the tween in milliseconds (defaults to 0 for infinite)
7863
- */
7864
- setRotateContinuous(entity: Entity, direction: PBQuaternion, speed: number, duration?: number): void;
7865
- /**
7866
- * @public
7867
- *
7868
- * Creates or replaces a continuous texture move tween component that moves texture UV coordinates continuously
7869
- * @param entity - entity to apply the tween to
7870
- * @param direction - direction vector for UV movement
7871
- * @param speed - speed of UV movement per second
7872
- * @param movementType - type of texture movement (defaults to TMT_OFFSET)
7873
- * @param duration - duration of the tween in milliseconds (defaults to 0 for infinite)
7874
- */
7875
- setTextureMoveContinuous(entity: Entity, direction: PBVector2, speed: number, movementType?: TextureMovementType, duration?: number): void;
7876
8374
  }
7877
8375
 
7878
8376
  /**
@@ -7884,29 +8382,17 @@ export declare interface TweenHelper {
7884
8382
  */
7885
8383
  Move: (move: Move) => PBTween['mode'];
7886
8384
  /**
7887
- * @returns a move-continuous mode tween
7888
- */
7889
- MoveContinuous: (move: MoveContinuous) => PBTween['mode'];
7890
- /**
7891
- * @returns a rotate mode tween
8385
+ * @returns a move mode tween
7892
8386
  */
7893
8387
  Rotate: (rotate: Rotate) => PBTween['mode'];
7894
8388
  /**
7895
- * @returns a rotate-continuous mode tween
7896
- */
7897
- RotateContinuous: (rotate: RotateContinuous) => PBTween['mode'];
7898
- /**
7899
- * @returns a scale mode tween
8389
+ * @returns a move mode tween
7900
8390
  */
7901
8391
  Scale: (scale: Scale) => PBTween['mode'];
7902
8392
  /**
7903
- * @returns a texture-move mode tween
8393
+ * @returns a texture move mode tween
7904
8394
  */
7905
8395
  TextureMove: (textureMove: TextureMove) => PBTween['mode'];
7906
- /**
7907
- * @returns a texture-move-continuous mode tween
7908
- */
7909
- TextureMoveContinuous: (textureMove: TextureMoveContinuous) => PBTween['mode'];
7910
8396
  }
7911
8397
 
7912
8398
  /**
@@ -7970,6 +8456,8 @@ export declare interface UiBackgroundProps {
7970
8456
  uvs?: number[];
7971
8457
  /** AvatarTexture for the background */
7972
8458
  avatarTexture?: UiAvatarTexture;
8459
+ /** VideoTexture for the background */
8460
+ videoTexture?: UiVideoTexture;
7973
8461
  /** Texture for the background */
7974
8462
  texture?: UiTexture;
7975
8463
  }
@@ -7989,9 +8477,31 @@ export declare interface UiButtonProps extends UiLabelProps, EntityPropTypes {
7989
8477
  disabled?: boolean;
7990
8478
  }
7991
8479
 
8480
+ /** @public */
8481
+ export declare const UiCanvas: LastWriteWinElementSetComponentDefinition<PBUiCanvas>;
8482
+
7992
8483
  /** @public */
7993
8484
  export declare const UiCanvasInformation: LastWriteWinElementSetComponentDefinition<PBUiCanvasInformation>;
7994
8485
 
8486
+ /**
8487
+ * @public
8488
+ */
8489
+ export declare interface UiCanvasTexture {
8490
+ uiCanvasEntity: number;
8491
+ /** default = TextureWrapMode.Clamp */
8492
+ wrapMode?: TextureWrapMode | undefined;
8493
+ /** default = FilterMode.Bilinear */
8494
+ filterMode?: TextureFilterMode | undefined;
8495
+ }
8496
+
8497
+ /**
8498
+ * @public
8499
+ */
8500
+ export declare namespace UiCanvasTexture {
8501
+ export function encode(message: UiCanvasTexture, writer?: _m0.Writer): _m0.Writer;
8502
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): UiCanvasTexture;
8503
+ }
8504
+
7995
8505
  /**
7996
8506
  * @public
7997
8507
  */
@@ -8061,6 +8571,10 @@ export declare interface UiLabelProps {
8061
8571
  textAlign?: TextAlignType | undefined;
8062
8572
  /** Label font type. @defaultValue 'sans-serif' */
8063
8573
  font?: UiFontType | undefined;
8574
+ /** Outline width of the text. @defaultValue 0 */
8575
+ outlineWidth?: number | undefined;
8576
+ /** Outline color of the text. @defaultValue `{ r: 0, g: 0, b: 0, a: 1 }` */
8577
+ outlineColor?: PBColor4 | undefined;
8064
8578
  /** Behaviour when text reached. @defaultValue 'wrap' */
8065
8579
  textWrap?: UiTextWrapType | undefined;
8066
8580
  }
@@ -8070,6 +8584,9 @@ export declare interface UiLabelProps {
8070
8584
  */
8071
8585
  export declare type uint32 = number;
8072
8586
 
8587
+ /** @public */
8588
+ export declare const UiScrollResult: LastWriteWinElementSetComponentDefinition<PBUiScrollResult>;
8589
+
8073
8590
  /** @public */
8074
8591
  export declare const UiText: LastWriteWinElementSetComponentDefinition<PBUiText>;
8075
8592
 
@@ -8147,10 +8664,26 @@ export declare interface UiTransformProps {
8147
8664
  borderWidth?: Partial<Position> | PositionUnit;
8148
8665
  /** The opacity property sets the opacity level for an element, it's accumulated across children @defaultValue 1 */
8149
8666
  opacity?: number;
8667
+ /** A reference value to identify the element, default empty */
8668
+ elementId?: string;
8669
+ /** default position=(0,0) if it aplies, a vector or a reference-id */
8670
+ scrollPosition?: PBVector2 | string;
8671
+ /** default ShowScrollBar.SSB_BOTH */
8672
+ scrollVisible?: ScrollVisibleType;
8150
8673
  /** default 0 */
8151
8674
  zIndex?: number;
8152
8675
  }
8153
8676
 
8677
+ /**
8678
+ * Texture
8679
+ * @public
8680
+ */
8681
+ export declare interface UiVideoTexture {
8682
+ videoPlayerEntity: Entity;
8683
+ wrapMode?: TextureWrapType;
8684
+ filterMode?: TextureFilterType;
8685
+ }
8686
+
8154
8687
  /**
8155
8688
  * @public
8156
8689
  */