XRRaycastSubsystem.Raycast
public bool Raycast(Vector3 screenPoint,
List<XRRaycastHit> hitResults,
Experimental.XR.TrackableType trackableTypeMask);
Parameters
| screenPoint | The screen point from which to cast. | |
| hitResults | The resulting list of XRRaycastHit. | |
| trackableTypeMask | An optional mask of TrackableType to raycast against. |
Description 描述
Casts a ray from a screen point against selected trackables (e.g., planes and feature points).
Casts a ray from a screen position against selected trackables in the Scene. trackableTypeMask defaults to TrackableType.All.
using System.Collections.Generic; using UnityEngine; using UnityEngine.Experimental.XR;
public class RaycastExample : MonoBehaviour { public XRRaycastSubsystem xrRaycast; private List<XRRaycastHit> m_RaycastHits = new List<XRRaycastHit>();
private void Update() { if (Input.GetMouseButton(0)) { // Only raycast against feature points and the exact plane boundries var hitMask = TrackableType.FeaturePoint | TrackableType.PlaneWithinPolygon; if (xrRaycast.Raycast(Input.mousePosition, m_RaycastHits, hitMask)) { Debug.Log("Hit something!"); } } } }
public static void Raycast(Ray ray,
Experimental.XR.XRDepthSubsystem depthSubsystem,
Experimental.XR.XRPlaneSubsystem planeSubsystem,
List<XRRaycastHit> hitResults,
Experimental.XR.TrackableType trackableTypeMask,
float pointCloudRaycastAngleInDegrees);
Parameters
| ray | The Ray to use. | |
| depthSubsystem | The XRDepthSubsystem to raycast against. May be null. | |
| planeSubsystem | The XRPlaneSubsystem to raycast against. May be null. | |
| hitResults | The resulting list of XRRaycastHit. | |
| trackableTypeMask | An optional mask of TrackableType to raycast against. | |
| pointCloudRaycastAngleInDegrees | When raycasting against feature points, cast a cone with this angle. |
Description 描述
Casts a ray using ray against selected trackables (e.g., planes and feature points).
Use this method to raycast against selected trackables in the Scene. trackableTypeMask defaults to TrackableType.All.
When raycasting against TrackableType.FeaturePoint, Unity uses a cone defined by pointCloudRaycastAngleInDegrees. It defaults to 5 degrees.