@dcl/playground-assets 7.6.8-12260048919.commit-4123b99 → 7.6.8-12415739875.commit-c9a0fe7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -178,6 +178,18 @@ 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
 
@@ -198,6 +210,37 @@ export declare const enum AvatarModifierType {
198
210
  AMT_DISABLE_PASSPORTS = 1
199
211
  }
200
212
 
213
+ /**
214
+ * @public
215
+ */
216
+ export declare interface AvatarMovementSettings {
217
+ controlMode?: AvatarControlType | undefined;
218
+ /** if not explicitly set, the following properties default to user's preference settings */
219
+ runSpeed?: number | undefined;
220
+ /** how fast the player gets up to speed or comes to rest. higher = more responsive */
221
+ friction?: number | undefined;
222
+ /** how fast the player accelerates vertically when not on a solid surface, in m/s. should normally be negative */
223
+ gravity?: number | undefined;
224
+ /** how high the player can jump, in meters. should normally be positive. gravity must have the same sign for jumping to be possible */
225
+ jumpHeight?: number | undefined;
226
+ /** max fall speed in m/s. should normally be negative */
227
+ maxFallSpeed?: number | undefined;
228
+ /** speed the player turns in tank mode, in radians/s */
229
+ turnSpeed?: number | undefined;
230
+ /** speed the player walks at, in m/s */
231
+ walkSpeed?: number | undefined;
232
+ /** 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 */
233
+ allowWeightedMovement?: boolean | undefined;
234
+ }
235
+
236
+ /**
237
+ * @public
238
+ */
239
+ export declare namespace AvatarMovementSettings {
240
+ export function encode(message: AvatarMovementSettings, writer?: _m0.Writer): _m0.Writer;
241
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): AvatarMovementSettings;
242
+ }
243
+
201
244
  /** @public */
202
245
  export declare const AvatarShape: LastWriteWinElementSetComponentDefinition<PBAvatarShape>;
203
246
 
@@ -519,6 +562,39 @@ export declare const enum CameraType {
519
562
 
520
563
  export declare type Children = ReactEcs.JSX.ReactNode;
521
564
 
565
+ /**
566
+ * @public
567
+ */
568
+ export declare interface CinematicSettings {
569
+ /** Entity that defines the cinematic camera transform. */
570
+ cameraEntity: number;
571
+ /**
572
+ * Position -> camera's position
573
+ * Rotation -> camera's direction
574
+ * scale.z -> zoom level
575
+ * scale.x and scale.y -> unused
576
+ */
577
+ allowManualRotation?: boolean | undefined;
578
+ /** how far the camera can rotate around the y-axis / look left/right, in radians. default unrestricted */
579
+ yawRange?: number | undefined;
580
+ /** how far the camera can rotate around the x-axis / look up-down, in radians. default unrestricted */
581
+ pitchRange?: number | undefined;
582
+ /** note: cameras can never look up/down further than Vec3::Y */
583
+ rollRange?: number | undefined;
584
+ /** minimum zoom level. must be greater than 0. defaults to the input zoom level */
585
+ zoomMin?: number | undefined;
586
+ /** maximum zoom level. must be greater than 0. defaults to the input zoom level */
587
+ zoomMax?: number | undefined;
588
+ }
589
+
590
+ /**
591
+ * @public
592
+ */
593
+ export declare namespace CinematicSettings {
594
+ export function encode(message: CinematicSettings, writer?: _m0.Writer): _m0.Writer;
595
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): CinematicSettings;
596
+ }
597
+
522
598
  /** ColliderLayer determines the kind of collision to detect, in OR-able bit flag form. */
523
599
  /**
524
600
  * @public
@@ -1295,9 +1371,13 @@ export declare const componentDefinitionByName: {
1295
1371
  "core::CameraMode": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraMode>>;
1296
1372
  "core::CameraModeArea": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraModeArea>>;
1297
1373
  "core::EngineInfo": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBEngineInfo>>;
1374
+ "core::GlobalLight": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGlobalLight>>;
1298
1375
  "core::GltfContainer": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfContainer>>;
1299
1376
  "core::GltfContainerLoadingState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfContainerLoadingState>>;
1377
+ "core::GltfNode": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfNode>>;
1378
+ "core::GltfNodeState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfNodeState>>;
1300
1379
  "core::InputModifier": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBInputModifier>>;
1380
+ "core::Light": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBLight>>;
1301
1381
  "core::MainCamera": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBMainCamera>>;
1302
1382
  "core::Material": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBMaterial>>;
1303
1383
  "core::MeshCollider": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBMeshCollider>>;
@@ -1310,16 +1390,19 @@ export declare const componentDefinitionByName: {
1310
1390
  "core::Raycast": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBRaycast>>;
1311
1391
  "core::RaycastResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBRaycastResult>>;
1312
1392
  "core::RealmInfo": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBRealmInfo>>;
1393
+ "core::Spotlight": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBSpotlight>>;
1313
1394
  "core::TextShape": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTextShape>>;
1314
1395
  "core::Tween": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTween>>;
1315
1396
  "core::TweenSequence": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTweenSequence>>;
1316
1397
  "core::TweenState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTweenState>>;
1317
1398
  "core::UiBackground": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiBackground>>;
1399
+ "core::UiCanvas": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiCanvas>>;
1318
1400
  "core::UiCanvasInformation": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiCanvasInformation>>;
1319
1401
  "core::UiDropdown": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiDropdown>>;
1320
1402
  "core::UiDropdownResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiDropdownResult>>;
1321
1403
  "core::UiInput": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiInput>>;
1322
1404
  "core::UiInputResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiInputResult>>;
1405
+ "core::UiScrollResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiScrollResult>>;
1323
1406
  "core::UiText": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiText>>;
1324
1407
  "core::UiTransform": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiTransform>>;
1325
1408
  "core::VideoEvent": GSetComponentGetter<GrowOnlyValueSetComponentDefinition<PBVideoEvent>>;
@@ -1883,6 +1966,8 @@ export declare type EntityComponents = {
1883
1966
  uiDropdown: PBUiDropdown;
1884
1967
  onMouseDown: Callback;
1885
1968
  onMouseUp: Callback;
1969
+ onMouseEnter: Callback;
1970
+ onMouseLeave: Callback;
1886
1971
  };
1887
1972
 
1888
1973
  /** @public */
