@dcl/playground-assets 7.6.5-11798467383.commit-5502b7c → 7.6.5-11859795746.commit-4bc5ec9

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>>;
@@ -2034,6 +2117,9 @@ export declare type GlobalDirectionRaycastSystemOptions = {
2034
2117
  direction?: PBVector3;
2035
2118
  };
2036
2119
 
2120
+ /** @public */
2121
+ export declare const GlobalLight: LastWriteWinElementSetComponentDefinition<PBGlobalLight>;
2122
+
2037
2123
  export declare type GlobalTargetRaycastOptions = RaycastSystemOptions & GlobalTargetRaycastSystemOptions;
2038
2124
 
2039
2125
  export declare type GlobalTargetRaycastSystemOptions = {
@@ -2046,6 +2132,21 @@ export declare const GltfContainer: LastWriteWinElementSetComponentDefinition<PB
2046
2132
  /** @public */
2047
2133
  export declare const GltfContainerLoadingState: LastWriteWinElementSetComponentDefinition<PBGltfContainerLoadingState>;
2048
2134
 
2135
+ /** @public */
2136
+ export declare const GltfNode: LastWriteWinElementSetComponentDefinition<PBGltfNode>;
2137
+
2138
+ /** @public */
2139
+ export declare const GltfNodeState: LastWriteWinElementSetComponentDefinition<PBGltfNodeState>;
2140
+
2141
+ /**
2142
+ * @public
2143
+ */
2144
+ export declare const enum GltfNodeStateValue {
2145
+ GNSV_PENDING = 0,
2146
+ GNSV_FAILED = 1,
2147
+ GNSV_READY = 2
2148
+ }
2149
+
2049
2150
  /**
2050
2151
  * @public
2051
2152
  */
@@ -2630,6 +2731,9 @@ export declare interface LastWriteWinElementSetComponentDefinition<T> extends Ba
2630
2731
  getOrCreateMutable(entity: Entity, initialValue?: T): T;
2631
2732
  }
2632
2733
 
2734
+ /** @public */
2735
+ export declare const Light: LastWriteWinElementSetComponentDefinition<PBLight>;
2736
+
2633
2737
  /**
2634
2738
  * User key event Listeners
2635
2739
  * @public
@@ -3507,6 +3611,14 @@ export declare interface MeshColliderComponentDefinitionExtended extends LastWri
3507
3611
  * @param colliderMask - the set of layer where the collider reacts, default: Physics and Pointer
3508
3612
  */
3509
3613
  setSphere(entity: Entity, colliderLayers?: ColliderLayer | ColliderLayer[]): void;
3614
+ /**
3615
+ * @public
3616
+ * Set a gltf internal mesh in the MeshCollider component
3617
+ * @param entity - entity to create or replace the MeshRenderer component
3618
+ * @param source - the path to the gltf
3619
+ * @param meshName - the name of the mesh in the gltf
3620
+ */
3621
+ setGltfMesh(entity: Entity, source: string, meshName: string, colliderLayers?: ColliderLayer | ColliderLayer[]): void;
3510
3622
  }
3511
3623
 
3512
3624
  export declare const MeshRenderer: MeshRendererComponentDefinitionExtended;
@@ -3543,6 +3655,14 @@ export declare interface MeshRendererComponentDefinitionExtended extends LastWri
3543
3655
  * @param entity - entity to create or replace the MeshRenderer component
3544
3656
  */
3545
3657
  setSphere(entity: Entity): void;
3658
+ /**
3659
+ * @public
3660
+ * Set a gltf internal mesh in the MeshRenderer component
3661
+ * @param entity - entity to create or replace the MeshRenderer component
3662
+ * @param source - the path to the gltf
3663
+ * @param meshName - the name of the mesh in the gltf
3664
+ */
3665
+ setGltfMesh(entity: Entity, source: string, meshName: string): void;
3546
3666
  }
3547
3667
 
3548
3668
  /**
@@ -4215,6 +4335,9 @@ export declare interface PBAvatarModifierArea {
4215
4335
  excludeIds: string[];
4216
4336
  /** list of modifiers to apply */
