@dcl/playground-assets 7.6.4-11499788210.commit-065d563 → 7.6.4-11515577295.commit-620b210

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,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>>;
@@ -2031,6 +2114,9 @@ export declare type GlobalDirectionRaycastSystemOptions = {
2031
2114
  direction?: PBVector3;
2032
2115
  };
2033
2116
 
2117
+ /** @public */
2118
+ export declare const GlobalLight: LastWriteWinElementSetComponentDefinition<PBGlobalLight>;
2119
+
2034
2120
  export declare type GlobalTargetRaycastOptions = RaycastSystemOptions & GlobalTargetRaycastSystemOptions;
2035
2121
 
2036
2122
  export declare type GlobalTargetRaycastSystemOptions = {
@@ -2043,6 +2129,21 @@ export declare const GltfContainer: LastWriteWinElementSetComponentDefinition<PB
2043
2129
  /** @public */
2044
2130
  export declare const GltfContainerLoadingState: LastWriteWinElementSetComponentDefinition<PBGltfContainerLoadingState>;
2045
2131
 
2132
+ /** @public */
2133
+ export declare const GltfNode: LastWriteWinElementSetComponentDefinition<PBGltfNode>;
2134
+
2135
+ /** @public */
2136
+ export declare const GltfNodeState: LastWriteWinElementSetComponentDefinition<PBGltfNodeState>;
2137
+
2138
+ /**
2139
+ * @public
2140
+ */
2141
+ export declare const enum GltfNodeStateValue {
2142
+ GNSV_PENDING = 0,
2143
+ GNSV_FAILED = 1,
2144
+ GNSV_READY = 2
2145
+ }
2146
+
2046
2147
  /**
2047
2148
  * @public
2048
2149
  */
@@ -2618,6 +2719,9 @@ export declare interface LastWriteWinElementSetComponentDefinition<T> extends Ba
2618
2719
  getOrCreateMutable(entity: Entity, initialValue?: T): T;
2619
2720
  }
2620
2721
 
2722
+ /** @public */
2723
+ export declare const Light: LastWriteWinElementSetComponentDefinition<PBLight>;
2724
+
2621
2725
  /**
2622
2726
  * User key event Listeners
2623
2727
  * @public
@@ -3495,6 +3599,14 @@ export declare interface MeshColliderComponentDefinitionExtended extends LastWri
3495
3599
  * @param colliderMask - the set of layer where the collider reacts, default: Physics and Pointer
3496
3600
  */
3497
3601
  setSphere(entity: Entity, colliderLayers?: ColliderLayer | ColliderLayer[]): void;
3602
+ /**
3603
+ * @public
3604
+ * Set a gltf internal mesh in the MeshCollider component
3605
+ * @param entity - entity to create or replace the MeshRenderer component
3606
+ * @param source - the path to the gltf
3607
+ * @param meshName - the name of the mesh in the gltf
3608
+ */
3609
+ setGltfMesh(entity: Entity, source: string, meshName: string, colliderLayers?: ColliderLayer | ColliderLayer[]): void;
3498
3610
  }
3499
3611
 
3500
3612
  export declare const MeshRenderer: MeshRendererComponentDefinitionExtended;
@@ -3531,6 +3643,14 @@ export declare interface MeshRendererComponentDefinitionExtended extends LastWri
3531
3643
  * @param entity - entity to create or replace the MeshRenderer component
3532
3644
  */
3533
3645
  setSphere(entity: Entity): void;
3646
+ /**
3647
+ * @public
3648
+ * Set a gltf internal mesh in the MeshRenderer component
3649
+ * @param entity - entity to create or replace the MeshRenderer component
3650
+ * @param source - the path to the gltf
3651
+ * @param meshName - the name of the mesh in the gltf
3652
+ */
3653
+ setGltfMesh(entity: Entity, source: string, meshName: string): void;
3534
3654
  }
3535
3655
 
3536
3656
  /* Excluded from this release type: MessageBus */
