@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/alpha.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
  */
@@ -2253,13 +2394,6 @@ export declare interface IEngine {
2253
2394
  * @typeParam T - The type of the entity name value
2254
2395
  */
2255
2396
  getEntityByName<T = never, K = T>(value: K & (T extends never ? never : string)): Entity;
2256
- /**
2257
- * @public
2258
- * Get all entities that have a specific tag in their Tag component
2259
- * @param tag - Tag to search
2260
- * @returns Iterator of entities that have the given tag
2261
- */
2262
- getEntitiesByTag(tagName: string): Iterable<Entity>;
2263
2397
  /**
2264
2398
  * @public
2265
2399
  * @param deltaTime - deltaTime in seconds
@@ -2428,6 +2562,12 @@ export declare type IInputSystem = {
2428
2562
  * @returns the input command info or undefined if there is no command in the last tick-update
2429
2563
  */
2430
2564
  getInputCommand: (inputAction: InputAction, pointerEventType: PointerEventType, entity?: Entity) => PBPointerEventsResult | null;
2565
+ /**
2566
+ * @public
2567
+ * Get an ordered iterator over events received within the current frame.
2568
+ * @returns the iterator
2569
+ */
2570
+ getInputCommands: () => Generator<PBPointerEventsResult>;
2431
2571
  };
2432
2572
 
2433
2573
  /**
@@ -2691,31 +2831,8 @@ export declare interface LastWriteWinElementSetComponentDefinition<T> extends Ba
2691
2831
  getOrCreateMutable(entity: Entity, initialValue?: T): T;
2692
2832
  }
2693
2833
 
2694
- export declare const LightSource: LightSourceComponentDefinitionExtended;
2695
-
2696
- /**
2697
- * @public
2698
- */
2699
- export declare interface LightSourceComponentDefinitionExtended extends LastWriteWinElementSetComponentDefinition<PBLightSource> {
2700
- /**
2701
- * LightSource helper with constructor
2702
- */
2703
- Type: LightSourceHelper;
2704
- }
2705
-
2706
- /**
2707
- * @public
2708
- */
2709
- export declare interface LightSourceHelper {
2710
- /**
2711
- * @returns a Light Source type
2712
- */
2713
- Point: (point: PBLightSource_Point) => PBLightSource['type'];
2714
- /**
2715
- * @returns a Light Source type
2716
- */
2717
- Spot: (spot: PBLightSource_Spot) => PBLightSource['type'];
2718
- }
2834
+ /** @public */
2835
+ export declare const LightSource: LastWriteWinElementSetComponentDefinition<PBLightSource>;
2719
2836
 
2720
2837
  /**
2721
2838
  * User key event Listeners
@@ -2723,13 +2840,29 @@ export declare interface LightSourceHelper {
2723
2840
  */
2724
2841
  export declare type Listeners = {
2725
2842
  /** triggered on mouse down event */
2726
- onMouseDown?: Callback;
2843
+ onMouseDown?: EventSystemCallback;
2727
2844
  /** triggered on mouse up event */
2728
- onMouseUp?: Callback;
2845
+ onMouseUp?: EventSystemCallback;
2729
2846
  /** triggered on mouse hover event */
2730
- onMouseEnter?: Callback;
2847
+ onMouseEnter?: EventSystemCallback;
2731
2848
  /** triggered on mouse leave event */
2732
- onMouseLeave?: Callback;
2849
+ onMouseLeave?: EventSystemCallback;
2850
+ /** triggered on mouse drag event */
2851
+ onMouseDrag?: EventSystemCallback;
2852
+ /** triggered on mouse drag event */
2853
+ onMouseDragLocked?: EventSystemCallback;
2854
+ /** triggered on mouse drag event */
2855
+ onMouseDragEnd?: EventSystemCallback;
2856
+ /** triggered on input down event */
2857
+ onInputDown?: MultiCallback;
2858
+ /** triggered on input up event */
2859
+ onInputUp?: MultiCallback;
2860
+ /** triggered on input drag event */
2861
+ onInputDrag?: MultiCallback;
2862
+ /** triggered on input drag event */
2863
+ onInputDragLocked?: MultiCallback;
2864
+ /** triggered on input drag event */
2865
+ onInputDragEnd?: MultiCallback;
2733
2866
  };
2734
2867
 
2735
2868
  /**
@@ -3598,6 +3731,14 @@ export declare interface MeshColliderComponentDefinitionExtended extends LastWri
3598
3731
  * @param colliderMask - the set of layer where the collider reacts, default: Physics and Pointer
3599
3732
  */
3600
3733
  setSphere(entity: Entity, colliderLayers?: ColliderLayer | ColliderLayer[]): void;
3734
+ /**
3735
+ * @public
3736
+ * Set a gltf internal mesh in the MeshCollider component
3737
+ * @param entity - entity to create or replace the MeshRenderer component
3738
+ * @param source - the path to the gltf
3739
+ * @param meshName - the name of the mesh in the gltf
3740
+ */
3741
+ setGltfMesh(entity: Entity, source: string, meshName: string, colliderLayers?: ColliderLayer | ColliderLayer[]): void;
3601
3742
  }
3602
3743
 
3603
3744
  export declare const MeshRenderer: MeshRendererComponentDefinitionExtended;
@@ -3634,6 +3775,14 @@ export declare interface MeshRendererComponentDefinitionExtended extends LastWri
3634
3775
  * @param entity - entity to create or replace the MeshRenderer component
3635
3776
  */
3636
3777
  setSphere(entity: Entity): void;
3778
+ /**
3779
+ * @public
3780
+ * Set a gltf internal mesh in the MeshRenderer component
3781
+ * @param entity - entity to create or replace the MeshRenderer component
3782
+ * @param source - the path to the gltf
3783
+ * @param meshName - the name of the mesh in the gltf
3784
+ */
3785
+ setGltfMesh(entity: Entity, source: string, meshName: string): void;
3637
3786
  }
3638
3787
 
3639
3788
  /**
@@ -3682,6 +3831,19 @@ export declare namespace MoveContinuous {
3682
3831
  export function decode(input: _m0.Reader | Uint8Array, length?: number): MoveContinuous;
3683
3832
  }
3684
3833
 
3834
+ /**
3835
+ * a record object mapping `InputAction`s to functions.
3836
+ *
3837
+ * @example
3838
+ * onInputDown={{
3839
+ * [InputAction.IA_PRIMARY]: (eventData) => { console.log("primary") },
3840
+ * [InputAction.IA_SECONDARY]: () => { console.log("secondary") },
3841
+ * }}
3842
+ *
3843
+ * @public
3844
+ */
3845
+ export declare type MultiCallback = Partial<Record<InputAction, EventSystemCallback>>;
3846
+
3685
3847
  export declare const Name: NameComponent;
3686
3848
 
3687
3849
  export declare type NameComponent = LastWriteWinElementSetComponentDefinition<NameType>;