4217
4337
  modifiers: AvatarModifierType[];
4338
+ movementSettings?: AvatarMovementSettings | undefined;
4339
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
4340
+ useColliderRange?: boolean | undefined;
4218
4341
  }
4219
4342
 
4220
4343
  /**
@@ -4327,7 +4450,7 @@ export declare namespace PBCameraMode {
4327
4450
 
4328
4451
  /**
4329
4452
  * The CameraModeArea component can be attached to an Entity to define a region of space where
4330
- * the player's camera mode (1st-person or 3rd-person) is overridden.
4453
+ * the player's camera mode (1st-person, 3rd-person or cinematic) is overridden.
4331
4454
  *
4332
4455
  * The Entity's Transform position determines the center-point of the region, while its size is
4333
4456
  * given as a vector in the `area` property below. The Transform rotation is applied, but the scale
@@ -4337,6 +4460,8 @@ export declare namespace PBCameraMode {
4337
4460
  *
4338
4461
  * Note that, while commonly used to delineate a 2D area in a scene (hence the name), the region
4339
4462
  * is actually a 3D volume.
4463
+ *
4464
+ * When mode is set to CtCinematic, the cinematic_settings field must also be provided.
4340
4465
  */
4341
4466
  /**
4342
4467
  * @public
@@ -4346,6 +4471,9 @@ export declare interface PBCameraModeArea {
4346
4471
  area: PBVector3 | undefined;
4347
4472
  /** the camera mode to enforce */
4348
4473
  mode: CameraType;
4474
+ cinematicSettings?: CinematicSettings | undefined;
4475
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
4476
+ useColliderRange?: boolean | undefined;
4349
4477
  }
4350
4478
 
4351
4479
  /**
@@ -4417,6 +4545,39 @@ export declare namespace PBEngineInfo {
4417
4545
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBEngineInfo;
4418
4546
  }
4419
4547
 
4548
+ /**
4549
+ * defines the global scene light settings. must be added to the scene root.
4550
+ * to control sunlight color, intensity, shadows etc, you can also add a PBLight to the scene root.
4551
+ */
4552
+ /**
4553
+ * @public
4554
+ */
4555
+ export declare interface PBGlobalLight {
4556
+ /**
4557
+ * the direction the directional light shines in.
4558
+ * default depends on time of day and explorer implementation
4559
+ */
4560
+ direction?: PBVector3 | undefined;
4561
+ /**
4562
+ * ambient light color
4563
+ * default: White
4564
+ */
4565
+ ambientColor?: PBColor3 | undefined;
4566
+ /**
4567
+ * ambient light intensity. the explorer default ambient brightness is multiplied by this non-physical quantity.
4568
+ * default 1
4569
+ */
4570
+ ambientBrightness?: number | undefined;
4571
+ }
4572
+
4573
+ /**
4574
+ * @public
4575
+ */
4576
+ export declare namespace PBGlobalLight {
4577
+ export function encode(message: PBGlobalLight, writer?: _m0.Writer): _m0.Writer;
4578
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGlobalLight;
4579
+ }
4580
+
4420
4581
  /**
4421
4582
  * GltfContainer loads a GLTF file (and any additional files packaged inside) attached to an Entity.
4422
4583
  *
@@ -4452,6 +4613,25 @@ export declare namespace PBGltfContainer {
4452
4613
  */
4453
4614
  export declare interface PBGltfContainerLoadingState {
4454
4615
  currentState: LoadingState;
4616
+ /** all node paths in the gltf, which can be used with a GltfNode to inspect and modify the gltf contents */
4617
+ nodePaths: string[];
4618
+ /** all meshes in the gltf. unnamed meshes will be auto-assigned a name of the form `MeshX` or `MeshX/PrimitiveY` */
4619
+ meshNames: string[];
4620
+ /**
4621
+ * where X is the mesh index and Y is the primitive index (and there is more than 1 primitive). note this may
4622
+ * conflict with manually named meshes - to avoid any issues make sure all your meshes are explicitly named.
4623
+ */
4624
+ materialNames: string[];
4625
+ /**
4626
+ * X is the material index. note this may conflict with manually named materials - to avoid any issues make
4627
+ * sure all your materials are explicitly named.
4628
+ */
4629
+ skinNames: string[];
4630
+ /**
4631
+ * X is the skin index. note this may conflict with manually named skins - to avoid any issues make sure all
4632
+ * your skins are explicitly named.
4633
+ */
4634
+ animationNames: string[];
4455
4635
  }