@@ -2034,6 +2119,9 @@ export declare type GlobalDirectionRaycastSystemOptions = {
2034
2119
  direction?: PBVector3;
2035
2120
  };
2036
2121
 
2122
+ /** @public */
2123
+ export declare const GlobalLight: LastWriteWinElementSetComponentDefinition<PBGlobalLight>;
2124
+
2037
2125
  export declare type GlobalTargetRaycastOptions = RaycastSystemOptions & GlobalTargetRaycastSystemOptions;
2038
2126
 
2039
2127
  export declare type GlobalTargetRaycastSystemOptions = {
@@ -2046,6 +2134,21 @@ export declare const GltfContainer: LastWriteWinElementSetComponentDefinition<PB
2046
2134
  /** @public */
2047
2135
  export declare const GltfContainerLoadingState: LastWriteWinElementSetComponentDefinition<PBGltfContainerLoadingState>;
2048
2136
 
2137
+ /** @public */
2138
+ export declare const GltfNode: LastWriteWinElementSetComponentDefinition<PBGltfNode>;
2139
+
2140
+ /** @public */
2141
+ export declare const GltfNodeState: LastWriteWinElementSetComponentDefinition<PBGltfNodeState>;
2142
+
2143
+ /**
2144
+ * @public
2145
+ */
2146
+ export declare const enum GltfNodeStateValue {
2147
+ GNSV_PENDING = 0,
2148
+ GNSV_FAILED = 1,
2149
+ GNSV_READY = 2
2150
+ }
2151
+
2049
2152
  /**
2050
2153
  * @public
2051
2154
  */
@@ -2649,6 +2752,9 @@ export declare interface LastWriteWinElementSetComponentDefinition<T> extends Ba
2649
2752
  getOrCreateMutable(entity: Entity, initialValue?: T): T;
2650
2753
  }
2651
2754
 
2755
+ /** @public */
2756
+ export declare const Light: LastWriteWinElementSetComponentDefinition<PBLight>;
2757
+
2652
2758
  /**
2653
2759
  * User key event Listeners
2654
2760
  * @public
@@ -2658,6 +2764,10 @@ export declare type Listeners = {
2658
2764
  onMouseDown?: Callback;
2659
2765
  /** triggered on mouse up event */
2660
2766
  onMouseUp?: Callback;
2767
+ /** triggered on mouse hover event */
2768
+ onMouseEnter?: Callback;
2769
+ /** triggered on mouse leave event */
2770
+ onMouseLeave?: Callback;
2661
2771
  };
2662
2772
 
2663
2773
  /**
@@ -3526,6 +3636,14 @@ export declare interface MeshColliderComponentDefinitionExtended extends LastWri
3526
3636
  * @param colliderMask - the set of layer where the collider reacts, default: Physics and Pointer
3527
3637
  */
3528
3638
  setSphere(entity: Entity, colliderLayers?: ColliderLayer | ColliderLayer[]): void;
3639
+ /**
3640
+ * @public
3641
+ * Set a gltf internal mesh in the MeshCollider component
3642
+ * @param entity - entity to create or replace the MeshRenderer component
3643
+ * @param source - the path to the gltf
3644
+ * @param meshName - the name of the mesh in the gltf
3645
+ */
3646
+ setGltfMesh(entity: Entity, source: string, meshName: string, colliderLayers?: ColliderLayer | ColliderLayer[]): void;
3529
3647
  }
3530
3648
 
3531
3649
  export declare const MeshRenderer: MeshRendererComponentDefinitionExtended;
@@ -3562,6 +3680,14 @@ export declare interface MeshRendererComponentDefinitionExtended extends LastWri
3562
3680
  * @param entity - entity to create or replace the MeshRenderer component
3563
3681
  */
3564
3682
  setSphere(entity: Entity): void;
3683
+ /**
3684
+ * @public
3685
+ * Set a gltf internal mesh in the MeshRenderer component
3686
+ * @param entity - entity to create or replace the MeshRenderer component
3687
+ * @param source - the path to the gltf
3688
+ * @param meshName - the name of the mesh in the gltf
3689
+ */
3690
+ setGltfMesh(entity: Entity, source: string, meshName: string): void;
3565
3691
  }
3566
3692
 
3567
3693
  /**
@@ -4234,6 +4360,9 @@ export declare interface PBAvatarModifierArea {
4234
4360
  excludeIds: string[];
4235
4361
  /** list of modifiers to apply */
4236
4362
  modifiers: AvatarModifierType[];
4363
+ movementSettings?: AvatarMovementSettings | undefined;
4364
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
4365
+ useColliderRange?: boolean | undefined;
4237
4366
  }
4238
4367
 