@@ -4062,6 +4224,25 @@ export declare const onVideoEvent: Observable<{
4062
4224
  totalVideoLength: number;
4063
4225
  }>;
4064
4226
 
4227
+ /**
4228
+ * @public
4229
+ */
4230
+ export declare interface Orthographic {
4231
+ /**
4232
+ * vertical extent of the visible range in meters
4233
+ * defaults to 4m
4234
+ */
4235
+ verticalRange?: number | undefined;
4236
+ }
4237
+
4238
+ /**
4239
+ * @public
4240
+ */
4241
+ export declare namespace Orthographic {
4242
+ export function encode(message: Orthographic, writer?: _m0.Writer): _m0.Writer;
4243
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): Orthographic;
4244
+ }
4245
+
4065
4246
  /**
4066
4247
  * @public
4067
4248
  * The overflow property controls what happens to content that is too big to fit into an area
@@ -4288,6 +4469,8 @@ export declare namespace PBAvatarEmoteCommand {
4288
4469
  export declare interface PBAvatarEquippedData {
4289
4470
  wearableUrns: string[];
4290
4471
  emoteUrns: string[];
4472
+ /** slots that will render even if hidden */
4473
+ forceRender: string[];
4291
4474
  }
4292
4475
 
4293
4476
  /**
@@ -4322,6 +4505,9 @@ export declare interface PBAvatarModifierArea {
4322
4505
  excludeIds: string[];
4323
4506
  /** list of modifiers to apply */
4324
4507
  modifiers: AvatarModifierType[];
4508
+ movementSettings?: AvatarMovementSettings | undefined;
4509
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
4510
+ useColliderRange?: boolean | undefined;
4325
4511
  }
4326
4512
 
4327
4513
  /**
@@ -4380,6 +4566,8 @@ export declare interface PBAvatarShape {
4380
4566
  emotes: string[];
4381
4567
  /** hides the skin + hair + facial features (default: false) */
4382
4568
  showOnlyWearables?: boolean | undefined;
4569
+ /** slots that will render even if hidden */
4570
+ forceRender: string[];
4383
4571
  }
4384
4572
 
4385
4573
  /**
@@ -4414,6 +4602,51 @@ export declare namespace PBBillboard {
4414
4602
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBBillboard;
4415
4603
  }
4416
4604
 
4605
+ /**
4606
+ * @public
4607
+ */
4608
+ export declare interface PBCameraLayer {
4609
+ /**
4610
+ * layer to which these settings apply. must be > 0
4611
+ * Layer 0 is the default "real world" layer viewed by the player and cannot be modified.
4612
+ */
4613
+ layer: number;
4614
+ /** should the sun light affect this layer? default false */
4615
+ directionalLight?: boolean | undefined;
4616
+ /** should this layer show player avatars? default false */
4617
+ showAvatars?: boolean | undefined;
4618
+ /** should this layer show the sky? default false */
4619
+ showSkybox?: boolean | undefined;
4620
+ /** should this layer show distance fog? default false */
4621
+ showFog?: boolean | undefined;
4622
+ /** ambient light overrides for this layer. default -> use same as main camera */
4623
+ ambientColorOverride?: PBColor3 | undefined;
4624
+ ambientBrightnessOverride?: number | undefined;
4625
+ }
4626
+
4627
+ /**
4628
+ * @public
4629
+ */
4630
+ export declare namespace PBCameraLayer {
4631
+ export function encode(message: PBCameraLayer, writer?: _m0.Writer): _m0.Writer;
4632
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBCameraLayer;
4633
+ }
4634
+
4635
+ /**
4636
+ * @public
4637
+ */
4638
+ export declare interface PBCameraLayers {
4639
+ layers: number[];
4640
+ }
4641
+
4642
+ /**
4643
+ * @public
4644
+ */
4645
+ export declare namespace PBCameraLayers {
4646
+ export function encode(message: PBCameraLayers, writer?: _m0.Writer): _m0.Writer;
4647
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBCameraLayers;
4648
+ }
4649
+
4417
4650
  /**
4418
4651
  * The CameraMode component can be used to determine whether the player is using a first-person o
4419
4652
  * third-person view.
@@ -4436,7 +4669,7 @@ export declare namespace PBCameraMode {
4436
4669
 
4437
4670
  /**
4438
4671
  * The CameraModeArea component can be attached to an Entity to define a region of space where
4439
- * the player's camera mode (1st-person or 3rd-person) is overridden.
4672
+ * the player's camera mode (1st-person, 3rd-person or cinematic) is overridden.
4440
4673
  *
4441
4674
  * The Entity's Transform position determines the center-point of the region, while its size is
4442
4675
  * given as a vector in the `area` property below. The Transform rotation is applied, but the scale
@@ -4446,6 +4679,8 @@ export declare namespace PBCameraMode {
4446
4679
  *
4447
4680
  * Note that, while commonly used to delineate a 2D area in a scene (hence the name), the region
4448
4681
  * is actually a 3D volume.
4682
+ *
4683
+ * When mode is set to CtCinematic, the cinematic_settings field must also be provided.
4449
4684
  */
4450
4685
  /**
4451
4686
  * @public
@@ -4455,6 +4690,9 @@ export declare interface PBCameraModeArea {
4455
4690
  area: PBVector3 | undefined;
4456
4691
  /** the camera mode to enforce */
4457
4692
  mode: CameraType;
4693
+ cinematicSettings?: CinematicSettings | undefined;
4694
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
4695
+ useColliderRange?: boolean | undefined;
4458
4696
  }
4459
4697
 
4460
4698
  /**
@@ -4526,6 +4764,39 @@ export declare namespace PBEngineInfo {
4526
4764
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBEngineInfo;
4527
4765
  }
4528
4766
 
4767
+ /**
4768
+ * defines the global scene light settings. must be added to the scene root.
4769
+ * to control sunlight color, intensity, shadows etc, you can also add a PBLight to the scene root.
4770
+ */
4771
+ /**
4772
+ * @public
4773
+ */
4774
+ export declare interface PBGlobalLight {
4775
+ /**
4776
+ * the direction the directional light shines in.
4777
+ * default depends on time of day and explorer implementation
4778
+ */
4779
+ direction?: PBVector3 | undefined;
4780
+ /**
4781
+ * ambient light color
4782
+ * default: White
4783
+ */
4784
+ ambientColor?: PBColor3 | undefined;
4785
+ /**
4786
+ * ambient light intensity. the explorer default ambient brightness is multiplied by this non-physical quantity.
4787
+ * default 1
4788
+ */
4789
+ ambientBrightness?: number | undefined;
4790
+ }
4791
+
4792
+ /**
4793
+ * @public
4794
+ */
4795
+ export declare namespace PBGlobalLight {
4796
+ export function encode(message: PBGlobalLight, writer?: _m0.Writer): _m0.Writer;
4797
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGlobalLight;
4798
+ }
4799
+
4529
4800
  /**
4530
4801
  * GltfContainer loads a GLTF file (and any additional files packaged inside) attached to an Entity.
4531
4802
  *
@@ -4561,6 +4832,25 @@ export declare namespace PBGltfContainer {
4561
4832
  */