4456
4636
 
4457
4637
  /**
@@ -4462,6 +4642,77 @@ export declare namespace PBGltfContainerLoadingState {
4462
4642
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfContainerLoadingState;
4463
4643
  }
4464
4644
 
4645
+ /**
4646
+ * a GltfNode links a scene entity with a node from within a gltf, allowing the scene to inspect it or modify it.
4647
+ * This component must be added to a direct child of an entity with a PBGltfContainer component, or
4648
+ * to a direct child of another entity with a GltfNode component, and the referenced gltf node must be a descendent of the gltf node
4649
+ * in the parent.
4650
+ * The name must match the path of one of the nodes within the Gltf. These are available on the GltfContainerLoadingState component.
4651
+ *
4652
+ * The renderer will attach a PBGltfNodeState to the entity describing the state. Once the state is `GNS_READY`,
4653
+ * - the `Transform` will be updated to match the position of the node within the gltf (relative to the gltf root, or the parent node),
4654
+ * - a `MeshRenderer` with a GltfMesh mesh type will be added (if the gltf node has a mesh).
4655
+ * - a `MeshCollider` with a GltfMesh mesh type will be added (if the gltf node has a collider).
4656
+ * - a `Material` component including a GltfMaterial reference will be added (if the gltf node has a material).
4657
+ *
4658
+ * After creation, if an animation moves the node, the `Transform` will be updated.
4659
+ *
4660
+ * From the scene, you can modify various components to alter the gltf node:
4661
+ * - modifying the `Transform` position/rotation/scale will move the node. The position is interpreted relative to the gltf root (or parent node),
4662
+ * regardless of any intermediate gltf node hierarchy.
4663
+ * If an animation is playing, the animation takes priority and the scene entity's position will be updated to match the animation.
4664
+ * - `Visibility` can be added to hide or show the node and it's children in the gltf hierarchy.
4665
+ * - `MeshRenderer` can be added/modified/removed to create/modify/remove a mesh on the node.
4666
+ * - `MeshCollider` can be added/modified/removed to create/modify/remove a collider on the node.
4667
+ * - `Material` can be added or modified to change the material properties. If the gltf node has a material, the original material will be
4668
+ * 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
4669
+ * PBMaterial will be maintained.
4670
+ *
4671
+ * The scene can add additional entities as children to the gltf node, but structural modifications of the gltf are not possible:
4672
+ * - changing the scene hierarchy will not change the gltf node hierarchy. Moving the entity out of the gltf will sever the link and
4673
+ * change the state to `GNS_FAILED`.
4674
+ * - deleting the scene entity will not delete the gltf node.
4675
+ *
4676
+ * Removing the GltfNode will revert any changes to the original gltf. If the GltfNode component is removed and the mesh/collider/material
4677
+ * are not removed, this will result in a duplication of these components as the previously-linked entity will retain it's components and
4678
+ * the gltf node will also be displayed.
4679
+ */
4680
+ /**
4681
+ * @public
4682
+ */
4683
+ export declare interface PBGltfNode {
4684
+ /** the path of the target node in the Gltf. */
4685
+ path: string;
4686
+ }
4687
+
4688
+ /**
4689
+ * @public
4690
+ */
4691
+ export declare namespace PBGltfNode {
4692
+ export function encode(message: PBGltfNode, writer?: _m0.Writer): _m0.Writer;
4693
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNode;
4694
+ }
4695
+
4696
+ /**
4697
+ * The state of a linked gltf node.
4698
+ * If the state is GNSV_FAILED, the renderer may describe the failure in the error string.
4699
+ */
4700
+ /**
4701
+ * @public
4702
+ */
4703
+ export declare interface PBGltfNodeState {
4704
+ state: GltfNodeStateValue;
4705
+ error?: string | undefined;
4706
+ }
4707
+
4708
+ /**
4709
+ * @public
4710
+ */
4711
+ export declare namespace PBGltfNodeState {
4712
+ export function encode(message: PBGltfNodeState, writer?: _m0.Writer): _m0.Writer;
4713
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNodeState;
4714
+ }
4715
+
4465
4716
  /**
4466
4717
  * @public
4467
4718
  */
