@dcl/playground-assets 7.7.9 → 7.7.10-13859848918.commit-407cb6b

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,32 @@ 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 interface AvatarEquippedDataComponentDefinitionExtended extends LastWriteWinElementSetComponentDefinition<AvatarEquippedDataType> {
202
+ }
203
+
204
+ export declare type AvatarEquippedDataType = Omit<PBAvatarEquippedData, 'forceRender'> & {
205
+ forceRender?: string[] | undefined;
206
+ };
186
207
 
187
208
  /** @public */
188
209
  export declare const AvatarModifierArea: LastWriteWinElementSetComponentDefinition<PBAvatarModifierArea>;
@@ -198,8 +219,48 @@ export declare const enum AvatarModifierType {
198
219
  AMT_DISABLE_PASSPORTS = 1
199
220
  }
200
221
 
201
- /** @public */
202
- export declare const AvatarShape: LastWriteWinElementSetComponentDefinition<PBAvatarShape>;
222
+ /**
223
+ * @public
224
+ */
225
+ export declare interface AvatarMovementSettings {
226
+ controlMode?: AvatarControlType | undefined;
227
+ /** if not explicitly set, the following properties default to user's preference settings */
228
+ runSpeed?: number | undefined;
229
+ /** how fast the player gets up to speed or comes to rest. higher = more responsive */
230
+ friction?: number | undefined;
231
+ /** how fast the player accelerates vertically when not on a solid surface, in m/s. should normally be negative */
232
+ gravity?: number | undefined;
233
+ /** how high the player can jump, in meters. should normally be positive. gravity must have the same sign for jumping to be possible */
234
+ jumpHeight?: number | undefined;
235
+ /** max fall speed in m/s. should normally be negative */
236
+ maxFallSpeed?: number | undefined;
237
+ /** speed the player turns in tank mode, in radians/s */
238
+ turnSpeed?: number | undefined;
239
+ /** speed the player walks at, in m/s */
240
+ walkSpeed?: number | undefined;
241
+ /** 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 */
242
+ allowWeightedMovement?: boolean | undefined;
243
+ }
244
+
245
+ /**
246
+ * @public
247
+ */
248
+ export declare namespace AvatarMovementSettings {
249
+ export function encode(message: AvatarMovementSettings, writer?: _m0.Writer): _m0.Writer;
250
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): AvatarMovementSettings;
251
+ }
252
+
253
+ export declare const AvatarShape: AvatarShapeComponentDefinitionExtended;
254
+
255
+ /**
256
+ * @public
257
+ */
258
+ export declare interface AvatarShapeComponentDefinitionExtended extends LastWriteWinElementSetComponentDefinition<AvatarShapeType> {
259
+ }
260
+
261
+ export declare type AvatarShapeType = Omit<PBAvatarShape, 'forceRender'> & {
262
+ forceRender?: string[] | undefined;
263
+ };
203
264
 
204
265
  /**
205
266
  * @public
@@ -462,6 +523,12 @@ export declare interface ByteBuffer {
462
523
  */
463
524
  export declare type Callback = () => void;
464
525
 
526
+ /** @public */
527
+ export declare const CameraLayer: LastWriteWinElementSetComponentDefinition<PBCameraLayer>;
528
+
529
+ /** @public */
530
+ export declare const CameraLayers: LastWriteWinElementSetComponentDefinition<PBCameraLayers>;
531
+
465
532
  /** @public */
466
533
  export declare const CameraMode: LastWriteWinElementSetComponentDefinition<PBCameraMode>;
467
534
 
@@ -519,6 +586,39 @@ export declare const enum CameraType {
519
586
 
520
587
  export declare type Children = ReactEcs.JSX.ReactNode;
521
588
 
589
+ /**
590
+ * @public
591
+ */
592
+ export declare interface CinematicSettings {
593
+ /** Entity that defines the cinematic camera transform. */
594
+ cameraEntity: number;
595
+ /**
596
+ * Position -> camera's position
597
+ * Rotation -> camera's direction
598
+ * scale.z -> zoom level
599
+ * scale.x and scale.y -> unused
600
+ */
601
+ allowManualRotation?: boolean | undefined;
602
+ /** how far the camera can rotate around the y-axis / look left/right, in radians. default unrestricted */
603
+ yawRange?: number | undefined;
604
+ /** how far the camera can rotate around the x-axis / look up-down, in radians. default unrestricted */
605
+ pitchRange?: number | undefined;
606
+ /** note: cameras can never look up/down further than Vec3::Y */
607
+ rollRange?: number | undefined;
608
+ /** minimum zoom level. must be greater than 0. defaults to the input zoom level */
609
+ zoomMin?: number | undefined;
610
+ /** maximum zoom level. must be greater than 0. defaults to the input zoom level */
611
+ zoomMax?: number | undefined;
612
+ }
613
+
614
+ /**
615
+ * @public
616
+ */
617
+ export declare namespace CinematicSettings {
618
+ export function encode(message: CinematicSettings, writer?: _m0.Writer): _m0.Writer;
619
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): CinematicSettings;
620
+ }
621
+
522
622
  /** ColliderLayer determines the kind of collision to detect, in OR-able bit flag form. */