4239
4368
  /**
@@ -4346,7 +4475,7 @@ export declare namespace PBCameraMode {
4346
4475
 
4347
4476
  /**
4348
4477
  * The CameraModeArea component can be attached to an Entity to define a region of space where
4349
- * the player's camera mode (1st-person or 3rd-person) is overridden.
4478
+ * the player's camera mode (1st-person, 3rd-person or cinematic) is overridden.
4350
4479
  *
4351
4480
  * The Entity's Transform position determines the center-point of the region, while its size is
4352
4481
  * given as a vector in the `area` property below. The Transform rotation is applied, but the scale
@@ -4356,6 +4485,8 @@ export declare namespace PBCameraMode {
4356
4485
  *
4357
4486
  * Note that, while commonly used to delineate a 2D area in a scene (hence the name), the region
4358
4487
  * is actually a 3D volume.
4488
+ *
4489
+ * When mode is set to CtCinematic, the cinematic_settings field must also be provided.
4359
4490
  */
4360
4491
  /**
4361
4492
  * @public
@@ -4365,6 +4496,9 @@ export declare interface PBCameraModeArea {
4365
4496
  area: PBVector3 | undefined;
4366
4497
  /** the camera mode to enforce */
4367
4498
  mode: CameraType;
4499
+ cinematicSettings?: CinematicSettings | undefined;
4500
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
4501
+ useColliderRange?: boolean | undefined;
4368
4502
  }
4369
4503
 
4370
4504
  /**
@@ -4436,6 +4570,39 @@ export declare namespace PBEngineInfo {
4436
4570
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBEngineInfo;
4437
4571
  }
4438
4572
 
4573
+ /**
4574
+ * defines the global scene light settings. must be added to the scene root.
4575
+ * to control sunlight color, intensity, shadows etc, you can also add a PBLight to the scene root.
4576
+ */
4577
+ /**
4578
+ * @public
4579
+ */
4580
+ export declare interface PBGlobalLight {
4581
+ /**
4582
+ * the direction the directional light shines in.
4583
+ * default depends on time of day and explorer implementation
4584
+ */
4585
+ direction?: PBVector3 | undefined;
4586
+ /**
4587
+ * ambient light color
4588
+ * default: White
4589
+ */
4590
+ ambientColor?: PBColor3 | undefined;
4591
+ /**
4592
+ * ambient light intensity. the explorer default ambient brightness is multiplied by this non-physical quantity.
4593
+ * default 1
4594
+ */
4595
+ ambientBrightness?: number | undefined;
4596
+ }
4597
+
4598
+ /**
4599
+ * @public
4600
+ */
4601
+ export declare namespace PBGlobalLight {
4602
+ export function encode(message: PBGlobalLight, writer?: _m0.Writer): _m0.Writer;
4603
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGlobalLight;
4604
+ }
4605
+
4439
4606
  /**
4440
4607
  * GltfContainer loads a GLTF file (and any additional files packaged inside) attached to an Entity.
4441
4608
  *
@@ -4471,6 +4638,25 @@ export declare namespace PBGltfContainer {
4471
4638
  */
4472
4639
  export declare interface PBGltfContainerLoadingState {
4473
4640
  currentState: LoadingState;
4641
+ /** all node paths in the gltf, which can be used with a GltfNode to inspect and modify the gltf contents */
4642
+ nodePaths: string[];
4643
+ /** all meshes in the gltf. unnamed meshes will be auto-assigned a name of the form `MeshX` or `MeshX/PrimitiveY` */
4644
+ meshNames: string[];
4645
+ /**
4646
+ * where X is the mesh index and Y is the primitive index (and there is more than 1 primitive). note this may
4647
+ * conflict with manually named meshes - to avoid any issues make sure all your meshes are explicitly named.
4648
+ */
4649
+ materialNames: string[];
4650
+ /**
4651
+ * X is the material index. note this may conflict with manually named materials - to avoid any issues make
4652
+ * sure all your materials are explicitly named.
4653
+ */
4654
+ skinNames: string[];
4655
+ /**
4656
+ * X is the skin index. note this may conflict with manually named skins - to avoid any issues make sure all
4657
+ * your skins are explicitly named.
4658
+ */
4659
+ animationNames: string[];
4474
4660
  }
4475
4661
 