@@ -4501,6 +4752,62 @@ export declare namespace PBInputModifier_StandardInput {
4501
4752
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBInputModifier_StandardInput;
4502
4753
  }
4503
4754
 
4755
+ /**
4756
+ * defines a light source.
4757
+ * the world has a default directional light (like sunlight) which can be overridden by adding the light component to the scene root.
4758
+ * a PBGlobalLight component can also be added to the root to control the directional light direction.
4759
+ * point lights (lightbulbs) or spotlights can be created by attaching the light component to non-root entities.
4760
+ */
4761
+ /**
4762
+ * @public
4763
+ */
4764
+ export declare interface PBLight {
4765
+ /**
4766
+ * whether the light is on
4767
+ * default true
4768
+ */
4769
+ enabled?: boolean | undefined;
4770
+ /**
4771
+ * light brightness in lux (lumens/m^2).
4772
+ *
4773
+ * 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).
4774
+ * the default global light illuminance varies from 400 (sunrise/sunset) to 10,000 (midday).
4775
+ * for typical values, see https://en.wikipedia.org/wiki/Lux#Illuminance
4776
+ *
4777
+ * for point and spot lights, this is the lumens/m^2 at 1m distance from the light. to transform from raw lumens,
4778
+ * divide lumens by ~12 (4*pi).
4779
+ * e.g. a 100w household bulb with 1200 lumens would have an illuminance of ~100.
4780
+ * a lighthouse bulb with 200,000 lumens would have an illuminance of ~15,000 (ignoring beam reflections)
4781
+ *
4782
+ * default
4783
+ * for point/spotlights: 10,000
4784
+ * for global directional light: depends on explorer implementation. may vary on light direction, time of day, etc
4785
+ */
4786
+ illuminance?: number | undefined;
4787
+ /**
4788
+ * whether the light should cast shadows.
4789
+ * note: even when set to true the engine may not display shadows, or may only show shadows for a limited number
4790
+ * of lights depending on the implementation, platform, and user settings.
4791
+ * default
4792
+ * for point/spotlights: false / off
4793
+ * for global directional light: true / on
4794
+ */
4795
+ shadows?: boolean | undefined;
4796
+ /**
4797
+ * light color
4798
+ * default White
4799
+ */
4800
+ color?: PBColor3 | undefined;
4801
+ }
4802
+
4803
+ /**
4804
+ * @public
4805
+ */
4806
+ export declare namespace PBLight {
4807
+ export function encode(message: PBLight, writer?: _m0.Writer): _m0.Writer;
4808
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBLight;
4809
+ }
4810
+
4504
4811
  /**
4505
4812
  * PBMainCamera.virtualCameraEntity defines which VirtualCamera entity is active at the moment.
4506
4813
  * This component may hold 'repeated common.CameraTransition' transitionOverrides in the future
@@ -4532,6 +4839,14 @@ export declare interface PBMaterial {
4532
4839
  $case: "pbr";
4533
4840
  pbr: PBMaterial_PbrMaterial;
4534
4841
  } | undefined;
4842
+ /**
4843
+ * A gltf material that may provide additional features not supported by the PbMaterial fields.
4844
+ * If both gltf and material fields are provided, the gltf will be used only for extended features not
4845
+ * supported by the PbMaterial.
4846
+ * If this is provided and the `material` field is not provided, the renderer will update the material
4847
+ * field with data that reflects the gltf material once it is loaded.
4848
+ */
4849
+ gltf?: PBMaterial_GltfMaterial | undefined;
4535
4850
  }