523
623
  /**
524
624
  * @public
@@ -1292,12 +1392,18 @@ export declare const componentDefinitionByName: {
1292
1392
  "core::AvatarModifierArea": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBAvatarModifierArea>>;
1293
1393
  "core::AvatarShape": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBAvatarShape>>;
1294
1394
  "core::Billboard": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBBillboard>>;
1395
+ "core::CameraLayer": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraLayer>>;
1396
+ "core::CameraLayers": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraLayers>>;
1295
1397
  "core::CameraMode": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraMode>>;
1296
1398
  "core::CameraModeArea": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraModeArea>>;
1297
1399
  "core::EngineInfo": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBEngineInfo>>;
1400
+ "core::GlobalLight": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGlobalLight>>;
1298
1401
  "core::GltfContainer": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfContainer>>;
1299
1402
  "core::GltfContainerLoadingState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfContainerLoadingState>>;
1403
+ "core::GltfNode": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfNode>>;
1404
+ "core::GltfNodeState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfNodeState>>;
1300
1405
  "core::InputModifier": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBInputModifier>>;
1406
+ "core::Light": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBLight>>;
1301
1407
  "core::MainCamera": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBMainCamera>>;
1302
1408
  "core::Material": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBMaterial>>;
1303
1409
  "core::MeshCollider": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBMeshCollider>>;
@@ -1307,19 +1413,24 @@ export declare const componentDefinitionByName: {
1307
1413
  "core::PointerEvents": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBPointerEvents>>;
1308
1414
  "core::PointerEventsResult": GSetComponentGetter<GrowOnlyValueSetComponentDefinition<PBPointerEventsResult>>;
1309
1415
  "core::PointerLock": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBPointerLock>>;
1416
+ "core::PrimaryPointerInfo": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBPrimaryPointerInfo>>;
1310
1417
  "core::Raycast": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBRaycast>>;
1311
1418
  "core::RaycastResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBRaycastResult>>;
1312
1419
  "core::RealmInfo": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBRealmInfo>>;
1420
+ "core::Spotlight": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBSpotlight>>;
1313
1421
  "core::TextShape": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTextShape>>;
1422
+ "core::TextureCamera": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTextureCamera>>;
1314
1423
  "core::Tween": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTween>>;
1315
1424
  "core::TweenSequence": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTweenSequence>>;
1316
1425
  "core::TweenState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTweenState>>;
1317
1426
  "core::UiBackground": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiBackground>>;
1427
+ "core::UiCanvas": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiCanvas>>;
1318
1428
  "core::UiCanvasInformation": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiCanvasInformation>>;
1319
1429
  "core::UiDropdown": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiDropdown>>;
1320
1430
  "core::UiDropdownResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiDropdownResult>>;
1321
1431
  "core::UiInput": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiInput>>;
1322
1432
  "core::UiInputResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiInputResult>>;
1433
+ "core::UiScrollResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiScrollResult>>;
1323
1434
  "core::UiText": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiText>>;
1324
1435
  "core::UiTransform": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiTransform>>;
1325
1436
  "core::VideoEvent": GSetComponentGetter<GrowOnlyValueSetComponentDefinition<PBVideoEvent>>;
@@ -1890,6 +2001,9 @@ export declare type EntityComponents = {
1890
2001
  onMouseUp: Callback;
1891
2002
  onMouseEnter: Callback;
1892
2003
  onMouseLeave: Callback;
2004
+ onMouseDrag: Callback;
2005
+ onMouseDragLocked: Callback;
2006
+ onMouseDragEnd: Callback;
1893
2007
  };
1894
2008
 
1895
2009
  /** @public */
@@ -2041,6 +2155,9 @@ export declare type GlobalDirectionRaycastSystemOptions = {
2041
2155
  direction?: PBVector3;
2042
2156
  };
2043
2157
 
2158
+ /** @public */
2159
+ export declare const GlobalLight: LastWriteWinElementSetComponentDefinition<PBGlobalLight>;
2160
+
2044
2161
  export declare type GlobalTargetRaycastOptions = RaycastSystemOptions & GlobalTargetRaycastSystemOptions;
2045
2162
 
2046
2163
  export declare type GlobalTargetRaycastSystemOptions = {
@@ -2053,6 +2170,21 @@ export declare const GltfContainer: LastWriteWinElementSetComponentDefinition<PB
2053
2170
  /** @public */
2054
2171
  export declare const GltfContainerLoadingState: LastWriteWinElementSetComponentDefinition<PBGltfContainerLoadingState>;
2055
2172
 
2173
+ /** @public */
2174
+ export declare const GltfNode: LastWriteWinElementSetComponentDefinition<PBGltfNode>;
2175
+
2176
+ /** @public */
2177
+ export declare const GltfNodeState: LastWriteWinElementSetComponentDefinition<PBGltfNodeState>;
2178
+
2179
+ /**
2180
+ * @public
2181
+ */
2182
+ export declare const enum GltfNodeStateValue {
2183
+ GNSV_PENDING = 0,
2184
+ GNSV_FAILED = 1,
2185
+ GNSV_READY = 2
2186
+ }
2187
+
2056
2188
  /**
2057
2189
  * @public
2058
2190
  */
@@ -2647,6 +2779,9 @@ export declare interface LastWriteWinElementSetComponentDefinition<T> extends Ba
2647
2779
  getOrCreateMutable(entity: Entity, initialValue?: T): T;
2648
2780
  }
2649
2781
 
2782
+ /** @public */
2783
+ export declare const Light: LastWriteWinElementSetComponentDefinition<PBLight>;
2784
+
2650
2785
  /**
2651
2786
  * User key event Listeners
2652
2787
  * @public
@@ -2660,6 +2795,12 @@ export declare type Listeners = {
2660
2795
  onMouseEnter?: Callback;
2661
2796
  /** triggered on mouse leave event */
2662
2797
  onMouseLeave?: Callback;
2798
+ /** triggered on mouse drag event */
2799
+ onMouseDrag?: Callback;
2800
+ /** triggered on mouse drag event */
2801
+ onMouseDragLocked?: Callback;
2802
+ /** triggered on mouse drag event */
2803
+ onMouseDragEnd?: Callback;
2663
2804
  };
2664
2805
 
2665
2806
  /**
@@ -3528,6 +3669,14 @@ export declare interface MeshColliderComponentDefinitionExtended extends LastWri
3528
3669
  * @param colliderMask - the set of layer where the collider reacts, default: Physics and Pointer
3529
3670
  */
3530
3671
  setSphere(entity: Entity, colliderLayers?: ColliderLayer | ColliderLayer[]): void;
3672
+ /**
3673
+ * @public
3674
+ * Set a gltf internal mesh in the MeshCollider component
3675
+ * @param entity - entity to create or replace the MeshRenderer component
3676
+ * @param source - the path to the gltf
3677
+ * @param meshName - the name of the mesh in the gltf
3678
+ */
3679
+ setGltfMesh(entity: Entity, source: string, meshName: string, colliderLayers?: ColliderLayer | ColliderLayer[]): void;
3531
3680
  }
3532
3681
 
3533
3682
  export declare const MeshRenderer: MeshRendererComponentDefinitionExtended;
@@ -3564,6 +3713,14 @@ export declare interface MeshRendererComponentDefinitionExtended extends LastWri
3564
3713
  * @param entity - entity to create or replace the MeshRenderer component
3565
3714
  */
3566
3715
  setSphere(entity: Entity): void;
3716
+ /**
3717
+ * @public
3718
+ * Set a gltf internal mesh in the MeshRenderer component
3719
+ * @param entity - entity to create or replace the MeshRenderer component
3720
+ * @param source - the path to the gltf
3721
+ * @param meshName - the name of the mesh in the gltf
3722
+ */
3723
+ setGltfMesh(entity: Entity, source: string, meshName: string): void;
3567
3724
  }
3568
3725
 
3569
3726
  /* Excluded from this release type: MessageBus */
@@ -3957,6 +4114,25 @@ export declare const onVideoEvent: Observable<{
3957
4114
  totalVideoLength: number;
3958
4115
  }>;
3959
4116
 