4562
4833
  export declare interface PBGltfContainerLoadingState {
4563
4834
  currentState: LoadingState;
4835
+ /** all node paths in the gltf, which can be used with a GltfNode to inspect and modify the gltf contents */
4836
+ nodePaths: string[];
4837
+ /** all meshes in the gltf. unnamed meshes will be auto-assigned a name of the form `MeshX` or `MeshX/PrimitiveY` */
4838
+ meshNames: string[];
4839
+ /**
4840
+ * where X is the mesh index and Y is the primitive index (and there is more than 1 primitive). note this may
4841
+ * conflict with manually named meshes - to avoid any issues make sure all your meshes are explicitly named.
4842
+ */
4843
+ materialNames: string[];
4844
+ /**
4845
+ * X is the material index. note this may conflict with manually named materials - to avoid any issues make
4846
+ * sure all your materials are explicitly named.
4847
+ */
4848
+ skinNames: string[];
4849
+ /**
4850
+ * X is the skin index. note this may conflict with manually named skins - to avoid any issues make sure all
4851
+ * your skins are explicitly named.
4852
+ */
4853
+ animationNames: string[];
4564
4854
  }
4565
4855
 
4566
4856
  /**
@@ -4571,6 +4861,57 @@ export declare namespace PBGltfContainerLoadingState {
4571
4861
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfContainerLoadingState;
4572
4862
  }
4573
4863
 
4864
+ /**
4865
+ * a GltfNode links a scene entity with a node from within a gltf, allowing the scene to inspect it or modify it.
4866
+ * This component must be added to a direct child of an entity with a PBGltfContainer component, or
4867
+ * to a direct child of another entity with a GltfNode component, and the referenced gltf node must be a descendent of the gltf node
4868
+ * in the parent.
4869
+ * The name must match the path of one of the nodes within the Gltf. These are available on the GltfContainerLoadingState component.
4870
+ *
4871
+ * The renderer will attach a PBGltfNodeState to the entity describing the state. Once the state is `GNS_READY`,
4872
+ * - the `Transform` will be updated to match the position of the node within the gltf (relative to the gltf root, or the parent node),
4873
+ * - a `MeshRenderer` with a GltfMesh mesh type will be added (if the gltf node has a mesh).
4874
+ * - a `MeshCollider` with a GltfMesh mesh type will be added (if the gltf node has a collider).
4875
+ * - a `Material` component including a GltfMaterial reference will be added (if the gltf node has a material).
4876
+ *
4877
+ * After creation, if an animation moves the node, the `Transform` will be updated.
4878
+ *
4879
+ * From the scene, you can modify various components to alter the gltf node:
4880
+ * - modifying the `Transform` position/rotation/scale will move the node. The position is interpreted relative to the gltf root (or parent node),
4881
+ * regardless of any intermediate gltf node hierarchy.
4882
+ * If an animation is playing, the animation takes priority and the scene entity's position will be updated to match the animation.
4883
+ * - `Visibility` can be added to hide or show the node and it's children in the gltf hierarchy.
4884
+ * - `MeshRenderer` can be added/modified/removed to create/modify/remove a mesh on the node.
4885
+ * - `MeshCollider` can be added/modified/removed to create/modify/remove a collider on the node.
4886
+ * - `Material` can be added or modified to change the material properties. If the gltf node has a material, the original material will be
4887
+ * 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
4888
+ * PBMaterial will be maintained.
4889
+ *
4890
+ * The scene can add additional entities as children to the gltf node, but structural modifications of the gltf are not possible:
4891
+ * - changing the scene hierarchy will not change the gltf node hierarchy. Moving the entity out of the gltf will sever the link and
4892
+ * change the state to `GNS_FAILED`.
4893
+ * - deleting the scene entity will not delete the gltf node.
4894
+ *
4895
+ * Removing the GltfNode will revert any changes to the original gltf. If the GltfNode component is removed and the mesh/collider/material
4896
+ * are not removed, this will result in a duplication of these components as the previously-linked entity will retain it's components and
4897
+ * the gltf node will also be displayed.
4898
+ */
4899
+ /**
4900
+ * @public
4901
+ */
4902
+ export declare interface PBGltfNode {
4903
+ /** the path of the target node in the Gltf. */
4904
+ path: string;
4905
+ }
4906
+
4907
+ /**
4908
+ * @public
4909
+ */
4910
+ export declare namespace PBGltfNode {
4911
+ export function encode(message: PBGltfNode, writer?: _m0.Writer): _m0.Writer;
4912
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNode;
4913
+ }
4914
+
4574
4915
  /**
4575
4916
  * GltfNodeModifiers component is to be used attached to entities that have the GltfContainer component.
4576
4917
  *
@@ -4616,6 +4957,26 @@ export declare namespace PBGltfNodeModifiers_GltfNodeModifier {
4616
4957
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNodeModifiers_GltfNodeModifier;
4617
4958
  }
4618
4959
 
4960
+ /**
4961
+ * The state of a linked gltf node.
4962
+ * If the state is GNSV_FAILED, the renderer may describe the failure in the error string.
4963
+ */
4964
+ /**
4965
+ * @public
4966
+ */
4967
+ export declare interface PBGltfNodeState {
4968
+ state: GltfNodeStateValue;
4969
+ error?: string | undefined;
4970
+ }
4971
+
4972
+ /**
4973
+ * @public
4974
+ */
4975
+ export declare namespace PBGltfNodeState {
4976
+ export function encode(message: PBGltfNodeState, writer?: _m0.Writer): _m0.Writer;
4977
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNodeState;
4978
+ }
4979
+
4619
4980
  /**
4620
4981
  * @public
4621
4982
  */
@@ -4751,6 +5112,14 @@ export declare interface PBMaterial {
4751
5112
  $case: "pbr";
4752
5113
  pbr: PBMaterial_PbrMaterial;
4753
5114
  } | undefined;
5115
+ /**
5116
+ * A gltf material that may provide additional features not supported by the PbMaterial fields.
5117
+ * If both gltf and material fields are provided, the gltf will be used only for extended features not
5118
+ * supported by the PbMaterial.
5119
+ * If this is provided and the `material` field is not provided, the renderer will update the material
5120
+ * field with data that reflects the gltf material once it is loaded.
5121
+ */
5122
+ gltf?: PBMaterial_GltfMaterial | undefined;
4754
5123
  }
4755
5124
 
4756
5125
  /**
@@ -4761,6 +5130,22 @@ export declare namespace PBMaterial {
4761
5130
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial;
4762
5131
  }
4763
5132
 
5133
+ /**
5134
+ * @public
5135
+ */
5136
+ export declare interface PBMaterial_GltfMaterial {
5137
+ gltfSrc: string;
5138
+ name: string;
5139
+ }
5140
+
5141
+ /**
5142
+ * @public
5143
+ */
5144
+ export declare namespace PBMaterial_GltfMaterial {
5145
+ export function encode(message: PBMaterial_GltfMaterial, writer?: _m0.Writer): _m0.Writer;
5146
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial_GltfMaterial;
5147
+ }
5148
+
4764
5149
  /**
4765
5150
  * @public
4766
5151
  */