4536
4851
 
4537
4852
  /**
@@ -4542,6 +4857,22 @@ export declare namespace PBMaterial {
4542
4857
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial;
4543
4858
  }
4544
4859
 
4860
+ /**
4861
+ * @public
4862
+ */
4863
+ export declare interface PBMaterial_GltfMaterial {
4864
+ gltfSrc: string;
4865
+ name: string;
4866
+ }
4867
+
4868
+ /**
4869
+ * @public
4870
+ */
4871
+ export declare namespace PBMaterial_GltfMaterial {
4872
+ export function encode(message: PBMaterial_GltfMaterial, writer?: _m0.Writer): _m0.Writer;
4873
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial_GltfMaterial;
4874
+ }
4875
+
4545
4876
  /**
4546
4877
  * @public
4547
4878
  */
@@ -4638,6 +4969,9 @@ export declare interface PBMeshCollider {
4638
4969
  } | {
4639
4970
  $case: "plane";
4640
4971
  plane: PBMeshCollider_PlaneMesh;
4972
+ } | {
4973
+ $case: "gltf";
4974
+ gltf: PBMeshCollider_GltfMesh;
4641
4975
  } | undefined;
4642
4976
  }
4643
4977
 
@@ -4683,6 +5017,25 @@ export declare namespace PBMeshCollider_CylinderMesh {
4683
5017
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_CylinderMesh;
4684
5018
  }
4685
5019
 
5020
+ /** A collider constructed from a Gltf Mesh. */
5021
+ /**
5022
+ * @public
5023
+ */
5024
+ export declare interface PBMeshCollider_GltfMesh {
5025
+ /** the GLTF file path as listed in the scene's manifest. */
5026
+ gltfSrc: string;
5027
+ /** the name of the mesh asset */
5028
+ name: string;
5029
+ }
5030
+
5031
+ /**
5032
+ * @public
5033
+ */
5034
+ export declare namespace PBMeshCollider_GltfMesh {
5035
+ export function encode(message: PBMeshCollider_GltfMesh, writer?: _m0.Writer): _m0.Writer;
5036
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_GltfMesh;
5037
+ }
5038
+
4686
5039
  /** PlaneMesh is a 2D rectangle described by the Entity's Transform. */
4687
5040
  /**
4688
5041
  * @public
@@ -4715,13 +5068,11 @@ export declare namespace PBMeshCollider_SphereMesh {
4715
5068
 
4716
5069
  /**
4717
5070
  * The MeshRenderer component renders a basic geometric shape for an Entity. It can be a cube, a
4718
- * plane, a sphere or a cylinder.
5071
+ * plane, a sphere, a cylinder, or a Gltf mesh.
4719
5072
  *
4720
5073
  * The cube and plane variants can include a UV texture mapping, so specific areas of a material
4721
5074
  * texture are rendered on different faces of the shape. They are serialized as a sequence of 2D
4722
5075
  * `float` coordinates, one for each corner of each side of each face.
4723
- *
4724
- * More complex shapes require the use of a `GltfContainer` component.
4725
5076
  */
4726
5077
  /**
4727
5078
  * @public
@@ -4739,6 +5090,9 @@ export declare interface PBMeshRenderer {
4739
5090
  } | {
4740
5091
  $case: "plane";
4741
5092
  plane: PBMeshRenderer_PlaneMesh;
5093
+ } | {
5094
+ $case: "gltf";
5095
+ gltf: PBMeshRenderer_GltfMesh;
4742
5096
  } | undefined;
4743
5097
  }
4744
5098
 
@@ -4786,6 +5140,25 @@ export declare namespace PBMeshRenderer_CylinderMesh {
4786
5140
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_CylinderMesh;
4787
5141
  }
4788
5142
 
5143
+ /** A mesh from a Gltf. */
5144
+ /**
5145
+ * @public
5146
+ */
5147
+ export declare interface PBMeshRenderer_GltfMesh {
5148
+ /** the GLTF file path as listed in the scene's manifest. */
5149
+ gltfSrc: string;
5150
+ /** the name of the mesh asset */
5151
+ name: string;
5152
+ }
5153
+
5154
+ /**
5155
+ * @public
5156
+ */
5157
+ export declare namespace PBMeshRenderer_GltfMesh {
5158
+ export function encode(message: PBMeshRenderer_GltfMesh, writer?: _m0.Writer): _m0.Writer;
5159
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_GltfMesh;
5160
+ }
5161
+
4789
5162
  /** PlaneMesh renders a 2D rectangular shape. */