4117
+ /**
4118
+ * @public
4119
+ */
4120
+ export declare interface Orthographic {
4121
+ /**
4122
+ * vertical extent of the visible range in meters
4123
+ * defaults to 4m
4124
+ */
4125
+ verticalRange?: number | undefined;
4126
+ }
4127
+
4128
+ /**
4129
+ * @public
4130
+ */
4131
+ export declare namespace Orthographic {
4132
+ export function encode(message: Orthographic, writer?: _m0.Writer): _m0.Writer;
4133
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): Orthographic;
4134
+ }
4135
+
3960
4136
  /**
3961
4137
  * @public
3962
4138
  * The overflow property controls what happens to content that is too big to fit into an area
@@ -4183,6 +4359,8 @@ export declare namespace PBAvatarEmoteCommand {
4183
4359
  export declare interface PBAvatarEquippedData {
4184
4360
  wearableUrns: string[];
4185
4361
  emoteUrns: string[];
4362
+ /** slots that will render even if hidden */
4363
+ forceRender: string[];
4186
4364
  }
4187
4365
 
4188
4366
  /**
@@ -4217,6 +4395,9 @@ export declare interface PBAvatarModifierArea {
4217
4395
  excludeIds: string[];
4218
4396
  /** list of modifiers to apply */
4219
4397
  modifiers: AvatarModifierType[];
4398
+ movementSettings?: AvatarMovementSettings | undefined;
4399
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
4400
+ useColliderRange?: boolean | undefined;
4220
4401
  }
4221
4402
 
4222
4403
  /**
@@ -4273,6 +4454,8 @@ export declare interface PBAvatarShape {
4273
4454
  wearables: string[];
4274
4455
  /** available emotes (default empty) */
4275
4456
  emotes: string[];
4457
+ /** slots that will render even if hidden */
4458
+ forceRender: string[];
4276
4459
  }
4277
4460
 
4278
4461
  /**
@@ -4307,6 +4490,51 @@ export declare namespace PBBillboard {
4307
4490
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBBillboard;
4308
4491
  }
4309
4492
 
4493
+ /**
4494
+ * @public
4495
+ */
4496
+ export declare interface PBCameraLayer {
4497
+ /**
4498
+ * layer to which these settings apply. must be > 0
4499
+ * Layer 0 is the default "real world" layer viewed by the player and cannot be modified.
4500
+ */
4501
+ layer: number;
4502
+ /** should the sun light affect this layer? default false */
4503
+ directionalLight?: boolean | undefined;
4504
+ /** should this layer show player avatars? default false */
4505
+ showAvatars?: boolean | undefined;
4506
+ /** should this layer show the sky? default false */
4507
+ showSkybox?: boolean | undefined;
4508
+ /** should this layer show distance fog? default false */
4509
+ showFog?: boolean | undefined;
4510
+ /** ambient light overrides for this layer. default -> use same as main camera */
4511
+ ambientColorOverride?: PBColor3 | undefined;
4512
+ ambientBrightnessOverride?: number | undefined;
4513
+ }
4514
+
4515
+ /**
4516
+ * @public
4517
+ */
4518
+ export declare namespace PBCameraLayer {
4519
+ export function encode(message: PBCameraLayer, writer?: _m0.Writer): _m0.Writer;
4520
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBCameraLayer;
4521
+ }
4522
+
4523
+ /**
4524
+ * @public
4525
+ */
4526
+ export declare interface PBCameraLayers {
4527
+ layers: number[];
4528
+ }
4529
+
4530
+ /**
4531
+ * @public
4532
+ */
4533
+ export declare namespace PBCameraLayers {
4534
+ export function encode(message: PBCameraLayers, writer?: _m0.Writer): _m0.Writer;
4535
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBCameraLayers;
4536
+ }
4537
+
4310
4538
  /**
4311
4539
  * The CameraMode component can be used to determine whether the player is using a first-person o
4312
4540
  * third-person view.
@@ -4329,7 +4557,7 @@ export declare namespace PBCameraMode {
4329
4557
 
4330
4558
  /**
4331
4559
  * The CameraModeArea component can be attached to an Entity to define a region of space where
4332
- * the player's camera mode (1st-person or 3rd-person) is overridden.
4560
+ * the player's camera mode (1st-person, 3rd-person or cinematic) is overridden.
4333
4561
  *
4334
4562
  * The Entity's Transform position determines the center-point of the region, while its size is
4335
4563
  * given as a vector in the `area` property below. The Transform rotation is applied, but the scale
@@ -4339,6 +4567,8 @@ export declare namespace PBCameraMode {
4339
4567
  *
4340
4568
  * Note that, while commonly used to delineate a 2D area in a scene (hence the name), the region
4341
4569
  * is actually a 3D volume.
4570
+ *
4571
+ * When mode is set to CtCinematic, the cinematic_settings field must also be provided.
4342
4572
  */
4343
4573
  /**
4344
4574
  * @public
@@ -4348,6 +4578,9 @@ export declare interface PBCameraModeArea {
4348
4578
  area: PBVector3 | undefined;
4349
4579
  /** the camera mode to enforce */
4350
4580
  mode: CameraType;
4581
+ cinematicSettings?: CinematicSettings | undefined;
4582
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
4583
+ useColliderRange?: boolean | undefined;
4351
4584
  }
4352
4585
 
4353
4586
  /**
@@ -4419,6 +4652,39 @@ export declare namespace PBEngineInfo {
4419
4652
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBEngineInfo;
4420
4653
  }
4421
4654
 
4655
+ /**
4656
+ * defines the global scene light settings. must be added to the scene root.
4657
+ * to control sunlight color, intensity, shadows etc, you can also add a PBLight to the scene root.
4658
+ */
4659
+ /**
4660
+ * @public
4661
+ */
4662
+ export declare interface PBGlobalLight {
4663
+ /**
4664
+ * the direction the directional light shines in.
4665
+ * default depends on time of day and explorer implementation
4666
+ */
4667
+ direction?: PBVector3 | undefined;
4668
+ /**
4669
+ * ambient light color
4670
+ * default: White
4671
+ */
4672
+ ambientColor?: PBColor3 | undefined;
4673
+ /**
4674
+ * ambient light intensity. the explorer default ambient brightness is multiplied by this non-physical quantity.
4675
+ * default 1
4676
+ */
4677
+ ambientBrightness?: number | undefined;
4678
+ }
4679
+
4680
+ /**
4681
+ * @public
4682
+ */
4683
+ export declare namespace PBGlobalLight {
4684
+ export function encode(message: PBGlobalLight, writer?: _m0.Writer): _m0.Writer;
4685
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGlobalLight;
4686
+ }
4687
+
4422
4688
  /**
4423
4689
  * GltfContainer loads a GLTF file (and any additional files packaged inside) attached to an Entity.
4424
4690
  *
@@ -4454,6 +4720,25 @@ export declare namespace PBGltfContainer {
4454
4720
  */