4476
4662
  /**
@@ -4481,6 +4667,77 @@ export declare namespace PBGltfContainerLoadingState {
4481
4667
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfContainerLoadingState;
4482
4668
  }
4483
4669
 
4670
+ /**
4671
+ * a GltfNode links a scene entity with a node from within a gltf, allowing the scene to inspect it or modify it.
4672
+ * This component must be added to a direct child of an entity with a PBGltfContainer component, or
4673
+ * to a direct child of another entity with a GltfNode component, and the referenced gltf node must be a descendent of the gltf node
4674
+ * in the parent.
4675
+ * The name must match the path of one of the nodes within the Gltf. These are available on the GltfContainerLoadingState component.
4676
+ *
4677
+ * The renderer will attach a PBGltfNodeState to the entity describing the state. Once the state is `GNS_READY`,
4678
+ * - the `Transform` will be updated to match the position of the node within the gltf (relative to the gltf root, or the parent node),
4679
+ * - a `MeshRenderer` with a GltfMesh mesh type will be added (if the gltf node has a mesh).
4680
+ * - a `MeshCollider` with a GltfMesh mesh type will be added (if the gltf node has a collider).
4681
+ * - a `Material` component including a GltfMaterial reference will be added (if the gltf node has a material).
4682
+ *
4683
+ * After creation, if an animation moves the node, the `Transform` will be updated.
4684
+ *
4685
+ * From the scene, you can modify various components to alter the gltf node:
4686
+ * - modifying the `Transform` position/rotation/scale will move the node. The position is interpreted relative to the gltf root (or parent node),
4687
+ * regardless of any intermediate gltf node hierarchy.
4688
+ * If an animation is playing, the animation takes priority and the scene entity's position will be updated to match the animation.
4689
+ * - `Visibility` can be added to hide or show the node and it's children in the gltf hierarchy.
4690
+ * - `MeshRenderer` can be added/modified/removed to create/modify/remove a mesh on the node.
4691
+ * - `MeshCollider` can be added/modified/removed to create/modify/remove a collider on the node.
4692
+ * - `Material` can be added or modified to change the material properties. If the gltf node has a material, the original material will be
4693
+ * 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
4694
+ * PBMaterial will be maintained.
4695
+ *
4696
+ * The scene can add additional entities as children to the gltf node, but structural modifications of the gltf are not possible:
4697
+ * - changing the scene hierarchy will not change the gltf node hierarchy. Moving the entity out of the gltf will sever the link and
4698
+ * change the state to `GNS_FAILED`.
4699
+ * - deleting the scene entity will not delete the gltf node.
4700
+ *
4701
+ * Removing the GltfNode will revert any changes to the original gltf. If the GltfNode component is removed and the mesh/collider/material
4702
+ * are not removed, this will result in a duplication of these components as the previously-linked entity will retain it's components and
4703
+ * the gltf node will also be displayed.
4704
+ */
4705
+ /**
4706
+ * @public
4707
+ */
4708
+ export declare interface PBGltfNode {
4709
+ /** the path of the target node in the Gltf. */
4710
+ path: string;
4711
+ }
4712
+
4713
+ /**
4714
+ * @public
4715
+ */
4716
+ export declare namespace PBGltfNode {
4717
+ export function encode(message: PBGltfNode, writer?: _m0.Writer): _m0.Writer;
4718
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNode;
4719
+ }
4720
+
4721
+ /**
4722
+ * The state of a linked gltf node.
4723
+ * If the state is GNSV_FAILED, the renderer may describe the failure in the error string.
4724
+ */
4725
+ /**
4726
+ * @public
4727
+ */
4728
+ export declare interface PBGltfNodeState {
4729
+ state: GltfNodeStateValue;
4730
+ error?: string | undefined;
4731
+ }
4732
+
4733
+ /**
4734
+ * @public
4735
+ */
4736
+ export declare namespace PBGltfNodeState {
4737
+ export function encode(message: PBGltfNodeState, writer?: _m0.Writer): _m0.Writer;
4738
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNodeState;
4739
+ }
4740
+
4484
4741
  /**
4485
4742
  * @public
4486
4743
  */
@@ -4520,6 +4777,62 @@ export declare namespace PBInputModifier_StandardInput {
4520
4777
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBInputModifier_StandardInput;
4521
4778
  }
4522
4779
 
4780
+ /**
4781
+ * defines a light source.
4782
+ * the world has a default directional light (like sunlight) which can be overridden by adding the light component to the scene root.
4783
+ * a PBGlobalLight component can also be added to the root to control the directional light direction.
4784
+ * point lights (lightbulbs) or spotlights can be created by attaching the light component to non-root entities.
4785
+ */
4786
+ /**
4787
+ * @public
4788
+ */
4789
+ export declare interface PBLight {
4790
+ /**
4791
+ * whether the light is on
4792
+ * default true
4793
+ */
4794
+ enabled?: boolean | undefined;
4795
+ /**
4796
+ * light brightness in lux (lumens/m^2).
4797
+ *
4798
+ * 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).
4799
+ * the default global light illuminance varies from 400 (sunrise/sunset) to 10,000 (midday).
4800
+ * for typical values, see https://en.wikipedia.org/wiki/Lux#Illuminance
4801
+ *
4802
+ * for point and spot lights, this is the lumens/m^2 at 1m distance from the light. to transform from raw lumens,
4803
+ * divide lumens by ~12 (4*pi).
4804
+ * e.g. a 100w household bulb with 1200 lumens would have an illuminance of ~100.
4805
+ * a lighthouse bulb with 200,000 lumens would have an illuminance of ~15,000 (ignoring beam reflections)
4806
+ *
4807
+ * default
4808
+ * for point/spotlights: 10,000
4809
+ * for global directional light: depends on explorer implementation. may vary on light direction, time of day, etc
4810
+ */
4811
+ illuminance?: number | undefined;
4812
+ /**
4813
+ * whether the light should cast shadows.
4814
+ * note: even when set to true the engine may not display shadows, or may only show shadows for a limited number
4815
+ * of lights depending on the implementation, platform, and user settings.
4816
+ * default
4817
+ * for point/spotlights: false / off
4818
+ * for global directional light: true / on
4819
+ */
4820
+ shadows?: boolean | undefined;
4821
+ /**
4822
+ * light color
4823
+ * default White
4824
+ */
4825
+ color?: PBColor3 | undefined;
4826
+ }
4827
+
4828
+ /**
4829
+ * @public
4830
+ */
4831
+ export declare namespace PBLight {
4832
+ export function encode(message: PBLight, writer?: _m0.Writer): _m0.Writer;
4833
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBLight;
4834
+ }
4835
+
4523
4836
  /**
4524
4837
  * PBMainCamera.virtualCameraEntity defines which VirtualCamera entity is active at the moment.
4525
4838
  * This component may hold 'repeated common.CameraTransition' transitionOverrides in the future
@@ -4551,6 +4864,14 @@ export declare interface PBMaterial {
4551
4864
  $case: "pbr";
4552
4865
  pbr: PBMaterial_PbrMaterial;
4553
4866
  } | undefined;
4867
+ /**
4868
+ * A gltf material that may provide additional features not supported by the PbMaterial fields.
4869
+ * If both gltf and material fields are provided, the gltf will be used only for extended features not
4870
+ * supported by the PbMaterial.
4871
+ * If this is provided and the `material` field is not provided, the renderer will update the material
4872
+ * field with data that reflects the gltf material once it is loaded.
4873
+ */
4874
+ gltf?: PBMaterial_GltfMaterial | undefined;
4554
4875
  }