4790
5163
  /**
4791
5164
  * @public
@@ -5125,6 +5498,39 @@ export declare namespace PBRealmInfo {
5125
5498
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBRealmInfo;
5126
5499
  }
5127
5500
 
5501
+ /**
5502
+ * defines a spotlight.
5503
+ * spotlights are point lights that emit light only in a cone around the transform's forward direction.
5504
+ * add this component together with the PBLight component to transform a point light into a spotlight.
5505
+ * note that spotlights do not model any internal reflections / focus, they only restrict the area of effect.
5506
+ * so for e.g. a torch beam, the bulb illuminance should be multiplied by the solid angle.
5507
+ * a typical torch with a beam width of 15 degrees would use outer angle of 0.15 (7.5 degrees in radians),
5508
+ * and an illuminance approximately equal to the bulb's lumens, e.g. 1200.
5509
+ */
5510
+ /**
5511
+ * @public
5512
+ */
5513
+ export declare interface PBSpotlight {
5514
+ /**
5515
+ * the cone radius in radians. distance away from forward in which the light is visible.
5516
+ * for a torch a value around 0.15 is appropriate.
5517
+ */
5518
+ angle: number;
5519
+ /**
5520
+ * optional angle at which the light is brightest. should be <= outer angle.
5521
+ * if specified, the light will fall off smoothly between `inner_angle` and `angle`.
5522
+ */
5523
+ innerAngle?: number | undefined;
5524
+ }
5525
+
5526
+ /**
5527
+ * @public
5528
+ */
5529
+ export declare namespace PBSpotlight {
5530
+ export function encode(message: PBSpotlight, writer?: _m0.Writer): _m0.Writer;
5531
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBSpotlight;
5532
+ }
5533
+
5128
5534
  /**
5129
5535
  * The TextShape component renders customizable floating text.
5130
5536
  *
@@ -5275,6 +5681,25 @@ export declare namespace PBUiBackground {
5275
5681
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiBackground;
5276
5682
  }
5277
5683
 
5684
+ /** The UiCanvas component can be attached to a ui root entity to specify properties of the ui texture. */
5685
+ /**
5686
+ * @public
5687
+ */
5688
+ export declare interface PBUiCanvas {
5689
+ width: number;
5690
+ height: number;
5691
+ /** default = (0.0, 0.0, 0.0, 0.0) / transparent */
5692
+ color?: PBColor4 | undefined;
5693
+ }
5694
+
5695
+ /**
5696
+ * @public
5697
+ */
5698
+ export declare namespace PBUiCanvas {
5699
+ export function encode(message: PBUiCanvas, writer?: _m0.Writer): _m0.Writer;
5700
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiCanvas;
5701
+ }
5702
+
5278
5703
  /** This component is created by the renderer and used by the scenes to know the resolution of the UI canvas */
5279
5704
  /**
5280
5705
  * @public
@@ -5391,6 +5816,21 @@ export declare namespace PBUiInputResult {
5391
5816
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiInputResult;
5392
5817
  }
5393
5818
 
5819
+ /**
5820
+ * @public
5821
+ */
5822
+ export declare interface PBUiScrollResult {
5823
+ value: PBVector2 | undefined;
5824
+ }
5825
+
5826
+ /**
5827
+ * @public
5828
+ */
5829
+ export declare namespace PBUiScrollResult {
5830
+ export function encode(message: PBUiScrollResult, writer?: _m0.Writer): _m0.Writer;
5831
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiScrollResult;
5832
+ }
5833
+
5394
5834
  /**
5395
5835
  * @public
5396
5836
  */