4455
4721
  export declare interface PBGltfContainerLoadingState {
4456
4722
  currentState: LoadingState;
4723
+ /** all node paths in the gltf, which can be used with a GltfNode to inspect and modify the gltf contents */
4724
+ nodePaths: string[];
4725
+ /** all meshes in the gltf. unnamed meshes will be auto-assigned a name of the form `MeshX` or `MeshX/PrimitiveY` */
4726
+ meshNames: string[];
4727
+ /**
4728
+ * where X is the mesh index and Y is the primitive index (and there is more than 1 primitive). note this may
4729
+ * conflict with manually named meshes - to avoid any issues make sure all your meshes are explicitly named.
4730
+ */
4731
+ materialNames: string[];
4732
+ /**
4733
+ * X is the material index. note this may conflict with manually named materials - to avoid any issues make
4734
+ * sure all your materials are explicitly named.
4735
+ */
4736
+ skinNames: string[];
4737
+ /**
4738
+ * X is the skin index. note this may conflict with manually named skins - to avoid any issues make sure all
4739
+ * your skins are explicitly named.
4740
+ */
4741
+ animationNames: string[];
4457
4742
  }
4458
4743
 
4459
4744
  /**
@@ -4464,6 +4749,77 @@ export declare namespace PBGltfContainerLoadingState {
4464
4749
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfContainerLoadingState;
4465
4750
  }
4466
4751
 
4752
+ /**
4753
+ * a GltfNode links a scene entity with a node from within a gltf, allowing the scene to inspect it or modify it.
4754
+ * This component must be added to a direct child of an entity with a PBGltfContainer component, or
4755
+ * to a direct child of another entity with a GltfNode component, and the referenced gltf node must be a descendent of the gltf node
4756
+ * in the parent.
4757
+ * The name must match the path of one of the nodes within the Gltf. These are available on the GltfContainerLoadingState component.
4758
+ *
4759
+ * The renderer will attach a PBGltfNodeState to the entity describing the state. Once the state is `GNS_READY`,
4760
+ * - the `Transform` will be updated to match the position of the node within the gltf (relative to the gltf root, or the parent node),
4761
+ * - a `MeshRenderer` with a GltfMesh mesh type will be added (if the gltf node has a mesh).
4762
+ * - a `MeshCollider` with a GltfMesh mesh type will be added (if the gltf node has a collider).
4763
+ * - a `Material` component including a GltfMaterial reference will be added (if the gltf node has a material).
4764
+ *
4765
+ * After creation, if an animation moves the node, the `Transform` will be updated.
4766
+ *
4767
+ * From the scene, you can modify various components to alter the gltf node:
4768
+ * - modifying the `Transform` position/rotation/scale will move the node. The position is interpreted relative to the gltf root (or parent node),
4769
+ * regardless of any intermediate gltf node hierarchy.
4770
+ * If an animation is playing, the animation takes priority and the scene entity's position will be updated to match the animation.
4771
+ * - `Visibility` can be added to hide or show the node and it's children in the gltf hierarchy.
4772
+ * - `MeshRenderer` can be added/modified/removed to create/modify/remove a mesh on the node.
4773
+ * - `MeshCollider` can be added/modified/removed to create/modify/remove a collider on the node.
4774
+ * - `Material` can be added or modified to change the material properties. If the gltf node has a material, the original material will be
4775
+ * 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
4776
+ * PBMaterial will be maintained.
4777
+ *
4778
+ * The scene can add additional entities as children to the gltf node, but structural modifications of the gltf are not possible:
4779
+ * - changing the scene hierarchy will not change the gltf node hierarchy. Moving the entity out of the gltf will sever the link and
4780
+ * change the state to `GNS_FAILED`.
4781
+ * - deleting the scene entity will not delete the gltf node.
4782
+ *
4783
+ * Removing the GltfNode will revert any changes to the original gltf. If the GltfNode component is removed and the mesh/collider/material
4784
+ * are not removed, this will result in a duplication of these components as the previously-linked entity will retain it's components and
4785
+ * the gltf node will also be displayed.
4786
+ */
4787
+ /**
4788
+ * @public
4789
+ */
4790
+ export declare interface PBGltfNode {
4791
+ /** the path of the target node in the Gltf. */
4792
+ path: string;
4793
+ }
4794
+
4795
+ /**
4796
+ * @public
4797
+ */
4798
+ export declare namespace PBGltfNode {
4799
+ export function encode(message: PBGltfNode, writer?: _m0.Writer): _m0.Writer;
4800
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNode;
4801
+ }
4802
+
4803
+ /**
4804
+ * The state of a linked gltf node.
4805
+ * If the state is GNSV_FAILED, the renderer may describe the failure in the error string.
4806
+ */
4807
+ /**
4808
+ * @public
4809
+ */
4810
+ export declare interface PBGltfNodeState {
4811
+ state: GltfNodeStateValue;
4812
+ error?: string | undefined;
4813
+ }
4814
+
4815
+ /**
4816
+ * @public
4817
+ */
4818
+ export declare namespace PBGltfNodeState {
4819
+ export function encode(message: PBGltfNodeState, writer?: _m0.Writer): _m0.Writer;
4820
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNodeState;
4821
+ }
4822
+
4467
4823
  /**
4468
4824
  * @public
4469
4825
  */
@@ -4503,6 +4859,62 @@ export declare namespace PBInputModifier_StandardInput {
4503
4859
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBInputModifier_StandardInput;
4504
4860
  }
4505
4861
 