@@ -4184,6 +4304,9 @@ export declare interface PBAvatarModifierArea {
4184
4304
  excludeIds: string[];
4185
4305
  /** list of modifiers to apply */
4186
4306
  modifiers: AvatarModifierType[];
4307
+ movementSettings?: AvatarMovementSettings | undefined;
4308
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
4309
+ useColliderRange?: boolean | undefined;
4187
4310
  }
4188
4311
 
4189
4312
  /**
@@ -4296,7 +4419,7 @@ export declare namespace PBCameraMode {
4296
4419
 
4297
4420
  /**
4298
4421
  * The CameraModeArea component can be attached to an Entity to define a region of space where
4299
- * the player's camera mode (1st-person or 3rd-person) is overridden.
4422
+ * the player's camera mode (1st-person, 3rd-person or cinematic) is overridden.
4300
4423
  *
4301
4424
  * The Entity's Transform position determines the center-point of the region, while its size is
4302
4425
  * given as a vector in the `area` property below. The Transform rotation is applied, but the scale
@@ -4306,6 +4429,8 @@ export declare namespace PBCameraMode {
4306
4429
  *
4307
4430
  * Note that, while commonly used to delineate a 2D area in a scene (hence the name), the region
4308
4431
  * is actually a 3D volume.
4432
+ *
4433
+ * When mode is set to CtCinematic, the cinematic_settings field must also be provided.
4309
4434
  */
4310
4435
  /**
4311
4436
  * @public
@@ -4315,6 +4440,9 @@ export declare interface PBCameraModeArea {
4315
4440
  area: PBVector3 | undefined;
4316
4441
  /** the camera mode to enforce */
4317
4442
  mode: CameraType;
4443
+ cinematicSettings?: CinematicSettings | undefined;
4444
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
4445
+ useColliderRange?: boolean | undefined;
4318
4446
  }
4319
4447
 
4320
4448
  /**
@@ -4386,6 +4514,39 @@ export declare namespace PBEngineInfo {
4386
4514
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBEngineInfo;
4387
4515
  }
4388
4516
 
4517
+ /**
4518
+ * defines the global scene light settings. must be added to the scene root.
4519
+ * to control sunlight color, intensity, shadows etc, you can also add a PBLight to the scene root.
4520
+ */
4521
+ /**
4522
+ * @public
4523
+ */
4524
+ export declare interface PBGlobalLight {
4525
+ /**
4526
+ * the direction the directional light shines in.
4527
+ * default depends on time of day and explorer implementation
4528
+ */
4529
+ direction?: PBVector3 | undefined;
4530
+ /**
4531
+ * ambient light color
4532
+ * default: White
4533
+ */
4534
+ ambientColor?: PBColor3 | undefined;
4535
+ /**
4536
+ * ambient light intensity. the explorer default ambient brightness is multiplied by this non-physical quantity.
4537
+ * default 1
4538
+ */
4539
+ ambientBrightness?: number | undefined;
4540
+ }
4541
+
4542
+ /**
4543
+ * @public
4544
+ */
4545
+ export declare namespace PBGlobalLight {
4546
+ export function encode(message: PBGlobalLight, writer?: _m0.Writer): _m0.Writer;
4547
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGlobalLight;
4548
+ }
4549
+
4389
4550
  /**
4390
4551
  * GltfContainer loads a GLTF file (and any additional files packaged inside) attached to an Entity.
4391
4552
  *
@@ -4421,6 +4582,25 @@ export declare namespace PBGltfContainer {
4421
4582
  */