@@ -4857,6 +5242,9 @@ export declare interface PBMeshCollider {
4857
5242
  } | {
4858
5243
  $case: "plane";
4859
5244
  plane: PBMeshCollider_PlaneMesh;
5245
+ } | {
5246
+ $case: "gltf";
5247
+ gltf: PBMeshCollider_GltfMesh;
4860
5248
  } | undefined;
4861
5249
  }
4862
5250
 
@@ -4902,6 +5290,25 @@ export declare namespace PBMeshCollider_CylinderMesh {
4902
5290
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_CylinderMesh;
4903
5291
  }
4904
5292
 
5293
+ /** A collider constructed from a Gltf Mesh. */
5294
+ /**
5295
+ * @public
5296
+ */
5297
+ export declare interface PBMeshCollider_GltfMesh {
5298
+ /** the GLTF file path as listed in the scene's manifest. */
5299
+ gltfSrc: string;
5300
+ /** the name of the mesh asset */
5301
+ name: string;
5302
+ }
5303
+
5304
+ /**
5305
+ * @public
5306
+ */
5307
+ export declare namespace PBMeshCollider_GltfMesh {
5308
+ export function encode(message: PBMeshCollider_GltfMesh, writer?: _m0.Writer): _m0.Writer;
5309
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_GltfMesh;
5310
+ }
5311
+
4905
5312
  /** PlaneMesh is a 2D rectangle described by the Entity's Transform. */
4906
5313
  /**
4907
5314
  * @public
@@ -4934,13 +5341,11 @@ export declare namespace PBMeshCollider_SphereMesh {
4934
5341
 
4935
5342
  /**
4936
5343
  * The MeshRenderer component renders a basic geometric shape for an Entity. It can be a cube, a
4937
- * plane, a sphere or a cylinder.
5344
+ * plane, a sphere, a cylinder, or a Gltf mesh.
4938
5345
  *
4939
5346
  * The cube and plane variants can include a UV texture mapping, so specific areas of a material
4940
5347
  * texture are rendered on different faces of the shape. They are serialized as a sequence of 2D
4941
5348
  * `float` coordinates, one for each corner of each side of each face.
4942
- *
4943
- * More complex shapes require the use of a `GltfContainer` component.
4944
5349
  */
4945
5350
  /**
4946
5351
  * @public
@@ -4958,6 +5363,9 @@ export declare interface PBMeshRenderer {
4958
5363
  } | {
4959
5364
  $case: "plane";
4960
5365
  plane: PBMeshRenderer_PlaneMesh;
5366
+ } | {
5367
+ $case: "gltf";
5368
+ gltf: PBMeshRenderer_GltfMesh;
4961
5369
  } | undefined;
4962
5370
  }
4963
5371
 
@@ -5005,6 +5413,25 @@ export declare namespace PBMeshRenderer_CylinderMesh {
5005
5413
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_CylinderMesh;
5006
5414
  }
5007
5415
 
5416
+ /** A mesh from a Gltf. */
5417
+ /**
5418
+ * @public
5419
+ */
5420
+ export declare interface PBMeshRenderer_GltfMesh {
5421
+ /** the GLTF file path as listed in the scene's manifest. */
5422
+ gltfSrc: string;
5423
+ /** the name of the mesh asset */
5424
+ name: string;
5425
+ }
5426
+
5427
+ /**
5428
+ * @public
5429
+ */
5430
+ export declare namespace PBMeshRenderer_GltfMesh {
5431
+ export function encode(message: PBMeshRenderer_GltfMesh, writer?: _m0.Writer): _m0.Writer;
5432
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_GltfMesh;
5433
+ }
5434
+
5008
5435
  /** PlaneMesh renders a 2D rectangular shape. */
5009
5436
  /**
5010
5437
  * @public
@@ -5253,7 +5680,10 @@ export declare interface PBPrimaryPointerInfo {
5253
5680
  screenCoordinates?: PBVector2 | undefined;
5254
5681
  /** Movement since last frame (pixels) */
5255
5682
  screenDelta?: PBVector2 | undefined;
5256
- /** Direction vector for 3D ray casting */
5683
+ /**
5684
+ * ray direction that can be used with the primary camera origin for
5685
+ * raycasting from the cursor into the world
5686
+ */
5257
5687
  worldRayDirection?: PBVector3 | undefined;
5258
5688
  }
5259
5689
 
@@ -5479,6 +5909,46 @@ export declare namespace PBTextShape {
5479
5909
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBTextShape;
5480
5910
  }
5481
5911
 
5912
+ /**
5913
+ * @public
5914
+ */
5915
+ export declare interface PBTextureCamera {
5916
+ /** rendered texture width */
5917
+ width?: number | undefined;
5918
+ /** rendered texture height */
5919
+ height?: number | undefined;
5920
+ /**
5921
+ * which layer of entities to render. entity layers can be specified by adding PBCameraLayers to target entities.
5922
+ * defaults to 0
5923
+ */
5924
+ layer?: number | undefined;
5925
+ /** default black */
5926
+ clearColor?: PBColor4 | undefined;
5927
+ /** default infinity */
5928
+ farPlane?: number | undefined;
5929
+ mode?: {
5930
+ $case: "perspective";
5931
+ perspective: Perspective;
5932
+ } | {
5933
+ $case: "orthographic";
5934
+ orthographic: Orthographic;
5935
+ } | undefined;
5936
+ /**
5937
+ * controls whether this camera acts as a receiver for audio on sources with matching `PBCameraLayers`.
5938
+ * range: 0 (off) - 1 (full volume)
5939
+ * default: 0
5940
+ */
5941
+ volume?: number | undefined;
5942
+ }
5943
+
5944
+ /**
5945
+ * @public
5946
+ */
5947
+ export declare namespace PBTextureCamera {
5948
+ export function encode(message: PBTextureCamera, writer?: _m0.Writer): _m0.Writer;
5949
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBTextureCamera;
5950
+ }
5951
+
5482
5952
  /**
5483
5953
  * The PBTriggerArea component is used to raise collision triggering events (through the TriggerAreaResult component)
5484
5954
  * when entities enter this component's defined area.
@@ -5657,6 +6127,25 @@ export declare namespace PBUiBackground {
5657
6127
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiBackground;
5658
6128
  }
5659
6129
 
6130
+ /** The UiCanvas component can be attached to a ui root entity to specify properties of the ui texture. */
6131
+ /**
6132
+ * @public
6133
+ */
6134
+ export declare interface PBUiCanvas {
6135
+ width: number;
6136
+ height: number;
6137
+ /** default = (0.0, 0.0, 0.0, 0.0) / transparent */
6138
+ color?: PBColor4 | undefined;
6139
+ }
6140
+
6141
+ /**
6142
+ * @public
6143
+ */
6144
+ export declare namespace PBUiCanvas {
6145
+ export function encode(message: PBUiCanvas, writer?: _m0.Writer): _m0.Writer;
6146
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiCanvas;
6147
+ }
6148
+
5660
6149
  /** This component is created by the renderer and used by the scenes to know the resolution of the UI canvas */