4862
+ /**
4863
+ * defines a light source.
4864
+ * the world has a default directional light (like sunlight) which can be overridden by adding the light component to the scene root.
4865
+ * a PBGlobalLight component can also be added to the root to control the directional light direction.
4866
+ * point lights (lightbulbs) or spotlights can be created by attaching the light component to non-root entities.
4867
+ */
4868
+ /**
4869
+ * @public
4870
+ */
4871
+ export declare interface PBLight {
4872
+ /**
4873
+ * whether the light is on
4874
+ * default true
4875
+ */
4876
+ enabled?: boolean | undefined;
4877
+ /**
4878
+ * light brightness in lux (lumens/m^2).
4879
+ *
4880
+ * for global directional light, this applies as a constant value at all surfaces and distances (though the effect on the surface still depends on incidence angle).
4881
+ * the default global light illuminance varies from 400 (sunrise/sunset) to 10,000 (midday).
4882
+ * for typical values, see https://en.wikipedia.org/wiki/Lux#Illuminance
4883
+ *
4884
+ * for point and spot lights, this is the lumens/m^2 at 1m distance from the light. to transform from raw lumens,
4885
+ * divide lumens by ~12 (4*pi).
4886
+ * e.g. a 100w household bulb with 1200 lumens would have an illuminance of ~100.
4887
+ * a lighthouse bulb with 200,000 lumens would have an illuminance of ~15,000 (ignoring beam reflections)
4888
+ *
4889
+ * default
4890
+ * for point/spotlights: 10,000
4891
+ * for global directional light: depends on explorer implementation. may vary on light direction, time of day, etc
4892
+ */
4893
+ illuminance?: number | undefined;
4894
+ /**
4895
+ * whether the light should cast shadows.
4896
+ * note: even when set to true the engine may not display shadows, or may only show shadows for a limited number
4897
+ * of lights depending on the implementation, platform, and user settings.
4898
+ * default
4899
+ * for point/spotlights: false / off
4900
+ * for global directional light: true / on
4901
+ */
4902
+ shadows?: boolean | undefined;
4903
+ /**
4904
+ * light color
4905
+ * default White
4906
+ */
4907
+ color?: PBColor3 | undefined;
4908
+ }
4909
+
4910
+ /**
4911
+ * @public
4912
+ */
4913
+ export declare namespace PBLight {
4914
+ export function encode(message: PBLight, writer?: _m0.Writer): _m0.Writer;
4915
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBLight;
4916
+ }
4917
+
4506
4918
  /**
4507
4919
  * PBMainCamera.virtualCameraEntity defines which VirtualCamera entity is active at the moment.
4508
4920
  * This component may hold 'repeated common.CameraTransition' transitionOverrides in the future
@@ -4534,6 +4946,14 @@ export declare interface PBMaterial {
4534
4946
  $case: "pbr";
4535
4947
  pbr: PBMaterial_PbrMaterial;
4536
4948
  } | undefined;
4949
+ /**
4950
+ * A gltf material that may provide additional features not supported by the PbMaterial fields.
4951
+ * If both gltf and material fields are provided, the gltf will be used only for extended features not
4952
+ * supported by the PbMaterial.
4953
+ * If this is provided and the `material` field is not provided, the renderer will update the material
4954
+ * field with data that reflects the gltf material once it is loaded.
4955
+ */
4956
+ gltf?: PBMaterial_GltfMaterial | undefined;
4537
4957
  }
4538
4958
 
4539
4959
  /**
@@ -4544,6 +4964,22 @@ export declare namespace PBMaterial {
4544
4964
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial;
4545
4965
  }
4546
4966
 
4967
+ /**
4968
+ * @public
4969
+ */
4970
+ export declare interface PBMaterial_GltfMaterial {
4971
+ gltfSrc: string;
4972
+ name: string;
4973
+ }
4974
+
4975
+ /**
4976
+ * @public
4977
+ */
4978
+ export declare namespace PBMaterial_GltfMaterial {
4979
+ export function encode(message: PBMaterial_GltfMaterial, writer?: _m0.Writer): _m0.Writer;
4980
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial_GltfMaterial;
4981
+ }
4982
+
4547
4983
  /**
4548
4984
  * @public
4549
4985
  */
@@ -4640,6 +5076,9 @@ export declare interface PBMeshCollider {
4640
5076
  } | {
4641
5077
  $case: "plane";
4642
5078
  plane: PBMeshCollider_PlaneMesh;
5079
+ } | {
5080
+ $case: "gltf";
5081
+ gltf: PBMeshCollider_GltfMesh;
4643
5082
  } | undefined;
4644
5083
  }
4645
5084
 
@@ -4685,6 +5124,25 @@ export declare namespace PBMeshCollider_CylinderMesh {
4685
5124
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_CylinderMesh;
4686
5125
  }
4687
5126
 
5127
+ /** A collider constructed from a Gltf Mesh. */
5128
+ /**
5129
+ * @public
5130
+ */
5131
+ export declare interface PBMeshCollider_GltfMesh {
5132
+ /** the GLTF file path as listed in the scene's manifest. */
5133
+ gltfSrc: string;
5134
+ /** the name of the mesh asset */
5135
+ name: string;
5136
+ }
5137
+
5138
+ /**
5139
+ * @public
5140
+ */
5141
+ export declare namespace PBMeshCollider_GltfMesh {
5142
+ export function encode(message: PBMeshCollider_GltfMesh, writer?: _m0.Writer): _m0.Writer;
5143
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_GltfMesh;
5144
+ }
5145
+
4688
5146
  /** PlaneMesh is a 2D rectangle described by the Entity's Transform. */
4689
5147
  /**
4690
5148
  * @public
@@ -4717,13 +5175,11 @@ export declare namespace PBMeshCollider_SphereMesh {
4717
5175
 
4718
5176
  /**
4719
5177
  * The MeshRenderer component renders a basic geometric shape for an Entity. It can be a cube, a
4720
- * plane, a sphere or a cylinder.
5178
+ * plane, a sphere, a cylinder, or a Gltf mesh.
4721
5179
  *
4722
5180
  * The cube and plane variants can include a UV texture mapping, so specific areas of a material
4723
5181
  * texture are rendered on different faces of the shape. They are serialized as a sequence of 2D
4724
5182
  * `float` coordinates, one for each corner of each side of each face.
4725
- *
4726
- * More complex shapes require the use of a `GltfContainer` component.
4727
5183
  */
4728
5184
  /**
4729
5185
  * @public
@@ -4741,6 +5197,9 @@ export declare interface PBMeshRenderer {
4741
5197
  } | {
4742
5198
  $case: "plane";
4743
5199
  plane: PBMeshRenderer_PlaneMesh;
5200
+ } | {
5201
+ $case: "gltf";
5202
+ gltf: PBMeshRenderer_GltfMesh;
4744
5203
  } | undefined;
4745
5204
  }
4746
5205
 
@@ -4788,6 +5247,25 @@ export declare namespace PBMeshRenderer_CylinderMesh {
4788
5247
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_CylinderMesh;
4789
5248
  }
4790
5249
 
5250
+ /** A mesh from a Gltf. */
5251
+ /**
5252
+ * @public
5253
+ */
5254
+ export declare interface PBMeshRenderer_GltfMesh {
5255
+ /** the GLTF file path as listed in the scene's manifest. */
5256
+ gltfSrc: string;
5257
+ /** the name of the mesh asset */
5258
+ name: string;
5259
+ }
5260
+
5261
+ /**
5262
+ * @public
5263
+ */
5264
+ export declare namespace PBMeshRenderer_GltfMesh {
5265
+ export function encode(message: PBMeshRenderer_GltfMesh, writer?: _m0.Writer): _m0.Writer;
5266
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_GltfMesh;
5267
+ }
5268
+
4791
5269
  /** PlaneMesh renders a 2D rectangular shape. */