4422
4583
  export declare interface PBGltfContainerLoadingState {
4423
4584
  currentState: LoadingState;
4585
+ /** all node paths in the gltf, which can be used with a GltfNode to inspect and modify the gltf contents */
4586
+ nodePaths: string[];
4587
+ /** all meshes in the gltf. unnamed meshes will be auto-assigned a name of the form `MeshX` or `MeshX/PrimitiveY` */
4588
+ meshNames: string[];
4589
+ /**
4590
+ * where X is the mesh index and Y is the primitive index (and there is more than 1 primitive). note this may
4591
+ * conflict with manually named meshes - to avoid any issues make sure all your meshes are explicitly named.
4592
+ */
4593
+ materialNames: string[];
4594
+ /**
4595
+ * X is the material index. note this may conflict with manually named materials - to avoid any issues make
4596
+ * sure all your materials are explicitly named.
4597
+ */
4598
+ skinNames: string[];
4599
+ /**
4600
+ * X is the skin index. note this may conflict with manually named skins - to avoid any issues make sure all
4601
+ * your skins are explicitly named.
4602
+ */
4603
+ animationNames: string[];
4424
4604
  }
4425
4605
 
4426
4606
  /**
@@ -4431,6 +4611,77 @@ export declare namespace PBGltfContainerLoadingState {
4431
4611
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfContainerLoadingState;
4432
4612
  }
4433
4613
 
4614
+ /**
4615
+ * a GltfNode links a scene entity with a node from within a gltf, allowing the scene to inspect it or modify it.
4616
+ * This component must be added to a direct child of an entity with a PBGltfContainer component, or
4617
+ * to a direct child of another entity with a GltfNode component, and the referenced gltf node must be a descendent of the gltf node
4618
+ * in the parent.
4619
+ * The name must match the path of one of the nodes within the Gltf. These are available on the GltfContainerLoadingState component.
4620
+ *
4621
+ * The renderer will attach a PBGltfNodeState to the entity describing the state. Once the state is `GNS_READY`,
4622
+ * - the `Transform` will be updated to match the position of the node within the gltf (relative to the gltf root, or the parent node),
4623
+ * - a `MeshRenderer` with a GltfMesh mesh type will be added (if the gltf node has a mesh).
4624
+ * - a `MeshCollider` with a GltfMesh mesh type will be added (if the gltf node has a collider).
4625
+ * - a `Material` component including a GltfMaterial reference will be added (if the gltf node has a material).
4626
+ *
4627
+ * After creation, if an animation moves the node, the `Transform` will be updated.
4628
+ *
4629
+ * From the scene, you can modify various components to alter the gltf node:
4630
+ * - modifying the `Transform` position/rotation/scale will move the node. The position is interpreted relative to the gltf root (or parent node),
4631
+ * regardless of any intermediate gltf node hierarchy.
4632
+ * If an animation is playing, the animation takes priority and the scene entity's position will be updated to match the animation.
4633
+ * - `Visibility` can be added to hide or show the node and it's children in the gltf hierarchy.
4634
+ * - `MeshRenderer` can be added/modified/removed to create/modify/remove a mesh on the node.
4635
+ * - `MeshCollider` can be added/modified/removed to create/modify/remove a collider on the node.
4636
+ * - `Material` can be added or modified to change the material properties. If the gltf node has a material, the original material will be
4637
+ * 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
4638
+ * PBMaterial will be maintained.
4639
+ *
4640
+ * The scene can add additional entities as children to the gltf node, but structural modifications of the gltf are not possible:
4641
+ * - changing the scene hierarchy will not change the gltf node hierarchy. Moving the entity out of the gltf will sever the link and
4642
+ * change the state to `GNS_FAILED`.
4643
+ * - deleting the scene entity will not delete the gltf node.
4644
+ *
4645
+ * Removing the GltfNode will revert any changes to the original gltf. If the GltfNode component is removed and the mesh/collider/material
4646
+ * are not removed, this will result in a duplication of these components as the previously-linked entity will retain it's components and
4647
+ * the gltf node will also be displayed.
4648
+ */
4649
+ /**
4650
+ * @public
4651
+ */
4652
+ export declare interface PBGltfNode {
4653
+ /** the path of the target node in the Gltf. */
4654
+ path: string;
4655
+ }
4656
+
4657
+ /**
4658
+ * @public
4659
+ */
4660
+ export declare namespace PBGltfNode {
4661
+ export function encode(message: PBGltfNode, writer?: _m0.Writer): _m0.Writer;
4662
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNode;
4663
+ }
4664
+
4665
+ /**
4666
+ * The state of a linked gltf node.
4667
+ * If the state is GNSV_FAILED, the renderer may describe the failure in the error string.
4668
+ */
4669
+ /**
4670
+ * @public
4671
+ */
4672
+ export declare interface PBGltfNodeState {
4673
+ state: GltfNodeStateValue;
4674
+ error?: string | undefined;
4675
+ }
4676
+
4677
+ /**
4678
+ * @public
4679
+ */
4680
+ export declare namespace PBGltfNodeState {
4681
+ export function encode(message: PBGltfNodeState, writer?: _m0.Writer): _m0.Writer;
4682
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNodeState;
4683
+ }
4684
+
4434
4685
  /**
4435
4686
  * @public
4436
4687
  */