4555
4876
 
4556
4877
  /**
@@ -4561,6 +4882,22 @@ export declare namespace PBMaterial {
4561
4882
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial;
4562
4883
  }
4563
4884
 
4885
+ /**
4886
+ * @public
4887
+ */
4888
+ export declare interface PBMaterial_GltfMaterial {
4889
+ gltfSrc: string;
4890
+ name: string;
4891
+ }
4892
+
4893
+ /**
4894
+ * @public
4895
+ */
4896
+ export declare namespace PBMaterial_GltfMaterial {
4897
+ export function encode(message: PBMaterial_GltfMaterial, writer?: _m0.Writer): _m0.Writer;
4898
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial_GltfMaterial;
4899
+ }
4900
+
4564
4901
  /**
4565
4902
  * @public
4566
4903
  */
@@ -4573,9 +4910,9 @@ export declare interface PBMaterial_PbrMaterial {
4573
4910
  castShadows?: boolean | undefined;
4574
4911
  /** @deprecated Alpha textures are no longer supported on PBRMaterial and UnlitMaterial.alphaTexture should be used instead. */
4575
4912
  alphaTexture?: TextureUnion | undefined;
4576
- /** default = null */
4913
+ /** default = null. Note that tilling and offset properties are ignored for this texture. */
4577
4914
  emissiveTexture?: TextureUnion | undefined;
4578
- /** default = null */
4915
+ /** default = null. Note that tilling and offset properties are ignored for this texture. */
4579
4916
  bumpTexture?: TextureUnion | undefined;
4580
4917
  /** default = white; */
4581
4918
  albedoColor?: PBColor4 | undefined;
@@ -4617,7 +4954,7 @@ export declare interface PBMaterial_UnlitMaterial {
4617
4954
  castShadows?: boolean | undefined;
4618
4955
  /** default = white; */
4619
4956
  diffuseColor?: PBColor4 | undefined;
4620
- /** default = null */
4957
+ /** default = null. Note that tilling and offset properties are ignored for this texture. */
4621
4958
  alphaTexture?: TextureUnion | undefined;
4622
4959
  }
4623
4960
 
@@ -4657,6 +4994,9 @@ export declare interface PBMeshCollider {
4657
4994
  } | {
4658
4995
  $case: "plane";
4659
4996
  plane: PBMeshCollider_PlaneMesh;
4997
+ } | {
4998
+ $case: "gltf";
4999
+ gltf: PBMeshCollider_GltfMesh;
4660
5000
  } | undefined;
4661
5001
  }
4662
5002
 
@@ -4702,6 +5042,25 @@ export declare namespace PBMeshCollider_CylinderMesh {
4702
5042
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_CylinderMesh;
4703
5043
  }
4704
5044
 
5045
+ /** A collider constructed from a Gltf Mesh. */
5046
+ /**
5047
+ * @public
5048
+ */
5049
+ export declare interface PBMeshCollider_GltfMesh {
5050
+ /** the GLTF file path as listed in the scene's manifest. */
5051
+ gltfSrc: string;
5052
+ /** the name of the mesh asset */
5053
+ name: string;
5054
+ }
5055
+
5056
+ /**
5057
+ * @public
5058
+ */
5059
+ export declare namespace PBMeshCollider_GltfMesh {
5060
+ export function encode(message: PBMeshCollider_GltfMesh, writer?: _m0.Writer): _m0.Writer;
5061
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_GltfMesh;
5062
+ }
5063
+
4705
5064
  /** PlaneMesh is a 2D rectangle described by the Entity's Transform. */
4706
5065
  /**
4707
5066
  * @public
@@ -4734,13 +5093,11 @@ export declare namespace PBMeshCollider_SphereMesh {
4734
5093
 
4735
5094
  /**
4736
5095
  * The MeshRenderer component renders a basic geometric shape for an Entity. It can be a cube, a
4737
- * plane, a sphere or a cylinder.
5096
+ * plane, a sphere, a cylinder, or a Gltf mesh.
4738
5097
  *
4739
5098
  * The cube and plane variants can include a UV texture mapping, so specific areas of a material
4740
5099
  * texture are rendered on different faces of the shape. They are serialized as a sequence of 2D
4741
5100
  * `float` coordinates, one for each corner of each side of each face.
4742
- *
4743
- * More complex shapes require the use of a `GltfContainer` component.
4744
5101
  */