@@ -5407,6 +5847,10 @@ export declare interface PBUiText {
5407
5847
  fontSize?: number | undefined;
5408
5848
  /** wrap text when the border is reached (default: TW_WRAP) */
5409
5849
  textWrap?: TextWrap | undefined;
5850
+ /** width of the outline (default: 0) */
5851
+ outlineWidth?: number | undefined;
5852
+ /** RGBA color of the outline (default: opaque black) */
5853
+ outlineColor?: PBColor4 | undefined;
5410
5854
  }
5411
5855
 
5412
5856
  /**
@@ -5503,6 +5947,14 @@ export declare interface PBUiTransform {
5503
5947
  paddingBottom: number;
5504
5948
  /** default: PointerFilterMode.PFM_NONE */
5505
5949
  pointerFilter?: PointerFilterMode | undefined;
5950
+ /** default: 1 */
5951
+ opacity?: number | undefined;
5952
+ /** default empty */
5953
+ elementId?: string | undefined;
5954
+ /** default position=(0,0) */
5955
+ scrollPosition?: ScrollPositionValue | undefined;
5956
+ /** default ShowScrollBar.SSB_BOTH */
5957
+ scrollVisible?: ShowScrollBar | undefined;
5506
5958
  }
5507
5959
 
5508
5960
  /**
@@ -6436,6 +6888,7 @@ export declare type RaycastSystemOptions = {
6436
6888
  export declare interface ReactBasedUiSystem {
6437
6889
  destroy(): void;
6438
6890
  setUiRenderer(ui: UiComponent): void;
6891
+ setTextureRenderer(entity: Entity, ui: UiComponent): void;
6439
6892
  }
6440
6893
 
6441
6894
  /**
@@ -6889,6 +7342,43 @@ export declare namespace Schemas {
6889
7342
  }) => void;
6890
7343
  }
6891
7344
 
7345
+ /**
7346
+ * @public
7347
+ */
7348
+ export declare interface ScrollPositionValue {
7349
+ value?: {
7350
+ $case: "position";
7351
+ position: PBVector2;
7352
+ } | {
7353
+ $case: "reference";
7354
+ reference: string;
7355
+ } | undefined;
7356
+ }
7357
+
7358
+ /**
7359
+ * @public
7360
+ */
7361
+ export declare namespace ScrollPositionValue {
7362
+ export function encode(message: ScrollPositionValue, writer?: _m0.Writer): _m0.Writer;
7363
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): ScrollPositionValue;
7364
+ }
7365
+
7366
+ /**
7367
+ * @public
7368
+ * The scroll-visible determines if the scrollbars are shown when the scroll overflow is enabled
7369
+ */
7370
+ export declare type ScrollVisibleType = 'horizontal' | 'vertical' | 'both' | 'hidden';
7371
+
7372
+ /**
7373
+ * @public
7374
+ */
7375
+ export declare const enum ShowScrollBar {
7376
+ SSB_BOTH = 0,
7377
+ SSB_ONLY_VERTICAL = 1,
7378
+ SSB_ONLY_HORIZONTAL = 2,
7379
+ SSB_HIDDEN = 3
7380
+ }
7381
+
6892
7382
  /**
6893
7383
  * @public
6894
7384
  */
@@ -6896,6 +7386,9 @@ export declare interface Spec {
6896
7386
  [key: string]: ISchema;
6897
7387
  }
6898
7388
 
7389
+ /** @public */
7390
+ export declare const Spotlight: LastWriteWinElementSetComponentDefinition<PBSpotlight>;
7391
+
6899
7392
  /**
6900
7393
  * @alpha
6901
7394
  * This is going to be used for sync components through a server.
@@ -6956,6 +7449,13 @@ export declare interface Texture {
6956
7449
  wrapMode?: TextureWrapMode | undefined;
6957
7450
  /** default = FilterMode.Bilinear */
6958
7451
  filterMode?: TextureFilterMode | undefined;