@@ -4470,6 +4721,62 @@ export declare namespace PBInputModifier_StandardInput {
4470
4721
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBInputModifier_StandardInput;
4471
4722
  }
4472
4723
 
4724
+ /**
4725
+ * defines a light source.
4726
+ * the world has a default directional light (like sunlight) which can be overridden by adding the light component to the scene root.
4727
+ * a PBGlobalLight component can also be added to the root to control the directional light direction.
4728
+ * point lights (lightbulbs) or spotlights can be created by attaching the light component to non-root entities.
4729
+ */
4730
+ /**
4731
+ * @public
4732
+ */
4733
+ export declare interface PBLight {
4734
+ /**
4735
+ * whether the light is on
4736
+ * default true
4737
+ */
4738
+ enabled?: boolean | undefined;
4739
+ /**
4740
+ * light brightness in lux (lumens/m^2).
4741
+ *
4742
+ * 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).
4743
+ * the default global light illuminance varies from 400 (sunrise/sunset) to 10,000 (midday).
4744
+ * for typical values, see https://en.wikipedia.org/wiki/Lux#Illuminance
4745
+ *
4746
+ * for point and spot lights, this is the lumens/m^2 at 1m distance from the light. to transform from raw lumens,
4747
+ * divide lumens by ~12 (4*pi).
4748
+ * e.g. a 100w household bulb with 1200 lumens would have an illuminance of ~100.
4749
+ * a lighthouse bulb with 200,000 lumens would have an illuminance of ~15,000 (ignoring beam reflections)
4750
+ *
4751
+ * default
4752
+ * for point/spotlights: 10,000
4753
+ * for global directional light: depends on explorer implementation. may vary on light direction, time of day, etc
4754
+ */
4755
+ illuminance?: number | undefined;
4756
+ /**
4757
+ * whether the light should cast shadows.
4758
+ * note: even when set to true the engine may not display shadows, or may only show shadows for a limited number
4759
+ * of lights depending on the implementation, platform, and user settings.
4760
+ * default
4761
+ * for point/spotlights: false / off
4762
+ * for global directional light: true / on
4763
+ */
4764
+ shadows?: boolean | undefined;
4765
+ /**
4766
+ * light color
4767
+ * default White
4768
+ */
4769
+ color?: PBColor3 | undefined;
4770
+ }
4771
+
4772
+ /**
4773
+ * @public
4774
+ */
4775
+ export declare namespace PBLight {
4776
+ export function encode(message: PBLight, writer?: _m0.Writer): _m0.Writer;
4777
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBLight;
4778
+ }
4779
+
4473
4780
  /**
4474
4781
  * PBMainCamera.virtualCameraEntity defines which VirtualCamera entity is active at the moment.
4475
4782
  * This component may hold 'repeated common.CameraTransition' transitionOverrides in the future
@@ -4501,6 +4808,14 @@ export declare interface PBMaterial {
4501
4808
  $case: "pbr";
4502
4809
  pbr: PBMaterial_PbrMaterial;
4503
4810
  } | undefined;
4811
+ /**
4812
+ * A gltf material that may provide additional features not supported by the PbMaterial fields.
4813
+ * If both gltf and material fields are provided, the gltf will be used only for extended features not
4814
+ * supported by the PbMaterial.
4815
+ * If this is provided and the `material` field is not provided, the renderer will update the material
4816
+ * field with data that reflects the gltf material once it is loaded.
4817
+ */
4818
+ gltf?: PBMaterial_GltfMaterial | undefined;
4504
4819
  }