4745
5102
  /**
4746
5103
  * @public
@@ -4758,6 +5115,9 @@ export declare interface PBMeshRenderer {
4758
5115
  } | {
4759
5116
  $case: "plane";
4760
5117
  plane: PBMeshRenderer_PlaneMesh;
5118
+ } | {
5119
+ $case: "gltf";
5120
+ gltf: PBMeshRenderer_GltfMesh;
4761
5121
  } | undefined;
4762
5122
  }
4763
5123
 
@@ -4805,6 +5165,25 @@ export declare namespace PBMeshRenderer_CylinderMesh {
4805
5165
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_CylinderMesh;
4806
5166
  }
4807
5167
 
5168
+ /** A mesh from a Gltf. */
5169
+ /**
5170
+ * @public
5171
+ */
5172
+ export declare interface PBMeshRenderer_GltfMesh {
5173
+ /** the GLTF file path as listed in the scene's manifest. */
5174
+ gltfSrc: string;
5175
+ /** the name of the mesh asset */
5176
+ name: string;
5177
+ }
5178
+
5179
+ /**
5180
+ * @public
5181
+ */
5182
+ export declare namespace PBMeshRenderer_GltfMesh {
5183
+ export function encode(message: PBMeshRenderer_GltfMesh, writer?: _m0.Writer): _m0.Writer;
5184
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_GltfMesh;
5185
+ }
5186
+
4808
5187
  /** PlaneMesh renders a 2D rectangular shape. */
4809
5188
  /**
4810
5189
  * @public
@@ -5144,6 +5523,39 @@ export declare namespace PBRealmInfo {
5144
5523
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBRealmInfo;
5145
5524
  }
5146
5525
 
5526
+ /**
5527
+ * defines a spotlight.
5528
+ * spotlights are point lights that emit light only in a cone around the transform's forward direction.
5529
+ * add this component together with the PBLight component to transform a point light into a spotlight.
5530
+ * note that spotlights do not model any internal reflections / focus, they only restrict the area of effect.
5531
+ * so for e.g. a torch beam, the bulb illuminance should be multiplied by the solid angle.
5532
+ * a typical torch with a beam width of 15 degrees would use outer angle of 0.15 (7.5 degrees in radians),
5533
+ * and an illuminance approximately equal to the bulb's lumens, e.g. 1200.
5534
+ */
5535
+ /**
5536
+ * @public
5537
+ */
5538
+ export declare interface PBSpotlight {
5539
+ /**
5540
+ * the cone radius in radians. distance away from forward in which the light is visible.
5541
+ * for a torch a value around 0.15 is appropriate.
5542
+ */
5543
+ angle: number;
5544
+ /**
5545
+ * optional angle at which the light is brightest. should be <= outer angle.
5546
+ * if specified, the light will fall off smoothly between `inner_angle` and `angle`.
5547
+ */
5548
+ innerAngle?: number | undefined;
5549
+ }
5550
+
5551
+ /**
5552
+ * @public
5553
+ */
5554
+ export declare namespace PBSpotlight {
5555
+ export function encode(message: PBSpotlight, writer?: _m0.Writer): _m0.Writer;
5556
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBSpotlight;
5557
+ }
5558
+
5147
5559
  /**
5148
5560
  * The TextShape component renders customizable floating text.
5149
5561
  *
@@ -5224,6 +5636,9 @@ export declare interface PBTween {
5224
5636
  } | {
5225
5637
  $case: "scale";
5226
5638
  scale: Scale;
5639
+ } | {
5640
+ $case: "textureMove";
5641
+ textureMove: TextureMove;
5227
5642
  } | undefined;
5228
5643
  /** default true (pause or running) */
5229
5644
  playing?: boolean | undefined;
@@ -5294,6 +5709,25 @@ export declare namespace PBUiBackground {
5294
5709
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiBackground;
5295
5710
  }
5296
5711
 
5712
+ /** The UiCanvas component can be attached to a ui root entity to specify properties of the ui texture. */
5713
+ /**
5714
+ * @public
5715
+ */
5716
+ export declare interface PBUiCanvas {
5717
+ width: number;
5718
+ height: number;
5719
+ /** default = (0.0, 0.0, 0.0, 0.0) / transparent */
5720
+ color?: PBColor4 | undefined;
5721
+ }
5722
+
5723
+ /**
5724
+ * @public
5725
+ */
5726
+ export declare namespace PBUiCanvas {
5727
+ export function encode(message: PBUiCanvas, writer?: _m0.Writer): _m0.Writer;
5728
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiCanvas;
5729
+ }
5730
+
5297
5731
  /** This component is created by the renderer and used by the scenes to know the resolution of the UI canvas */
5298
5732
  /**
5299
5733
  * @public
@@ -5410,6 +5844,21 @@ export declare namespace PBUiInputResult {
5410
5844
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiInputResult;
5411
5845
  }
5412
5846
 
5847
+ /**
5848
+ * @public
5849
+ */
5850
+ export declare interface PBUiScrollResult {
5851
+ value: PBVector2 | undefined;
5852
+ }
5853
+
5854
+ /**
5855
+ * @public
5856
+ */
5857
+ export declare namespace PBUiScrollResult {
5858
+ export function encode(message: PBUiScrollResult, writer?: _m0.Writer): _m0.Writer;
5859
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiScrollResult;
5860
+ }
5861
+
5413
5862
  /**
5414
5863
  * @public
5415
5864
  */
@@ -5426,6 +5875,10 @@ export declare interface PBUiText {
5426
5875
  fontSize?: number | undefined;
5427
5876
  /** wrap text when the border is reached (default: TW_WRAP) */
5428
5877
  textWrap?: TextWrap | undefined;
5878
+ /** width of the outline (default: 0) */
5879
+ outlineWidth?: number | undefined;
5880
+ /** RGBA color of the outline (default: opaque black) */
5881
+ outlineColor?: PBColor4 | undefined;
5429
5882
  }
5430
5883
 
5431
5884
  /**
@@ -5522,6 +5975,16 @@ export declare interface PBUiTransform {
5522
5975
  paddingBottom: number;
5523
5976
  /** default: PointerFilterMode.PFM_NONE */