4792
5270
  /**
4793
5271
  * @public
@@ -5006,6 +5484,30 @@ export declare namespace PBPosition {
5006
5484
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBPosition;
5007
5485
  }
5008
5486
 
5487
+ /**
5488
+ * @public
5489
+ */
5490
+ export declare interface PBPrimaryPointerInfo {
5491
+ pointerType?: PointerType | undefined;
5492
+ /** in pixels */
5493
+ screenCoordinates?: PBVector2 | undefined;
5494
+ /** in pixels */
5495
+ screenDelta?: PBVector2 | undefined;
5496
+ /**
5497
+ * ray direction that can be used with the primary camera origin for
5498
+ * raycasting from the cursor into the world
5499
+ */
5500
+ worldRayDirection?: PBVector3 | undefined;
5501
+ }
5502
+
5503
+ /**
5504
+ * @public
5505
+ */
5506
+ export declare namespace PBPrimaryPointerInfo {
5507
+ export function encode(message: PBPrimaryPointerInfo, writer?: _m0.Writer): _m0.Writer;
5508
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBPrimaryPointerInfo;
5509
+ }
5510
+
5009
5511
  /**
5010
5512
  * @public
5011
5513
  */
@@ -5127,6 +5629,39 @@ export declare namespace PBRealmInfo {
5127
5629
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBRealmInfo;
5128
5630
  }
5129
5631
 
5632
+ /**
5633
+ * defines a spotlight.
5634
+ * spotlights are point lights that emit light only in a cone around the transform's forward direction.
5635
+ * add this component together with the PBLight component to transform a point light into a spotlight.
5636
+ * note that spotlights do not model any internal reflections / focus, they only restrict the area of effect.
5637
+ * so for e.g. a torch beam, the bulb illuminance should be multiplied by the solid angle.
5638
+ * a typical torch with a beam width of 15 degrees would use outer angle of 0.15 (7.5 degrees in radians),
5639
+ * and an illuminance approximately equal to the bulb's lumens, e.g. 1200.
5640
+ */
5641
+ /**
5642
+ * @public
5643
+ */
5644
+ export declare interface PBSpotlight {
5645
+ /**
5646
+ * the cone radius in radians. distance away from forward in which the light is visible.
5647
+ * for a torch a value around 0.15 is appropriate.
5648
+ */
5649
+ angle: number;
5650
+ /**
5651
+ * optional angle at which the light is brightest. should be <= outer angle.
5652
+ * if specified, the light will fall off smoothly between `inner_angle` and `angle`.
5653
+ */
5654
+ innerAngle?: number | undefined;
5655
+ }
5656
+
5657
+ /**
5658
+ * @public
5659
+ */
5660
+ export declare namespace PBSpotlight {
5661
+ export function encode(message: PBSpotlight, writer?: _m0.Writer): _m0.Writer;
5662
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBSpotlight;
5663
+ }
5664
+
5130
5665
  /**
5131
5666
  * The TextShape component renders customizable floating text.
5132
5667
  *
@@ -5191,6 +5726,40 @@ export declare namespace PBTextShape {
5191
5726
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBTextShape;
5192
5727
  }
5193
5728
 
5729
+ /**
5730
+ * @public
5731
+ */
5732
+ export declare interface PBTextureCamera {
5733
+ /** rendered texture width */
5734
+ width?: number | undefined;
5735
+ /** rendered texture height */
5736
+ height?: number | undefined;
5737
+ /**
5738
+ * which layer of entities to render. entity layers can be specified by adding PBCameraLayers to target entities.
5739
+ * defaults to 0
5740
+ */
5741
+ layer?: number | undefined;
5742
+ /** default black */
5743
+ clearColor?: PBColor4 | undefined;
5744
+ /** default infinity */
5745
+ farPlane?: number | undefined;
5746
+ mode?: {
5747
+ $case: "perspective";
5748
+ perspective: Perspective;
5749
+ } | {
5750
+ $case: "orthographic";
5751
+ orthographic: Orthographic;
5752
+ } | undefined;
5753
+ }
5754
+
5755
+ /**
5756
+ * @public
5757
+ */
5758
+ export declare namespace PBTextureCamera {
5759
+ export function encode(message: PBTextureCamera, writer?: _m0.Writer): _m0.Writer;
5760
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBTextureCamera;
5761
+ }
5762
+
5194
5763
  /**
5195
5764
  * @public
5196
5765
  */
@@ -5280,6 +5849,25 @@ export declare namespace PBUiBackground {
5280
5849
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiBackground;
5281
5850
  }
5282
5851
 
5852
+ /** The UiCanvas component can be attached to a ui root entity to specify properties of the ui texture. */
5853
+ /**
5854
+ * @public
5855
+ */
5856
+ export declare interface PBUiCanvas {
5857
+ width: number;
5858
+ height: number;
5859
+ /** default = (0.0, 0.0, 0.0, 0.0) / transparent */
5860
+ color?: PBColor4 | undefined;
5861
+ }
5862
+
5863
+ /**
5864
+ * @public
5865
+ */
5866
+ export declare namespace PBUiCanvas {
5867
+ export function encode(message: PBUiCanvas, writer?: _m0.Writer): _m0.Writer;
5868
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiCanvas;
5869
+ }
5870
+
5283
5871
  /** This component is created by the renderer and used by the scenes to know the resolution of the UI canvas */
5284
5872
  /**
5285
5873
  * @public
@@ -5396,6 +5984,21 @@ export declare namespace PBUiInputResult {
5396
5984
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiInputResult;
5397
5985
  }
5398
5986
 
5987
+ /**
5988
+ * @public
5989
+ */
5990
+ export declare interface PBUiScrollResult {
5991
+ value: PBVector2 | undefined;
5992
+ }
5993
+
5994
+ /**
5995
+ * @public
5996
+ */
5997
+ export declare namespace PBUiScrollResult {
5998
+ export function encode(message: PBUiScrollResult, writer?: _m0.Writer): _m0.Writer;
5999
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiScrollResult;
6000
+ }
6001
+
5399
6002
  /**
5400
6003
  * @public
5401
6004
  */
@@ -5412,6 +6015,10 @@ export declare interface PBUiText {
5412
6015
  fontSize?: number | undefined;
5413
6016
  /** wrap text when the border is reached (default: TW_WRAP) */
5414
6017
  textWrap?: TextWrap | undefined;
6018
+ /** width of the outline (default: 0) */
6019
+ outlineWidth?: number | undefined;
6020
+ /** RGBA color of the outline (default: opaque black) */
6021
+ outlineColor?: PBColor4 | undefined;
5415
6022
  }
5416
6023
 
5417
6024
  /**
@@ -5508,6 +6115,16 @@ export declare interface PBUiTransform {
5508
6115
  paddingBottom: number;
5509
6116
  /** default: PointerFilterMode.PFM_NONE */
