WuhuIslandTesting/Library/PackageCache/com.unity.xr.oculus@4.0.0/Runtime/OculusBoundary.cs

54 lines
1.9 KiB
C#
Raw Normal View History

2025-01-07 02:06:59 +01:00
using UnityEngine;
namespace Unity.XR.Oculus
{
public static class Boundary
{
public enum BoundaryType
{
/// <summary>
/// Outer Boundary - axis-aligned rectangular bounding box enclosing the outer boundary.
/// </summary>
OuterBoundary = 0,
/// <summary>
/// Play area - axis-aligned smaller rectangle area inside outer boundary where gameplay happens.
/// </summary>
PlayArea = 1
}
/// <summary>
/// Returns true if the boundary system is currently configured with valid boundary data.
/// </summary>
public static bool GetBoundaryConfigured()
{
return NativeMethods.GetBoundaryConfigured();
}
/// <summary>
/// Get a vector of the spatial dimensions of the specified boundary type. (x = width, y = height, z = depth) with height always returning 0.
/// Return true if boundary dimensions are supported and values are available. Return false otherwise.
/// </summary>
public static bool GetBoundaryDimensions(BoundaryType boundaryType, out Vector3 dimensions)
{
return NativeMethods.GetBoundaryDimensions(boundaryType, out dimensions);
}
/// <summary>
/// Returns true if the boundary system is currently visible. Return false otherwise.
/// </summary>
public static bool GetBoundaryVisible()
{
return NativeMethods.GetBoundaryVisible();
}
/// <summary>
/// Requests that the boundary system visibility be set to the specified value.
/// The actual visibility can be overridden by the system (i.e., proximity trigger) or by the user (boundary system disabled)
/// </summary>
public static void SetBoundaryVisible(bool boundaryVisible)
{
NativeMethods.SetBoundaryVisible(boundaryVisible);
}
}
}