5524
5977
  pointerFilter?: PointerFilterMode | undefined;
5978
+ /** default: 1 */
5979
+ opacity?: number | undefined;
5980
+ /** default empty */
5981
+ elementId?: string | undefined;
5982
+ /** default position=(0,0) */
5983
+ scrollPosition?: ScrollPositionValue | undefined;
5984
+ /** default ShowScrollBar.SSB_BOTH */
5985
+ scrollVisible?: ShowScrollBar | undefined;
5986
+ /** default 0 */
5987
+ zIndex?: number | undefined;
5525
5988
  }
5526
5989
 
5527
5990
  /**
@@ -5794,6 +6257,18 @@ export declare interface PointerEventsSystem {
5794
6257
  * @param entity - Entity where the callback was attached
5795
6258
  */
5796
6259
  removeOnPointerUp(entity: Entity): void;
6260
+ /**
6261
+ * @public
6262
+ * Remove the callback for onPointerHoverEnter event
6263
+ * @param entity - Entity where the callback was attached
6264
+ */
6265
+ removeOnPointerHoverEnter(entity: Entity): void;
6266
+ /**
6267
+ * @public
6268
+ * Remove the callback for onPointerHoverLeave event
6269
+ * @param entity - Entity where the callback was attached
6270
+ */
6271
+ removeOnPointerHoverLeave(entity: Entity): void;
5797
6272
  /**
5798
6273
  * @public
5799
6274
  * Execute callback when the user press the InputButton pointing at the entity
@@ -5828,6 +6303,26 @@ export declare interface PointerEventsSystem {
5828
6303
  * @param opts - Opts to trigger Feedback and Button
5829
6304
  */
5830
6305
  onPointerUp(entity: Entity, cb: EventSystemCallback, opts?: Partial<EventSystemOptions>): void;
6306
+ /**
6307
+ * @public
6308
+ * Execute callback when the user place the pointer over the entity
6309
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
6310
+ * @param cb - Function to execute when click fires
6311
+ */
6312
+ onPointerHoverEnter(pointerData: {
6313
+ entity: Entity;
6314
+ opts?: Partial<EventSystemOptions>;
6315
+ }, cb: EventSystemCallback): void;
6316
+ /**
6317
+ * @public
6318
+ * Execute callback when the user take the pointer out of the entity
6319
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
6320
+ * @param cb - Function to execute when click fires
6321
+ */
6322
+ onPointerHoverLeave(pointerData: {
6323
+ entity: Entity;
6324
+ opts?: Partial<EventSystemOptions>;
6325
+ }, cb: EventSystemCallback): void;
5831
6326
  }
5832
6327
 
5833
6328
  /**
@@ -6455,6 +6950,7 @@ export declare type RaycastSystemOptions = {
6455
6950
  export declare interface ReactBasedUiSystem {
6456
6951
  destroy(): void;
6457
6952
  setUiRenderer(ui: UiComponent): void;
6953
+ setTextureRenderer(entity: Entity, ui: UiComponent): void;
6458
6954
  }
6459
6955
 
6460
6956
  /**
@@ -6908,6 +7404,43 @@ export declare namespace Schemas {
6908
7404
  }) => void;
6909
7405
  }
6910
7406
 
7407
+ /**
7408
+ * @public
7409
+ */
7410
+ export declare interface ScrollPositionValue {
7411
+ value?: {
7412
+ $case: "position";
7413
+ position: PBVector2;
7414
+ } | {
7415
+ $case: "reference";
7416
+ reference: string;
7417
+ } | undefined;
7418
+ }
7419
+
7420
+ /**
7421
+ * @public
7422
+ */
7423
+ export declare namespace ScrollPositionValue {
7424
+ export function encode(message: ScrollPositionValue, writer?: _m0.Writer): _m0.Writer;
7425
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): ScrollPositionValue;
7426
+ }
7427
+
7428
+ /**
7429
+ * @public
7430
+ * The scroll-visible determines if the scrollbars are shown when the scroll overflow is enabled
7431
+ */
7432
+ export declare type ScrollVisibleType = 'horizontal' | 'vertical' | 'both' | 'hidden';
7433
+
7434
+ /**
7435
+ * @public
7436
+ */
7437
+ export declare const enum ShowScrollBar {
7438
+ SSB_BOTH = 0,
7439
+ SSB_ONLY_VERTICAL = 1,
7440
+ SSB_ONLY_HORIZONTAL = 2,
7441
+ SSB_HIDDEN = 3
7442
+ }
7443
+
6911
7444
  /**
6912
7445
  * @public
6913
7446
  */
@@ -6915,6 +7448,9 @@ export declare interface Spec {
6915
7448
  [key: string]: ISchema;
6916
7449
  }
6917
7450
 
7451
+ /** @public */
7452
+ export declare const Spotlight: LastWriteWinElementSetComponentDefinition<PBSpotlight>;
7453
+
6918
7454
  /**
6919
7455
  * @alpha
6920
7456
  * This is going to be used for sync components through a server.
@@ -6975,12 +7511,9 @@ export declare interface Texture {
6975
7511
  wrapMode?: TextureWrapMode | undefined;
6976
7512
  /** default = FilterMode.Bilinear */
6977
7513
  filterMode?: TextureFilterMode | undefined;
6978
- /**
6979
- * Final uv = offset + (input_uv * tiling)
6980
- * Offset for texture positioning.
6981
- */
7514
+ /** Final uv = offset + (input_uv * tiling) */
6982
7515
  offset?: PBVector2 | undefined;