5510
6117
  pointerFilter?: PointerFilterMode | undefined;
6118
+ /** default: 1 */
6119
+ opacity?: number | undefined;
6120
+ /** default empty */
6121
+ elementId?: string | undefined;
6122
+ /** default position=(0,0) */
6123
+ scrollPosition?: ScrollPositionValue | undefined;
6124
+ /** default ShowScrollBar.SSB_BOTH */
6125
+ scrollVisible?: ShowScrollBar | undefined;
6126
+ /** default 0 */
6127
+ zIndex?: number | undefined;
5511
6128
  }
5512
6129
 
5513
6130
  /**
@@ -5637,6 +6254,25 @@ export declare namespace PBVisibilityComponent {
5637
6254
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBVisibilityComponent;
5638
6255
  }
5639
6256
 
6257
+ /**
6258
+ * @public
6259
+ */
6260
+ export declare interface Perspective {
6261
+ /**
6262
+ * vertical field of view in radians
6263
+ * defaults to pi/4 = 45 degrees
6264
+ */
6265
+ fieldOfView?: number | undefined;
6266
+ }
6267
+
6268
+ /**
6269
+ * @public
6270
+ */
6271
+ export declare namespace Perspective {
6272
+ export function encode(message: Perspective, writer?: _m0.Writer): _m0.Writer;
6273
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): Perspective;
6274
+ }
6275
+
5640
6276
  /**
5641
6277
  * Represens a plane by the equation ax + by + cz + d = 0
5642
6278
  * @public
@@ -5792,6 +6428,24 @@ export declare interface PointerEventsSystem {
5792
6428
  * @param entity - Entity where the callback was attached
5793
6429
  */
5794
6430
  removeOnPointerHoverLeave(entity: Entity): void;
6431
+ /**
6432
+ * @public
6433
+ * Remove the callback for onPointerDrag event
6434
+ * @param entity - Entity where the callback was attached
6435
+ */
6436
+ removeOnPointerDrag(entity: Entity): void;
6437
+ /**
6438
+ * @public
6439
+ * Remove the callback for onPointerDragLocked event
6440
+ * @param entity - Entity where the callback was attached
6441
+ */
6442
+ removeOnPointerDragLocked(entity: Entity): void;
6443
+ /**
6444
+ * @public
6445
+ * Remove the callback for onPointerDragEnd event
6446
+ * @param entity - Entity where the callback was attached
6447
+ */
6448
+ removeOnPointerDragEnd(entity: Entity): void;
5795
6449
  /**
5796
6450
  * @public
5797
6451
  * Execute callback when the user press the InputButton pointing at the entity
@@ -5846,6 +6500,37 @@ export declare interface PointerEventsSystem {
5846
6500
  entity: Entity;
5847
6501
  opts?: Partial<EventSystemOptions>;
5848
6502
  }, cb: EventSystemCallback): void;
6503
+ /**
6504
+ * @public
6505
+ * Execute callback when the user clicks and drags the pointer from inside the entity
6506
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
6507
+ * @param cb - Function to execute when click fires
6508
+ */
6509
+ onPointerDrag(pointerData: {
6510
+ entity: Entity;
6511
+ opts?: Partial<EventSystemOptions>;
6512
+ }, cb: EventSystemCallback): void;
6513
+ /**
6514
+ * @public
6515
+ * Execute callback when the user clicks and drags the pointer from inside the entity,
6516
+ * locking the cursor in place
6517
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
6518
+ * @param cb - Function to execute when click fires
6519
+ */
6520
+ onPointerDragLocked(pointerData: {
6521
+ entity: Entity;
6522
+ opts?: Partial<EventSystemOptions>;
6523
+ }, cb: EventSystemCallback): void;
6524
+ /**
6525
+ * @public
6526
+ * Execute callback when the user releases the button after a drag
6527
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
6528
+ * @param cb - Function to execute when click fires
6529
+ */
6530
+ onPointerDragEnd(pointerData: {
6531
+ entity: Entity;
6532
+ opts?: Partial<EventSystemOptions>;
6533
+ }, cb: EventSystemCallback): void;
5849
6534
  }
5850
6535
 
5851
6536
  /**
@@ -5862,7 +6547,10 @@ export declare const enum PointerEventType {
5862
6547
  PET_UP = 0,
5863
6548
  PET_DOWN = 1,
5864
6549
  PET_HOVER_ENTER = 2,
5865
- PET_HOVER_LEAVE = 3
6550
+ PET_HOVER_LEAVE = 3,
6551
+ PET_DRAG_LOCKED = 4,
6552
+ PET_DRAG = 5,
6553
+ PET_DRAG_END = 6
5866
6554
  }
5867
6555
 
5868
6556
  /**
@@ -5882,6 +6570,17 @@ export declare type PointerFilterType = 'none' | 'block';
5882
6570
  /** @public */
5883
6571
  export declare const PointerLock: LastWriteWinElementSetComponentDefinition<PBPointerLock>;
5884
6572
 
6573
+ /**
6574
+ * @public
6575
+ */
6576
+ export declare const enum PointerType {
6577
+ POT_NONE = 0,
6578
+ POT_MOUSE = 1,
6579
+ POT_PAD = 2,
6580
+ POT_TOUCH = 3,
6581
+ POT_WAND = 4
6582
+ }
6583
+
5885
6584
  /**
5886
6585
  * Type used for defining the position of the element. i.e. margin, padding
5887
6586
  * @public
@@ -5919,6 +6618,9 @@ export declare type PositionType = 'absolute' | 'relative';
5919
6618
  */
5920
6619
  export declare type PositionUnit = `${number}px` | `${number}%` | number | `${number}` | ScaleUnit;
5921
6620
 