4505
4820
 
4506
4821
  /**
@@ -4511,6 +4826,22 @@ export declare namespace PBMaterial {
4511
4826
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial;
4512
4827
  }
4513
4828
 
4829
+ /**
4830
+ * @public
4831
+ */
4832
+ export declare interface PBMaterial_GltfMaterial {
4833
+ gltfSrc: string;
4834
+ name: string;
4835
+ }
4836
+
4837
+ /**
4838
+ * @public
4839
+ */
4840
+ export declare namespace PBMaterial_GltfMaterial {
4841
+ export function encode(message: PBMaterial_GltfMaterial, writer?: _m0.Writer): _m0.Writer;
4842
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial_GltfMaterial;
4843
+ }
4844
+
4514
4845
  /**
4515
4846
  * @public
4516
4847
  */
@@ -4607,6 +4938,9 @@ export declare interface PBMeshCollider {
4607
4938
  } | {
4608
4939
  $case: "plane";
4609
4940
  plane: PBMeshCollider_PlaneMesh;
4941
+ } | {
4942
+ $case: "gltf";
4943
+ gltf: PBMeshCollider_GltfMesh;
4610
4944
  } | undefined;
4611
4945
  }
4612
4946
 
@@ -4652,6 +4986,25 @@ export declare namespace PBMeshCollider_CylinderMesh {
4652
4986
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_CylinderMesh;
4653
4987
  }
4654
4988
 
4989
+ /** A collider constructed from a Gltf Mesh. */
4990
+ /**
4991
+ * @public
4992
+ */
4993
+ export declare interface PBMeshCollider_GltfMesh {
4994
+ /** the GLTF file path as listed in the scene's manifest. */
4995
+ gltfSrc: string;
4996
+ /** the name of the mesh asset */
4997
+ name: string;
4998
+ }
4999
+
5000
+ /**
5001
+ * @public
5002
+ */
5003
+ export declare namespace PBMeshCollider_GltfMesh {
5004
+ export function encode(message: PBMeshCollider_GltfMesh, writer?: _m0.Writer): _m0.Writer;
5005
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_GltfMesh;
5006
+ }
5007
+
4655
5008
  /** PlaneMesh is a 2D rectangle described by the Entity's Transform. */
4656
5009
  /**
4657
5010
  * @public
@@ -4684,13 +5037,11 @@ export declare namespace PBMeshCollider_SphereMesh {
4684
5037
 
4685
5038
  /**
4686
5039
  * The MeshRenderer component renders a basic geometric shape for an Entity. It can be a cube, a
4687
- * plane, a sphere or a cylinder.
5040
+ * plane, a sphere, a cylinder, or a Gltf mesh.
4688
5041
  *
4689
5042
  * The cube and plane variants can include a UV texture mapping, so specific areas of a material
4690
5043
  * texture are rendered on different faces of the shape. They are serialized as a sequence of 2D
4691
5044
  * `float` coordinates, one for each corner of each side of each face.
4692
- *
4693
- * More complex shapes require the use of a `GltfContainer` component.
4694
5045
  */