5661
6150
  /**
5662
6151
  * @public
@@ -5773,6 +6262,21 @@ export declare namespace PBUiInputResult {
5773
6262
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiInputResult;
5774
6263
  }
5775
6264
 
6265
+ /**
6266
+ * @public
6267
+ */
6268
+ export declare interface PBUiScrollResult {
6269
+ value: PBVector2 | undefined;
6270
+ }
6271
+
6272
+ /**
6273
+ * @public
6274
+ */
6275
+ export declare namespace PBUiScrollResult {
6276
+ export function encode(message: PBUiScrollResult, writer?: _m0.Writer): _m0.Writer;
6277
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiScrollResult;
6278
+ }
6279
+
5776
6280
  /**
5777
6281
  * @public
5778
6282
  */
@@ -5789,6 +6293,10 @@ export declare interface PBUiText {
5789
6293
  fontSize?: number | undefined;
5790
6294
  /** wrap text when the border is reached (default: TW_WRAP) */
5791
6295
  textWrap?: TextWrap | undefined;
6296
+ /** width of the outline (default: 0) */
6297
+ outlineWidth?: number | undefined;
6298
+ /** RGBA color of the outline (default: opaque black) */
6299
+ outlineColor?: PBColor4 | undefined;
5792
6300
  }
5793
6301
 
5794
6302
  /**
@@ -5916,6 +6424,12 @@ export declare interface PBUiTransform {
5916
6424
  borderRightColor?: PBColor4 | undefined;
5917
6425
  /** default: 1 */
5918
6426
  opacity?: number | undefined;
6427
+ /** reference for scroll_position. default empty */
6428
+ elementId?: string | undefined;
6429
+ /** default position=(0,0) */
6430
+ scrollPosition?: ScrollPositionValue | undefined;
6431
+ /** default ShowScrollBar.SSB_BOTH */
6432
+ scrollVisible?: ShowScrollBar | undefined;
5919
6433
  /** default: 0 — controls render stacking order. Higher values appear in front of lower values. */
5920
6434
  zIndex?: number | undefined;
5921
6435
  }
@@ -6047,6 +6561,25 @@ export declare namespace PBVisibilityComponent {
6047
6561
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBVisibilityComponent;
6048
6562
  }
6049
6563
 
6564
+ /**
6565
+ * @public
6566
+ */
6567
+ export declare interface Perspective {
6568
+ /**
6569
+ * vertical field of view in radians
6570
+ * defaults to pi/4 = 45 degrees
6571
+ */
6572
+ fieldOfView?: number | undefined;
6573
+ }
6574
+
6575
+ /**
6576
+ * @public
6577
+ */
6578
+ export declare namespace Perspective {
6579
+ export function encode(message: Perspective, writer?: _m0.Writer): _m0.Writer;
6580
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): Perspective;
6581
+ }
6582
+
6050
6583
  /**
6051
6584
  * Represens a plane by the equation ax + by + cz + d = 0
6052
6585
  * @public
@@ -6202,11 +6735,37 @@ export declare interface PointerEventsSystem {
6202
6735
  * @param entity - Entity where the callback was attached
6203
6736
  */
6204
6737
  removeOnPointerHoverLeave(entity: Entity): void;
6738
+ /**
6739
+ * @public
6740
+ * Remove the callback for onPointerDrag event
6741
+ * @param entity - Entity where the callback was attached
6742
+ */
6743
+ removeOnPointerDrag(entity: Entity): void;
6744
+ /**
6745
+ * @public
6746
+ * Remove the callback for onPointerDragLocked event
6747
+ * @param entity - Entity where the callback was attached
6748
+ */
6749
+ removeOnPointerDragLocked(entity: Entity): void;
6750
+ /**
6751
+ * @public
6752
+ * Remove the callback for onPointerDragEnd event
6753
+ * @param entity - Entity where the callback was attached
6754
+ */
6755
+ removeOnPointerDragEnd(entity: Entity): void;
6756
+ /**
6757
+ * @public
6758
+ * Execute callbacks when the user presses one of the InputButtons pointing at the entity
6759
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
6760
+ */
6761
+ onPointerDown(pointerData: {
6762
+ entity: Entity;
6763
+ optsList: EventSystemOptionsCallback[];
6764
+ }): void;
6205
6765
  /**
6206
6766
  * @public
6207
6767
  * Execute callback when the user press the InputButton pointing at the entity
6208
6768
  * @param pointerData - Entity to attach the callback, Opts to trigger Feedback and Button
6209
- * @param cb - Function to execute when click fires
6210
6769
  */