6983
- /** Tiling multiplier for texture repetition. */
7516
+ /** default = Vector2.One; Tiling multiplier for texture repetition, only works for the texture property in PbrMaterial or UnlitMaterial. */
6984
7517
  tiling?: PBVector2 | undefined;
6985
7518
  }
6986
7519
 
@@ -7040,6 +7573,37 @@ export declare interface TextureHelper {
7040
7573
  */
7041
7574
  export declare type TextureMode = 'nine-slices' | 'center' | 'stretch';
7042
7575
 
7576
+ /**
7577
+ * This tween mode allows to move the texture of a PbrMaterial or UnlitMaterial.
7578
+ * You can also specify the movement type (offset or tiling)
7579
+ */
7580
+ /**
7581
+ * @public
7582
+ */
7583
+ export declare interface TextureMove {
7584
+ start: PBVector2 | undefined;
7585
+ end: PBVector2 | undefined;
7586
+ /** default = TextureMovementType.TMT_OFFSET */
7587
+ movementType?: TextureMovementType | undefined;
7588
+ }
7589
+
7590
+ /**
7591
+ * @public
7592
+ */
7593
+ export declare namespace TextureMove {
7594
+ export function encode(message: TextureMove, writer?: _m0.Writer): _m0.Writer;
7595
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): TextureMove;
7596
+ }
7597
+
7598
+ /**
7599
+ * @public
7600
+ */
7601
+ export declare const enum TextureMovementType {
7602
+ /** TMT_OFFSET - default = TextureMovementType.TMT_OFFSET */
7603
+ TMT_OFFSET = 0,
7604
+ TMT_TILING = 1
7605
+ }
7606
+
7043
7607
  /**
7044
7608
  * @public
7045
7609
  */
@@ -7053,6 +7617,9 @@ export declare interface TextureUnion {
7053
7617
  } | {
7054
7618
  $case: "videoTexture";
7055
7619
  videoTexture: VideoTexture;
7620
+ } | {
7621
+ $case: "uiTexture";
7622
+ uiTexture: UiCanvasTexture;
7056
7623
  } | undefined;
7057
7624
  }
7058
7625
 
@@ -7271,9 +7838,31 @@ export declare interface UiButtonProps extends UiLabelProps, EntityPropTypes {
7271
7838
  disabled?: boolean;
7272
7839
  }
7273
7840
 
7841
+ /** @public */
7842
+ export declare const UiCanvas: LastWriteWinElementSetComponentDefinition<PBUiCanvas>;
7843
+
7274
7844
  /** @public */
7275
7845
  export declare const UiCanvasInformation: LastWriteWinElementSetComponentDefinition<PBUiCanvasInformation>;
7276
7846
 
7847
+ /**
7848
+ * @public
7849
+ */
7850
+ export declare interface UiCanvasTexture {
7851
+ uiCanvasEntity: number;
7852
+ /** default = TextureWrapMode.Clamp */
7853
+ wrapMode?: TextureWrapMode | undefined;
7854
+ /** default = FilterMode.Bilinear */
7855
+ filterMode?: TextureFilterMode | undefined;
7856
+ }
7857
+
7858
+ /**
7859
+ * @public
7860
+ */
7861
+ export declare namespace UiCanvasTexture {
7862
+ export function encode(message: UiCanvasTexture, writer?: _m0.Writer): _m0.Writer;
7863
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): UiCanvasTexture;
7864
+ }
7865
+
7277
7866
  /**
7278
7867
  * @public
7279
7868
  */
@@ -7343,6 +7932,10 @@ export declare interface UiLabelProps {
7343
7932
  textAlign?: TextAlignType | undefined;
7344
7933
  /** Label font type. @defaultValue 'sans-serif' */
7345
7934
  font?: UiFontType | undefined;
7935
+ /** Outline width of the text. @defaultValue 0 */
7936
+ outlineWidth?: number | undefined;
7937
+ /** Outline color of the text. @defaultValue `{ r: 0, g: 0, b: 0, a: 1 }` */
7938
+ outlineColor?: PBColor4 | undefined;
7346
7939
  /** Behaviour when text reached. @defaultValue 'wrap' */
7347
7940
  textWrap?: UiTextWrapType | undefined;
7348
7941
  }
@@ -7352,6 +7945,9 @@ export declare interface UiLabelProps {
7352
7945
  */
7353
7946
  export declare type uint32 = number;
7354
7947
 
7948
+ /** @public */
7949
+ export declare const UiScrollResult: LastWriteWinElementSetComponentDefinition<PBUiScrollResult>;
7950
+
7355
7951
  /** @public */
7356
7952
  export declare const UiText: LastWriteWinElementSetComponentDefinition<PBUiText>;
7357
7953
 
@@ -7424,6 +8020,16 @@ export declare interface UiTransformProps {
7424
8020
  overflow?: OverflowType;
7425
8021
  /** 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) **/
7426
8022
  pointerFilter?: PointerFilterType;
8023
+ /** The opacity property sets the opacity level for an element, it's accumulated across children @defaultValue 1 */
8024
+ opacity?: number;
8025
+ /** A reference value to identify the element, default empty */
8026
+ elementId?: string;
8027
+ /** default position=(0,0) if it aplies, a vector or a reference-id */
8028
+ scrollPosition?: PBVector2 | string;
8029
+ /** default ShowScrollBar.SSB_BOTH */
8030
+ scrollVisible?: ScrollVisibleType;
8031
+ /** default 0 */
8032
+ zIndex?: number;
7427
8033
  }
7428
8034
 
7429
8035
  /**