4695
5046
  /**
4696
5047
  * @public
@@ -4708,6 +5059,9 @@ export declare interface PBMeshRenderer {
4708
5059
  } | {
4709
5060
  $case: "plane";
4710
5061
  plane: PBMeshRenderer_PlaneMesh;
5062
+ } | {
5063
+ $case: "gltf";
5064
+ gltf: PBMeshRenderer_GltfMesh;
4711
5065
  } | undefined;
4712
5066
  }
4713
5067
 
@@ -4755,6 +5109,25 @@ export declare namespace PBMeshRenderer_CylinderMesh {
4755
5109
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_CylinderMesh;
4756
5110
  }
4757
5111
 
5112
+ /** A mesh from a Gltf. */
5113
+ /**
5114
+ * @public
5115
+ */
5116
+ export declare interface PBMeshRenderer_GltfMesh {
5117
+ /** the GLTF file path as listed in the scene's manifest. */
5118
+ gltfSrc: string;
5119
+ /** the name of the mesh asset */
5120
+ name: string;
5121
+ }
5122
+
5123
+ /**
5124
+ * @public
5125
+ */
5126
+ export declare namespace PBMeshRenderer_GltfMesh {
5127
+ export function encode(message: PBMeshRenderer_GltfMesh, writer?: _m0.Writer): _m0.Writer;
5128
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_GltfMesh;
5129
+ }
5130
+
4758
5131
  /** PlaneMesh renders a 2D rectangular shape. */
4759
5132
  /**
4760
5133
  * @public
@@ -5092,6 +5465,39 @@ export declare namespace PBRealmInfo {
5092
5465
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBRealmInfo;
5093
5466
  }
5094
5467
 
5468
+ /**
5469
+ * defines a spotlight.
5470
+ * spotlights are point lights that emit light only in a cone around the transform's forward direction.
5471
+ * add this component together with the PBLight component to transform a point light into a spotlight.
5472
+ * note that spotlights do not model any internal reflections / focus, they only restrict the area of effect.
5473
+ * so for e.g. a torch beam, the bulb illuminance should be multiplied by the solid angle.
5474
+ * a typical torch with a beam width of 15 degrees would use outer angle of 0.15 (7.5 degrees in radians),
5475
+ * and an illuminance approximately equal to the bulb's lumens, e.g. 1200.
5476
+ */
5477
+ /**
5478
+ * @public
5479
+ */
5480
+ export declare interface PBSpotlight {
5481
+ /**
5482
+ * the cone radius in radians. distance away from forward in which the light is visible.
5483
+ * for a torch a value around 0.15 is appropriate.
5484
+ */
5485
+ angle: number;
5486
+ /**
5487
+ * optional angle at which the light is brightest. should be <= outer angle.
5488
+ * if specified, the light will fall off smoothly between `inner_angle` and `angle`.
5489
+ */
5490
+ innerAngle?: number | undefined;
5491
+ }
5492
+
5493
+ /**
5494
+ * @public
5495
+ */
5496
+ export declare namespace PBSpotlight {
5497
+ export function encode(message: PBSpotlight, writer?: _m0.Writer): _m0.Writer;
5498
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBSpotlight;
5499
+ }
5500
+
5095
5501
  /**
5096
5502
  * The TextShape component renders customizable floating text.
5097
5503
  *
@@ -5242,6 +5648,25 @@ export declare namespace PBUiBackground {
5242
5648
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiBackground;
5243
5649
  }
5244
5650
 
5651
+ /** The UiCanvas component can be attached to a ui root entity to specify properties of the ui texture. */
5652
+ /**
5653
+ * @public
5654
+ */
5655
+ export declare interface PBUiCanvas {
5656
+ width: number;
5657
+ height: number;
5658
+ /** default = (0.0, 0.0, 0.0, 0.0) / transparent */
5659
+ color?: PBColor4 | undefined;
5660
+ }
5661
+
5662
+ /**
5663
+ * @public
5664
+ */
5665
+ export declare namespace PBUiCanvas {
5666
+ export function encode(message: PBUiCanvas, writer?: _m0.Writer): _m0.Writer;
5667
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiCanvas;
5668
+ }
5669
+
5245
5670
  /** This component is created by the renderer and used by the scenes to know the resolution of the UI canvas */