6211
6770
  onPointerDown(pointerData: {
6212
6771
  entity: Entity;
@@ -6219,6 +6778,15 @@ export declare interface PointerEventsSystem {
6219
6778
  * @param opts - Opts to trigger Feedback and Button
6220
6779
  */
6221
6780
  onPointerDown(entity: Entity, cb: EventSystemCallback, opts?: Partial<EventSystemOptions>): void;
6781
+ /**
6782
+ * @public
6783
+ * Execute callbacks when the user releases one of the InputButtons pointing at the entity
6784
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
6785
+ */
6786
+ onPointerUp(pointerData: {
6787
+ entity: Entity;
6788
+ optsList: EventSystemOptionsCallback[];
6789
+ }): void;
6222
6790
  /**
6223
6791
  * @public
6224
6792
  * Execute callback when the user releases the InputButton pointing at the entity
@@ -6256,6 +6824,64 @@ export declare interface PointerEventsSystem {
6256
6824
  entity: Entity;
6257
6825
  opts?: Partial<EventSystemOptions>;
6258
6826
  }, cb: EventSystemCallback): void;
6827
+ /**
6828
+ * @public
6829
+ * Execute callbacks when the user drags the pointer from inside the entity
6830
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
6831
+ */
6832
+ onPointerDrag(pointerData: {
6833
+ entity: Entity;
6834
+ optsList: EventSystemOptionsCallback[];
6835
+ }): void;
6836
+ /**
6837
+ * @public
6838
+ * Execute callback when the user clicks and drags the pointer from inside the entity
6839
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
6840
+ * @param cb - Function to execute when click fires
6841
+ */
6842
+ onPointerDrag(pointerData: {
6843
+ entity: Entity;
6844
+ opts?: Partial<EventSystemOptions>;
6845
+ }, cb: EventSystemCallback): void;
6846
+ /**
6847
+ * @public
6848
+ * Execute callbacks when the user drags the pointer from inside the entity, locking the cursor in place.
6849
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
6850
+ */
6851
+ onPointerDragLocked(pointerData: {
6852
+ entity: Entity;
6853
+ optsList: EventSystemOptionsCallback[];
6854
+ }): void;
6855
+ /**
6856
+ * @public
6857
+ * Execute callback when the user clicks and drags the pointer from inside the entity,
6858
+ * locking the cursor in place
6859
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
6860
+ * @param cb - Function to execute when click fires
6861
+ */
6862
+ onPointerDragLocked(pointerData: {
6863
+ entity: Entity;
6864
+ opts?: Partial<EventSystemOptions>;
6865
+ }, cb: EventSystemCallback): void;
6866
+ /**
6867
+ * @public
6868
+ * Execute callbacks when the user releases a button after a drag
6869
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
6870
+ */
6871
+ onPointerDragEnd(pointerData: {
6872
+ entity: Entity;
6873
+ optsList: EventSystemOptionsCallback[];
6874
+ }): void;
6875
+ /**
6876
+ * @public
6877
+ * Execute callback when the user releases the button after a drag
6878
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
6879
+ * @param cb - Function to execute when click fires
6880
+ */
6881
+ onPointerDragEnd(pointerData: {
6882
+ entity: Entity;
6883
+ opts?: Partial<EventSystemOptions>;
6884
+ }, cb: EventSystemCallback): void;
6259
6885
  }
6260
6886
 
6261
6887
  /**
@@ -6272,7 +6898,10 @@ export declare const enum PointerEventType {
6272
6898
  PET_UP = 0,
6273
6899
  PET_DOWN = 1,
6274
6900
  PET_HOVER_ENTER = 2,
6275
- PET_HOVER_LEAVE = 3
6901
+ PET_HOVER_LEAVE = 3,
6902
+ PET_DRAG_LOCKED = 4,
6903
+ PET_DRAG = 5,
6904
+ PET_DRAG_END = 6
6276
6905
  }
6277
6906
 
6278
6907
  /**
@@ -6303,7 +6932,10 @@ export declare const enum PointerType {
6303
6932
  /** POT_NONE - No pointer input */
6304
6933
  POT_NONE = 0,
6305
6934
  /** POT_MOUSE - Traditional mouse input */
6306
- POT_MOUSE = 1
6935
+ POT_MOUSE = 1,
6936
+ POT_PAD = 2,
6937
+ POT_TOUCH = 3,
6938
+ POT_WAND = 4
6307
6939
  }
6308
6940
 
6309
6941
  /**
@@ -6900,6 +7532,7 @@ export declare type RaycastSystemOptions = {
6900
7532
  export declare interface ReactBasedUiSystem {
6901
7533
  destroy(): void;
6902
7534
  setUiRenderer(ui: UiComponent): void;
7535
+ setTextureRenderer(entity: Entity, ui: UiComponent): void;
6903
7536
  }
6904
7537
 
6905
7538
  /**
@@ -7378,6 +8011,43 @@ export declare namespace Schemas {
7378
8011
  }) => void;
7379
8012
  }
7380
8013
 
8014
+ /**
8015
+ * @public
8016
+ */
8017
+ export declare interface ScrollPositionValue {
8018
+ value?: {
8019
+ $case: "position";
8020
+ position: PBVector2;
8021
+ } | {
8022
+ $case: "reference";
8023
+ reference: string;
8024
+ } | undefined;
8025
+ }
8026
+
8027
+ /**
8028
+ * @public
8029
+ */
8030
+ export declare namespace ScrollPositionValue {
8031
+ export function encode(message: ScrollPositionValue, writer?: _m0.Writer): _m0.Writer;
8032
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): ScrollPositionValue;
8033
+ }
8034
+
8035
+ /**
8036
+ * @public
8037
+ * The scroll-visible determines if the scrollbars are shown when the scroll overflow is enabled
8038
+ */
8039
+ export declare type ScrollVisibleType = 'horizontal' | 'vertical' | 'both' | 'hidden';
8040
+
8041
+ /**
8042
+ * @public
8043
+ */
8044
+ export declare const enum ShowScrollBar {
8045
+ SSB_BOTH = 0,
8046
+ SSB_ONLY_VERTICAL = 1,
8047
+ SSB_ONLY_HORIZONTAL = 2,
8048
+ SSB_HIDDEN = 3
8049
+ }
8050
+
7381
8051
  /** @public */
7382
8052
  export declare const SkyboxTime: LastWriteWinElementSetComponentDefinition<PBSkyboxTime>;
7383
8053
 