7452
+ /**
7453
+ * Final uv = offset + (input_uv * tiling)
7454
+ * Offset for texture positioning.
7455
+ */
7456
+ offset?: PBVector2 | undefined;
7457
+ /** Tiling multiplier for texture repetition. */
7458
+ tiling?: PBVector2 | undefined;
6959
7459
  }
6960
7460
 
6961
7461
  /**
@@ -7027,6 +7527,9 @@ export declare interface TextureUnion {
7027
7527
  } | {
7028
7528
  $case: "videoTexture";
7029
7529
  videoTexture: VideoTexture;
7530
+ } | {
7531
+ $case: "uiTexture";
7532
+ uiTexture: UiCanvasTexture;
7030
7533
  } | undefined;
7031
7534
  }
7032
7535
 
@@ -7245,9 +7748,31 @@ export declare interface UiButtonProps extends UiLabelProps, EntityPropTypes {
7245
7748
  disabled?: boolean;
7246
7749
  }
7247
7750
 
7751
+ /** @public */
7752
+ export declare const UiCanvas: LastWriteWinElementSetComponentDefinition<PBUiCanvas>;
7753
+
7248
7754
  /** @public */
7249
7755
  export declare const UiCanvasInformation: LastWriteWinElementSetComponentDefinition<PBUiCanvasInformation>;
7250
7756
 
7757
+ /**
7758
+ * @public
7759
+ */
7760
+ export declare interface UiCanvasTexture {
7761
+ uiCanvasEntity: number;
7762
+ /** default = TextureWrapMode.Clamp */
7763
+ wrapMode?: TextureWrapMode | undefined;
7764
+ /** default = FilterMode.Bilinear */
7765
+ filterMode?: TextureFilterMode | undefined;
7766
+ }
7767
+
7768
+ /**
7769
+ * @public
7770
+ */
7771
+ export declare namespace UiCanvasTexture {
7772
+ export function encode(message: UiCanvasTexture, writer?: _m0.Writer): _m0.Writer;
7773
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): UiCanvasTexture;
7774
+ }
7775
+
7251
7776
  /**
7252
7777
  * @public
7253
7778
  */
@@ -7317,6 +7842,10 @@ export declare interface UiLabelProps {
7317
7842
  textAlign?: TextAlignType | undefined;
7318
7843
  /** Label font type. @defaultValue 'sans-serif' */
7319
7844
  font?: UiFontType | undefined;
7845
+ /** Outline width of the text. @defaultValue 0 */
7846
+ outlineWidth?: number | undefined;
7847
+ /** Outline color of the text. @defaultValue `{ r: 0, g: 0, b: 0, a: 1 }` */
7848
+ outlineColor?: PBColor4 | undefined;
7320
7849
  /** Behaviour when text reached. @defaultValue 'wrap' */
7321
7850
  textWrap?: UiTextWrapType | undefined;
7322
7851
  }
@@ -7326,6 +7855,9 @@ export declare interface UiLabelProps {
7326
7855
  */
7327
7856
  export declare type uint32 = number;
7328
7857
 
7858
+ /** @public */
7859
+ export declare const UiScrollResult: LastWriteWinElementSetComponentDefinition<PBUiScrollResult>;
7860
+
7329
7861
  /** @public */
7330
7862
  export declare const UiText: LastWriteWinElementSetComponentDefinition<PBUiText>;
7331
7863
 
@@ -7398,6 +7930,14 @@ export declare interface UiTransformProps {
7398
7930
  overflow?: OverflowType;
7399
7931
  /** 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) **/
7400
7932
  pointerFilter?: PointerFilterType;
7933
+ /** The opacity property sets the opacity level for an element, it's accumulated across children @defaultValue 1 */
7934
+ opacity?: number;
7935
+ /** A reference value to identify the element, default empty */
7936
+ elementId?: string;
7937
+ /** default position=(0,0) if it aplies, a vector or a reference-id */
7938
+ scrollPosition?: PBVector2 | string;
7939
+ /** default ShowScrollBar.SSB_BOTH */
7940
+ scrollVisible?: ScrollVisibleType;
7401
7941
  }
7402
7942
 
7403
7943
  /**