5246
5671
  /**
5247
5672
  * @public
@@ -5358,6 +5783,21 @@ export declare namespace PBUiInputResult {
5358
5783
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiInputResult;
5359
5784
  }
5360
5785
 
5786
+ /**
5787
+ * @public
5788
+ */
5789
+ export declare interface PBUiScrollResult {
5790
+ value: PBVector2 | undefined;
5791
+ }
5792
+
5793
+ /**
5794
+ * @public
5795
+ */
5796
+ export declare namespace PBUiScrollResult {
5797
+ export function encode(message: PBUiScrollResult, writer?: _m0.Writer): _m0.Writer;
5798
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiScrollResult;
5799
+ }
5800
+
5361
5801
  /**
5362
5802
  * @public
5363
5803
  */
@@ -5374,6 +5814,10 @@ export declare interface PBUiText {
5374
5814
  fontSize?: number | undefined;
5375
5815
  /** wrap text when the border is reached (default: TW_WRAP) */
5376
5816
  textWrap?: TextWrap | undefined;
5817
+ /** width of the outline (default: 0) */
5818
+ outlineWidth?: number | undefined;
5819
+ /** RGBA color of the outline (default: opaque black) */
5820
+ outlineColor?: PBColor4 | undefined;
5377
5821
  }
5378
5822
 
5379
5823
  /**
@@ -5470,6 +5914,14 @@ export declare interface PBUiTransform {
5470
5914
  paddingBottom: number;
5471
5915
  /** default: PointerFilterMode.PFM_NONE */
5472
5916
  pointerFilter?: PointerFilterMode | undefined;
5917
+ /** default: 1 */
5918
+ opacity?: number | undefined;
5919
+ /** default empty */
5920
+ elementId?: string | undefined;
5921
+ /** default position=(0,0) */
5922
+ scrollPosition?: ScrollPositionValue | undefined;
5923
+ /** default ShowScrollBar.SSB_BOTH */
5924
+ scrollVisible?: ShowScrollBar | undefined;
5473
5925
  }
5474
5926
 
5475
5927
  /**
@@ -6403,6 +6855,7 @@ export declare type RaycastSystemOptions = {
6403
6855
  export declare interface ReactBasedUiSystem {
6404
6856
  destroy(): void;
6405
6857
  setUiRenderer(ui: UiComponent): void;
6858
+ setTextureRenderer(entity: Entity, ui: UiComponent): void;
6406
6859
  }
6407
6860
 
6408
6861
  /**
@@ -6856,6 +7309,43 @@ export declare namespace Schemas {
6856
7309
  }) => void;
6857
7310
  }
6858
7311
 
7312
+ /**
7313
+ * @public
7314
+ */
7315
+ export declare interface ScrollPositionValue {
7316
+ value?: {
7317
+ $case: "position";
7318
+ position: PBVector2;
7319
+ } | {
7320
+ $case: "reference";
7321
+ reference: string;
7322
+ } | undefined;
7323
+ }
7324
+
7325
+ /**
7326
+ * @public
7327
+ */
7328
+ export declare namespace ScrollPositionValue {
7329
+ export function encode(message: ScrollPositionValue, writer?: _m0.Writer): _m0.Writer;
7330
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): ScrollPositionValue;
7331
+ }
7332
+
7333
+ /**
7334
+ * @public
7335
+ * The scroll-visible determines if the scrollbars are shown when the scroll overflow is enabled
7336
+ */
7337
+ export declare type ScrollVisibleType = 'horizontal' | 'vertical' | 'both' | 'hidden';
7338
+
7339
+ /**
7340
+ * @public
7341
+ */
7342
+ export declare const enum ShowScrollBar {
7343
+ SSB_BOTH = 0,
7344
+ SSB_ONLY_VERTICAL = 1,
7345
+ SSB_ONLY_HORIZONTAL = 2,
7346
+ SSB_HIDDEN = 3
7347
+ }
7348
+
6859
7349
  /**
6860
7350
  * @public
6861
7351
  */
@@ -6863,6 +7353,9 @@ export declare interface Spec {
6863
7353
  [key: string]: ISchema;
6864
7354
  }
6865
7355
 