@@ -7408,33 +8078,6 @@ export declare type SystemItem = {
7408
8078
 
7409
8079
  export declare const SYSTEMS_REGULAR_PRIORITY = 100000;
7410
8080
 
7411
- export declare const Tags: TagsComponentDefinitionExtended;
7412
-
7413
- export declare interface TagsComponentDefinitionExtended extends LastWriteWinElementSetComponentDefinition<TagsType> {
7414
- /**
7415
- * @public
7416
- *
7417
- * Add a tag to the entity's Tags component or create the component if it doesn't exist and add the tag
7418
- * @param entity - entity to add the tag to
7419
- * @param tagName - the tag name to add
7420
- * @returns true
7421
- */
7422
- add(entity: Entity, tagName: string): boolean;
7423
- /**
7424
- * @public
7425
- *
7426
- * Remove a tag from the entity's Tags component
7427
- * @param entity - entity to remove the tag from
7428
- * @param tagName - the tag name to remove
7429
- * @returns true if successful, false if the entity doesn't have a Tags component or the tag doesn't exist
7430
- */
7431
- remove(entity: Entity, tagName: string): boolean;
7432
- }
7433
-
7434
- export declare interface TagsType {
7435
- tags: string[];
7436
- }
7437
-
7438
8081
  export declare type TargetEntityRaycastOptions = RaycastSystemOptions & TargetEntityRaycastSystemOptions;
7439
8082
 
7440
8083
  export declare type TargetEntityRaycastSystemOptions = {
@@ -7489,6 +8132,9 @@ export declare namespace Texture {
7489
8132
  export function decode(input: _m0.Reader | Uint8Array, length?: number): Texture;
7490
8133
  }
7491
8134
 
8135
+ /** @public */
8136
+ export declare const TextureCamera: LastWriteWinElementSetComponentDefinition<PBTextureCamera>;
8137
+
7492
8138
  /**
7493
8139
  * @public
7494
8140
  */
@@ -7599,6 +8245,9 @@ export declare interface TextureUnion {
7599
8245
  } | {
7600
8246
  $case: "videoTexture";
7601
8247
  videoTexture: VideoTexture;
8248
+ } | {
8249
+ $case: "uiTexture";
8250
+ uiTexture: UiCanvasTexture;
7602
8251
  } | undefined;
7603
8252
  }
7604
8253
 
@@ -7722,83 +8371,8 @@ export declare type Transport = {
7722
8371
  */
7723
8372
  export declare type TransportMessage = Omit<ReceiveMessage, 'data'>;
7724
8373
 
7725
- export declare const TriggerArea: TriggerAreaComponentDefinitionExtended;
7726
-
7727
- /**
7728
- * @public
7729
- */
7730
- export declare interface TriggerAreaComponentDefinitionExtended extends LastWriteWinElementSetComponentDefinition<PBTriggerArea> {
7731
- /**
7732
- * @public
7733
- * Set a box in the MeshCollider component
7734
- * @param entity - entity to create or replace the TriggerArea component
7735
- * @param collisionMask - the collision layers mask for the trigger to react, default: Player
7736
- */
7737
- setBox(entity: Entity, collisionMask?: ColliderLayer | ColliderLayer[]): void;
7738
- /**
7739
- * @public
7740
- * Set a sphere in the MeshCollider component
7741
- * @param entity - entity to create or replace the TriggerArea component
7742
- * @param collisionMask - the collision layers mask for the trigger to react, default: Player
7743
- */
7744
- setSphere(entity: Entity, collisionMask?: ColliderLayer | ColliderLayer[]): void;
7745
- }
7746
-
7747
- /**
7748
- * @public
7749
- */
7750
- export declare interface TriggerAreaEventsSystem {
7751
- /**
7752
- * @public
7753
- * Execute callback when an entity enters the Trigger Area
7754
- * @param entity - The entity that already has the TriggerArea component
7755
- * @param cb - Function to execute the 'Enter' type of result is detected
7756
- */
7757
- onTriggerEnter(entity: Entity, cb: TriggerAreaEventSystemCallback): void;
7758
- /**
7759
- * @public
7760
- * Remove the callback for Trigger Area 'Enter' type of result
7761
- * @param entity - Entity where the Trigger Area was attached
7762
- */
7763
- removeOnTriggerEnter(entity: Entity): void;
7764
- /**
7765
- * @public
7766
- * Execute callback when an entity stays in the Trigger Area
7767
- * @param entity - The entity that already has the TriggerArea component
7768
- * @param cb - Function to execute the 'Stay' type of result is detected
7769
- */
7770
- onTriggerStay(entity: Entity, cb: TriggerAreaEventSystemCallback): void;
7771
- /**
7772
- * @public
7773
- * Remove the callback for Trigger Area 'Stay' type of result
7774
- * @param entity - Entity where the Trigger Area was attached
7775
- */
7776
- removeOnTriggerStay(entity: Entity): void;
7777
- /**
7778
- * @public
7779
- * Execute callback when an entity exits the Trigger Area
7780
- * @param entity - The entity that already has the TriggerArea component
7781
- * @param cb - Function to execute the 'Exit' type of result is detected
7782
- */
7783
- onTriggerExit(entity: Entity, cb: TriggerAreaEventSystemCallback): void;
7784
- /**
7785
- * @public
7786
- * Remove the callback for Trigger Area 'Exit' type of result
7787
- * @param entity - Entity where the Trigger Area was attached
7788
- */
7789
- removeOnTriggerExit(entity: Entity): void;
7790
- }
7791
-
7792
- /**
7793
- * @public
7794
- * Register callback functions for trigger area results.
7795
- */
7796
- export declare const triggerAreaEventsSystem: TriggerAreaEventsSystem;
7797
-
7798
- /**
7799
- * @public
7800
- */
7801
- export declare type TriggerAreaEventSystemCallback = (result: DeepReadonlyObject<PBTriggerAreaResult>) => void;
8374
+ /** @public */
8375
+ export declare const TriggerArea: LastWriteWinElementSetComponentDefinition<PBTriggerArea>;
7802
8376
 
7803
8377
  /**
7804
8378
  * @public
@@ -7818,7 +8392,7 @@ export declare const enum TriggerAreaMeshType {
7818
8392
  }
7819
8393
 
7820
8394
  /** @public */
7821
- export declare const TriggerAreaResult: GrowOnlyValueSetComponentDefinition<PBTriggerAreaResult>;
8395
+ export declare const TriggerAreaResult: LastWriteWinElementSetComponentDefinition<PBTriggerAreaResult>;
7822
8396
 
7823
8397
  export declare const Tween: TweenComponentDefinitionExtended;
7824
8398
 
@@ -7830,82 +8404,6 @@ export declare interface TweenComponentDefinitionExtended extends LastWriteWinEl
7830
8404
  * Texture helpers with constructor
7831
8405
  */
7832
8406
  Mode: TweenHelper;
7833
- /**
7834
- * @public
7835
- *
7836
- * Creates or replaces a move tween component that animates an entity's position from start to end
7837
- * @param entity - entity to apply the tween to
7838
- * @param start - starting position vector
7839
- * @param end - ending position vector
7840
- * @param duration - duration of the tween in milliseconds
7841
- * @param easingFunction - easing function to use (defaults to EF_LINEAR)
7842
- */
7843
- setMove(entity: Entity, start: PBVector3, end: PBVector3, duration: number, easingFunction?: EasingFunction): void;
7844
- /**
7845
- * @public
7846
- *
7847
- * Creates or replaces a scale tween component that animates an entity's scale from start to end
7848
- * @param entity - entity to apply the tween to
7849
- * @param start - starting scale vector
7850
- * @param end - ending scale vector
7851
- * @param duration - duration of the tween in milliseconds
7852
- * @param easingFunction - easing function to use (defaults to EF_LINEAR)
7853
- */
7854
- setScale(entity: Entity, start: PBVector3, end: PBVector3, duration: number, easingFunction?: EasingFunction): void;
7855
- /**
7856
- * @public
7857
- *
7858
- * Creates or replaces a rotation tween component that animates an entity's rotation from start to end
7859
- * @param entity - entity to apply the tween to
7860
- * @param start - starting rotation quaternion
7861
- * @param end - ending rotation quaternion
7862
- * @param duration - duration of the tween in milliseconds
7863
- * @param easingFunction - easing function to use (defaults to EF_LINEAR)
7864
- */
7865
- setRotate(entity: Entity, start: PBQuaternion, end: PBQuaternion, duration: number, easingFunction?: EasingFunction): void;
7866
- /**
7867
- * @public
7868
- *
7869
- * Creates or replaces a texture move tween component that animates texture UV coordinates from start to end
7870
- * @param entity - entity to apply the tween to
7871
- * @param start - starting UV coordinates
7872
- * @param end - ending UV coordinates
7873
- * @param duration - duration of the tween in milliseconds
7874
- * @param movementType - type of texture movement (defaults to TMT_OFFSET)
7875
- * @param easingFunction - easing function to use (defaults to EF_LINEAR)
7876
- */
7877
- setTextureMove(entity: Entity, start: PBVector2, end: PBVector2, duration: number, movementType?: TextureMovementType, easingFunction?: EasingFunction): void;
7878
- /**
7879
- * @public
7880
- *
7881
- * Creates or replaces a continuous move tween component that moves an entity continuously in a direction
7882
- * @param entity - entity to apply the tween to
7883
- * @param direction - direction vector to move towards
7884
- * @param speed - speed of movement per second
7885
- * @param duration - duration of the tween in milliseconds (defaults to 0 for infinite)
7886
- */
7887
- setMoveContinuous(entity: Entity, direction: PBVector3, speed: number, duration?: number): void;
7888
- /**
7889
- * @public
7890
- *
7891
- * Creates or replaces a continuous rotation tween component that rotates an entity continuously
7892
- * @param entity - entity to apply the tween to
7893
- * @param direction - rotation direction quaternion
7894
- * @param speed - speed of rotation per second
7895
- * @param duration - duration of the tween in milliseconds (defaults to 0 for infinite)
7896
- */
7897
- setRotateContinuous(entity: Entity, direction: PBQuaternion, speed: number, duration?: number): void;
7898
- /**
7899
- * @public
7900
- *
7901
- * Creates or replaces a continuous texture move tween component that moves texture UV coordinates continuously
7902
- * @param entity - entity to apply the tween to
7903
- * @param direction - direction vector for UV movement
7904
- * @param speed - speed of UV movement per second
7905
- * @param movementType - type of texture movement (defaults to TMT_OFFSET)
7906
- * @param duration - duration of the tween in milliseconds (defaults to 0 for infinite)
7907
- */
7908
- setTextureMoveContinuous(entity: Entity, direction: PBVector2, speed: number, movementType?: TextureMovementType, duration?: number): void;
7909
8407
  }
7910
8408
 
7911
8409
  /**
@@ -7917,29 +8415,17 @@ export declare interface TweenHelper {
7917
8415
  */
7918
8416
  Move: (move: Move) => PBTween['mode'];
7919
8417
  /**
7920
- * @returns a move-continuous mode tween
7921
- */
7922
- MoveContinuous: (move: MoveContinuous) => PBTween['mode'];
7923
- /**
7924
- * @returns a rotate mode tween
8418
+ * @returns a move mode tween
7925
8419
  */
7926
8420
  Rotate: (rotate: Rotate) => PBTween['mode'];
7927
8421
  /**
7928
- * @returns a rotate-continuous mode tween
7929
- */
7930
- RotateContinuous: (rotate: RotateContinuous) => PBTween['mode'];
7931
- /**
7932
- * @returns a scale mode tween
8422
+ * @returns a move mode tween
7933
8423
  */
7934
8424
  Scale: (scale: Scale) => PBTween['mode'];
7935
8425
  /**
7936
- * @returns a texture-move mode tween
8426
+ * @returns a texture move mode tween
7937
8427
  */
7938
8428
  TextureMove: (textureMove: TextureMove) => PBTween['mode'];
7939
- /**
7940
- * @returns a texture-move-continuous mode tween
7941
- */
7942
- TextureMoveContinuous: (textureMove: TextureMoveContinuous) => PBTween['mode'];
7943
8429
  }
