Class XREnvironmentProbeSubsystem
Defines an interface for interacting with environment probe functionality for creating realistic lighting and environment texturing in AR scenes.
Inheritance
Implements
Inherited Members
Namespace: UnityEngine.XR.ARSubsystems
Assembly: solution.dll
Syntax
public class XREnvironmentProbeSubsystem : TrackingSubsystem<XREnvironmentProbe, XREnvironmentProbeSubsystem, XREnvironmentProbeSubsystemDescriptor, XREnvironmentProbeSubsystem.Provider>, ISubsystem
Constructors
XREnvironmentProbeSubsystem()
Constructs an XREnvironmentProbeSubsystem.
Do not create this directly.
Call Create on an XREnvironmentProbeSubsystemDescriptor obtained from the SubsystemManager.
Declaration
public XREnvironmentProbeSubsystem()
Properties
automaticPlacementEnabled
True if the AR session will automatically place environment probes in the scene, false otherwise.
Declaration
public bool automaticPlacementEnabled { get; }
Property Value
| Type | Description |
|---|---|
| bool |
See Also
automaticPlacementRequested
Specifies whether the AR session should automatically place environment probes in the scene.
Declaration
public bool automaticPlacementRequested { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
|
Remarks
If both manual and automatic placement of environment probes are supported, manually placed environment probes can be specified via TryAddEnvironmentProbe(Pose, Vector3, Vector3, out XREnvironmentProbe) regardless of whether automatic placement is enabled or not.
Exceptions
| Type | Condition |
|---|---|
| NotSupportedException | Thrown when setting this value to |
environmentTextureHDREnabled
True if HDR environment textures are enabled.
Declaration
public bool environmentTextureHDREnabled { get; }
Property Value
| Type | Description |
|---|---|
| bool |
environmentTextureHDRRequested
Specifies whether the environment textures should be returned as HDR textures.
Declaration
public bool environmentTextureHDRRequested { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
|
Methods
GetChanges(Allocator)
Get the changes (added, updated, and removed) environment probes since the last call to GetChanges(Allocator).
Declaration
public override TrackableChanges<XREnvironmentProbe> GetChanges(Allocator allocator)
Parameters
| Type | Name | Description |
|---|---|---|
| Allocator | allocator | The Allocator to use when allocating the returned NativeArrays. |
Returns
| Type | Description |
|---|---|
| TrackableChanges<XREnvironmentProbe> | TrackableChanges<T> describing the planes that have been added, updated, and removed since the last call to GetChanges(Allocator). The caller owns the memory allocated with Allocator and is responsible for disposing it. |
Overrides
Register(XREnvironmentProbeSubsystemCinfo)
Registers a subsystem implementation based on the given subystem parameters.
Declaration
[Obsolete("XREnvironmentProbeSubsystem.Register(XREnvironmentProbeSubsystemCinfo) has been deprecated in AR Foundation version 6.0. Use XREnvironmentProbeSubsystemDescriptor.Register(XREnvironmentProbeSubsystemDescriptor.Cinfo) instead.")]
public static bool Register(XREnvironmentProbeSubsystemCinfo environmentProbeSubsystemCinfo)
Parameters
| Type | Name | Description |
|---|---|---|
| XREnvironmentProbeSubsystemCinfo | environmentProbeSubsystemCinfo | The parameters defining the environment probe functionality implemented by the subsystem provider. |
Returns
| Type | Description |
|---|---|
| bool |
|
Exceptions
| Type | Condition |
|---|---|
| ArgumentException | Thrown when the values specified in the
|
RemoveEnvironmentProbe(TrackableId)
Asynchronously removes the environment probe matching the trackable ID from the AR session.
Declaration
public bool RemoveEnvironmentProbe(TrackableId trackableId)
Parameters
| Type | Name | Description |
|---|---|---|
| TrackableId | trackableId | Trackable ID of the environment probe to be removed from the AR session. |
Returns
| Type | Description |
|---|---|
| bool |
|
Remarks
RemoveEnvironmentProbe can be used to remove both manually placed and automatically placed
environment probes if the implementation supports such removals, as indicated by the descriptor properties
supportsRemovalOfManual and
supportsRemovalOfAutomatic.
Exceptions
| Type | Condition |
|---|---|
| NotSupportedException | Thrown for platforms that do not support removal of the type of environment probe. |
TryAddEnvironmentProbe(Pose, Vector3, Vector3, out XREnvironmentProbe)
Tries to create an environment probe.
Declaration
public bool TryAddEnvironmentProbe(Pose pose, Vector3 scale, Vector3 size, out XREnvironmentProbe environmentProbe)
Parameters
| Type | Name | Description |
|---|---|---|
| Pose | pose | The position and rotation at which to create the environment probe. |
| Vector3 | scale | The scale at which to create the environment probe. |
| Vector3 | size | The size (dimensions) of the environment probe to create. |
| XREnvironmentProbe | environmentProbe | If successful, populated with the newly created environment probe. Otherwise, it will contain default values. |
Returns
| Type | Description |
|---|---|
| bool |
|
Exceptions
| Type | Condition |
|---|---|
| InvalidOperationException | Thrown when the environment probe subsystem is not running and this method is called to an add environment probe. |
| NotSupportedException | Thrown for platforms that do not support manual placement of environment probes. |