7356
+ /** @public */
7357
+ export declare const Spotlight: LastWriteWinElementSetComponentDefinition<PBSpotlight>;
7358
+
6866
7359
  /* Excluded from this release type: SyncComponents */
6867
7360
 
6868
7361
  /**
@@ -6989,6 +7482,9 @@ export declare interface TextureUnion {
6989
7482
  } | {
6990
7483
  $case: "videoTexture";
6991
7484
  videoTexture: VideoTexture;
7485
+ } | {
7486
+ $case: "uiTexture";
7487
+ uiTexture: UiCanvasTexture;
6992
7488
  } | undefined;
6993
7489
  }
6994
7490
 
@@ -7207,9 +7703,31 @@ export declare interface UiButtonProps extends UiLabelProps, EntityPropTypes {
7207
7703
  disabled?: boolean;
7208
7704
  }
7209
7705
 
7706
+ /** @public */
7707
+ export declare const UiCanvas: LastWriteWinElementSetComponentDefinition<PBUiCanvas>;
7708
+
7210
7709
  /** @public */
7211
7710
  export declare const UiCanvasInformation: LastWriteWinElementSetComponentDefinition<PBUiCanvasInformation>;
7212
7711
 
7712
+ /**
7713
+ * @public
7714
+ */
7715
+ export declare interface UiCanvasTexture {
7716
+ uiCanvasEntity: number;
7717
+ /** default = TextureWrapMode.Clamp */
7718
+ wrapMode?: TextureWrapMode | undefined;
7719
+ /** default = FilterMode.Bilinear */
7720
+ filterMode?: TextureFilterMode | undefined;
7721
+ }
7722
+
7723
+ /**
7724
+ * @public
7725
+ */
7726
+ export declare namespace UiCanvasTexture {
7727
+ export function encode(message: UiCanvasTexture, writer?: _m0.Writer): _m0.Writer;
7728
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): UiCanvasTexture;
7729
+ }
7730
+
7213
7731
  /**
7214
7732
  * @public
7215
7733
  */
@@ -7279,6 +7797,10 @@ export declare interface UiLabelProps {
7279
7797
  textAlign?: TextAlignType | undefined;
7280
7798
  /** Label font type. @defaultValue 'sans-serif' */
7281
7799
  font?: UiFontType | undefined;
7800
+ /** Outline width of the text. @defaultValue 0 */
7801
+ outlineWidth?: number | undefined;
7802
+ /** Outline color of the text. @defaultValue `{ r: 0, g: 0, b: 0, a: 1 }` */
7803
+ outlineColor?: PBColor4 | undefined;
7282
7804
  /** Behaviour when text reached. @defaultValue 'wrap' */
7283
7805
  textWrap?: UiTextWrapType | undefined;
7284
7806
  }
@@ -7288,6 +7810,9 @@ export declare interface UiLabelProps {
7288
7810
  */
7289
7811
  export declare type uint32 = number;
7290
7812
 
7813
+ /** @public */
7814
+ export declare const UiScrollResult: LastWriteWinElementSetComponentDefinition<PBUiScrollResult>;
7815
+
7291
7816
  /** @public */
7292
7817
  export declare const UiText: LastWriteWinElementSetComponentDefinition<PBUiText>;
7293
7818
 
@@ -7360,6 +7885,14 @@ export declare interface UiTransformProps {
7360
7885
  overflow?: OverflowType;
7361
7886
  /** 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) **/
7362
7887
  pointerFilter?: PointerFilterType;
7888
+ /** The opacity property sets the opacity level for an element, it's accumulated across children @defaultValue 1 */
7889
+ opacity?: number;
7890
+ /** A reference value to identify the element, default empty */
7891
+ elementId?: string;
7892
+ /** default position=(0,0) if it aplies, a vector or a reference-id */
7893
+ scrollPosition?: PBVector2 | string;
7894
+ /** default ShowScrollBar.SSB_BOTH */
7895
+ scrollVisible?: ScrollVisibleType;
7363
7896
  }
7364
7897
 
7365
7898
  /**