7944
8430
 
7945
8431
  /**
@@ -8003,6 +8489,8 @@ export declare interface UiBackgroundProps {
8003
8489
  uvs?: number[];
8004
8490
  /** AvatarTexture for the background */
8005
8491
  avatarTexture?: UiAvatarTexture;
8492
+ /** VideoTexture for the background */
8493
+ videoTexture?: UiVideoTexture;
8006
8494
  /** Texture for the background */
8007
8495
  texture?: UiTexture;
8008
8496
  }
@@ -8022,9 +8510,31 @@ export declare interface UiButtonProps extends UiLabelProps, EntityPropTypes {
8022
8510
  disabled?: boolean;
8023
8511
  }
8024
8512
 
8513
+ /** @public */
8514
+ export declare const UiCanvas: LastWriteWinElementSetComponentDefinition<PBUiCanvas>;
8515
+
8025
8516
  /** @public */
8026
8517
  export declare const UiCanvasInformation: LastWriteWinElementSetComponentDefinition<PBUiCanvasInformation>;
8027
8518
 
8519
+ /**
8520
+ * @public
8521
+ */
8522
+ export declare interface UiCanvasTexture {
8523
+ uiCanvasEntity: number;
8524
+ /** default = TextureWrapMode.Clamp */
8525
+ wrapMode?: TextureWrapMode | undefined;
8526
+ /** default = FilterMode.Bilinear */
8527
+ filterMode?: TextureFilterMode | undefined;
8528
+ }
8529
+
8530
+ /**
8531
+ * @public
8532
+ */
8533
+ export declare namespace UiCanvasTexture {
8534
+ export function encode(message: UiCanvasTexture, writer?: _m0.Writer): _m0.Writer;
8535
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): UiCanvasTexture;
8536
+ }
8537
+
8028
8538
  /**
8029
8539
  * @public
8030
8540
  */
@@ -8094,6 +8604,10 @@ export declare interface UiLabelProps {
8094
8604
  textAlign?: TextAlignType | undefined;
8095
8605
  /** Label font type. @defaultValue 'sans-serif' */
8096
8606
  font?: UiFontType | undefined;
8607
+ /** Outline width of the text. @defaultValue 0 */
8608
+ outlineWidth?: number | undefined;
8609
+ /** Outline color of the text. @defaultValue `{ r: 0, g: 0, b: 0, a: 1 }` */
8610
+ outlineColor?: PBColor4 | undefined;
8097
8611
  /** Behaviour when text reached. @defaultValue 'wrap' */
8098
8612
  textWrap?: UiTextWrapType | undefined;
8099
8613
  }
@@ -8103,6 +8617,9 @@ export declare interface UiLabelProps {
8103
8617
  */
8104
8618
  export declare type uint32 = number;
8105
8619
 
8620
+ /** @public */
8621
+ export declare const UiScrollResult: LastWriteWinElementSetComponentDefinition<PBUiScrollResult>;
8622
+
8106
8623
  /** @public */
8107
8624
  export declare const UiText: LastWriteWinElementSetComponentDefinition<PBUiText>;
8108
8625
 
@@ -8180,10 +8697,26 @@ export declare interface UiTransformProps {
8180
8697
  borderWidth?: Partial<Position> | PositionUnit;
8181
8698
  /** The opacity property sets the opacity level for an element, it's accumulated across children @defaultValue 1 */
8182
8699
  opacity?: number;
8700
+ /** A reference value to identify the element, default empty */
8701
+ elementId?: string;
8702
+ /** default position=(0,0) if it aplies, a vector or a reference-id */
8703
+ scrollPosition?: PBVector2 | string;
8704
+ /** default ShowScrollBar.SSB_BOTH */
8705
+ scrollVisible?: ScrollVisibleType;
8183
8706
  /** default 0 */
8184
8707
  zIndex?: number;
8185
8708
  }
8186
8709
 
8710
+ /**
8711
+ * Texture
8712
+ * @public
8713
+ */
8714
+ export declare interface UiVideoTexture {
8715
+ videoPlayerEntity: Entity;
8716
+ wrapMode?: TextureWrapType;
8717
+ filterMode?: TextureFilterType;
8718
+ }
8719
+
8187
8720
  /**
8188
8721
  * @public
8189
8722
  */