using System;
using Unity.XR.CoreUtils;
namespace UnityEngine.XR.Simulation
{
///
/// Runtime settings for XR Simulation.
///
[Serializable]
[ScriptableSettingsPath(SimulationConstants.runtimeSettingsPath)]
class XRSimulationRuntimeSettings : ScriptableSettings
{
[SerializeField, Tooltip("Layer used for the simulation environment")]
int m_EnvironmentLayer = 30;
[SerializeField]
EnvironmentScanParams m_EnvironmentScanParams;
[SerializeField]
PlaneFindingParams m_PlaneFindingParams = new();
[SerializeField]
TrackedImageDiscoveryParams m_TrackedImageDiscoveryParams = new();
[SerializeField]
EnvironmentProbeParams m_EnvironmentProbeDiscoveryParams = new();
[SerializeField]
AnchorDiscoveryParams m_AnchorDiscoveryParams = new();
[SerializeField]
BoundingBoxDiscoveryParams m_BoundingBoxDiscoveryParams = new();
[Header("X-Ray Options")]
[SerializeField, Tooltip("Use x-ray visuals on the simulation environments.")]
bool m_UseXRay = true;
[SerializeField, Tooltip("Flip the Depth direction that the X-Ray clips the model in URP.")]
bool m_FlipXRayDirection;
///
/// Layer used for the simulation environment
///
public int environmentLayer => m_EnvironmentLayer;
public EnvironmentScanParams environmentScanParams => m_EnvironmentScanParams;
public TrackedImageDiscoveryParams trackedImageDiscoveryParams => m_TrackedImageDiscoveryParams;
public PlaneFindingParams planeFindingParams => m_PlaneFindingParams;
public EnvironmentProbeParams environmentProbeDiscoveryParams => m_EnvironmentProbeDiscoveryParams;
public AnchorDiscoveryParams anchorDiscoveryParams => m_AnchorDiscoveryParams;
public BoundingBoxDiscoveryParams boundingBoxDiscoveryParams => m_BoundingBoxDiscoveryParams;
///
/// Use x-ray visuals on the simulation environments.
///
public bool useXRay => m_UseXRay;
///
/// Flip the Depth direction that the X-Ray clips the model in URP.
///
public bool flipXRayDirection => m_FlipXRayDirection;
}
}