6621
+ /** @public */
6622
+ export declare const PrimaryPointerInfo: LastWriteWinElementSetComponentDefinition<PBPrimaryPointerInfo>;
6623
+
5922
6624
  export declare enum ProcessMessageResultType {
5923
6625
  /**
5924
6626
  * Typical message and new state set.
@@ -6473,6 +7175,7 @@ export declare type RaycastSystemOptions = {
6473
7175
  export declare interface ReactBasedUiSystem {
6474
7176
  destroy(): void;
6475
7177
  setUiRenderer(ui: UiComponent): void;
7178
+ setTextureRenderer(entity: Entity, ui: UiComponent): void;
6476
7179
  }
6477
7180
 
6478
7181
  /**
@@ -6926,6 +7629,43 @@ export declare namespace Schemas {
6926
7629
  }) => void;
6927
7630
  }
6928
7631
 
7632
+ /**
7633
+ * @public
7634
+ */
7635
+ export declare interface ScrollPositionValue {
7636
+ value?: {
7637
+ $case: "position";
7638
+ position: PBVector2;
7639
+ } | {
7640
+ $case: "reference";
7641
+ reference: string;
7642
+ } | undefined;
7643
+ }
7644
+
7645
+ /**
7646
+ * @public
7647
+ */
7648
+ export declare namespace ScrollPositionValue {
7649
+ export function encode(message: ScrollPositionValue, writer?: _m0.Writer): _m0.Writer;
7650
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): ScrollPositionValue;
7651
+ }
7652
+
7653
+ /**
7654
+ * @public
7655
+ * The scroll-visible determines if the scrollbars are shown when the scroll overflow is enabled
7656
+ */
7657
+ export declare type ScrollVisibleType = 'horizontal' | 'vertical' | 'both' | 'hidden';
7658
+
7659
+ /**
7660
+ * @public
7661
+ */
7662
+ export declare const enum ShowScrollBar {
7663
+ SSB_BOTH = 0,
7664
+ SSB_ONLY_VERTICAL = 1,
7665
+ SSB_ONLY_HORIZONTAL = 2,
7666
+ SSB_HIDDEN = 3
7667
+ }
7668
+
6929
7669
  /**
6930
7670
  * @public
6931
7671
  */
@@ -6933,6 +7673,9 @@ export declare interface Spec {
6933
7673
  [key: string]: ISchema;
6934
7674
  }
6935
7675
 
7676
+ /** @public */
7677
+ export declare const Spotlight: LastWriteWinElementSetComponentDefinition<PBSpotlight>;
7678
+
6936
7679
  /* Excluded from this release type: SyncComponents */
6937
7680
 
6938
7681
  /**
@@ -7002,6 +7745,9 @@ export declare namespace Texture {
7002
7745
  export function decode(input: _m0.Reader | Uint8Array, length?: number): Texture;
7003
7746
  }
7004
7747
 
7748
+ /** @public */
7749
+ export declare const TextureCamera: LastWriteWinElementSetComponentDefinition<PBTextureCamera>;
7750
+
7005
7751
  /**
7006
7752
  * @public
7007
7753
  */
@@ -7094,6 +7840,9 @@ export declare interface TextureUnion {
7094
7840
  } | {
7095
7841
  $case: "videoTexture";
7096
7842
  videoTexture: VideoTexture;
7843
+ } | {
7844
+ $case: "uiTexture";
7845
+ uiTexture: UiCanvasTexture;
7097
7846
  } | undefined;
7098
7847
  }
7099
7848
 
@@ -7301,6 +8050,8 @@ export declare interface UiBackgroundProps {
7301
8050
  uvs?: number[];
7302
8051
  /** AvatarTexture for the background */
7303
8052
  avatarTexture?: UiAvatarTexture;
8053
+ /** VideoTexture for the background */
8054
+ videoTexture?: UiVideoTexture;
7304
8055
  /** Texture for the background */
7305
8056
  texture?: UiTexture;
7306
8057
  }
@@ -7320,9 +8071,31 @@ export declare interface UiButtonProps extends UiLabelProps, EntityPropTypes {
7320
8071
  disabled?: boolean;
7321
8072
  }
7322
8073
 
8074
+ /** @public */
8075
+ export declare const UiCanvas: LastWriteWinElementSetComponentDefinition<PBUiCanvas>;
8076
+
7323
8077
  /** @public */
7324
8078
  export declare const UiCanvasInformation: LastWriteWinElementSetComponentDefinition<PBUiCanvasInformation>;
7325
8079
 
8080
+ /**
8081
+ * @public
8082
+ */
8083
+ export declare interface UiCanvasTexture {
8084
+ uiCanvasEntity: number;
8085
+ /** default = TextureWrapMode.Clamp */
8086
+ wrapMode?: TextureWrapMode | undefined;
8087
+ /** default = FilterMode.Bilinear */
8088
+ filterMode?: TextureFilterMode | undefined;
8089
+ }
8090
+
8091
+ /**
8092
+ * @public
8093
+ */
8094
+ export declare namespace UiCanvasTexture {
8095
+ export function encode(message: UiCanvasTexture, writer?: _m0.Writer): _m0.Writer;
8096
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): UiCanvasTexture;
8097
+ }
8098
+
7326
8099
  /**
7327
8100
  * @public
7328
8101
  */
@@ -7392,6 +8165,10 @@ export declare interface UiLabelProps {
7392
8165
  textAlign?: TextAlignType | undefined;
7393
8166
  /** Label font type. @defaultValue 'sans-serif' */
7394
8167
  font?: UiFontType | undefined;
8168
+ /** Outline width of the text. @defaultValue 0 */
8169
+ outlineWidth?: number | undefined;
8170
+ /** Outline color of the text. @defaultValue `{ r: 0, g: 0, b: 0, a: 1 }` */
8171
+ outlineColor?: PBColor4 | undefined;
7395
8172
  /** Behaviour when text reached. @defaultValue 'wrap' */
7396
8173
  textWrap?: UiTextWrapType | undefined;
7397
8174
  }
@@ -7401,6 +8178,9 @@ export declare interface UiLabelProps {
7401
8178
  */
7402
8179
  export declare type uint32 = number;
7403
8180
 
8181
+ /** @public */
8182
+ export declare const UiScrollResult: LastWriteWinElementSetComponentDefinition<PBUiScrollResult>;
8183
+
7404
8184
  /** @public */
7405
8185
  export declare const UiText: LastWriteWinElementSetComponentDefinition<PBUiText>;
7406
8186
 
@@ -7473,6 +8253,26 @@ export declare interface UiTransformProps {
7473
8253
  overflow?: OverflowType;
7474
8254
  /** The pointer filter property determines if the ui element blocks the pointer or not (elements with pointer events always block the pointer regardless of this property) **/
7475
8255
  pointerFilter?: PointerFilterType;
8256
+ /** The opacity property sets the opacity level for an element, it's accumulated across children @defaultValue 1 */
8257
+ opacity?: number;
8258
+ /** A reference value to identify the element, default empty */
8259
+ elementId?: string;
8260
+ /** default position=(0,0) if it aplies, a vector or a reference-id */
8261
+ scrollPosition?: PBVector2 | string;
8262
+ /** default ShowScrollBar.SSB_BOTH */
8263
+ scrollVisible?: ScrollVisibleType;
8264
+ /** default 0 */
8265
+ zIndex?: number;
8266
+ }
8267
+
8268
+ /**
8269
+ * Texture
8270
+ * @public
8271
+ */
8272
+ export declare interface UiVideoTexture {
8273
+ videoPlayerEntity: Entity;
8274
+ wrapMode?: TextureWrapType;
8275
+ filterMode?: TextureFilterType;
7476
8276
  }
7477
8277
 
7478
8278
  /**