| origin | The starting point of the ray in world coordinates. |
| direction | The direction of the ray. |
| distance | The length of the ray. |
| layerMask | A Layer mask that is used to selectively ignore colliders when casting a ray. |
Casts a ray against all colliders in the scene.
function Update () {
var fwd = transform.TransformDirection (Vector3.forward);
if (Physics.Raycast (transform.position, fwd, 10)) {
print ("There is something in front of the object!");
}
}
using UnityEngine; using System.Collections; public class Example : MonoBehaviour { void Update() { Vector3 fwd = transform.TransformDirection(Vector3.forward); if (Physics.Raycast(transform.position, fwd, 10)) print("There is something in front of the object!"); } }
import UnityEngine import System.Collections public class Example(MonoBehaviour): def Update() as void: fwd as Vector3 = transform.TransformDirection(Vector3.forward) if Physics.Raycast(transform.position, fwd, 10): print('There is something in front of the object!')
| origin | The starting point of the ray in world coordinates. |
| direction | The direction of the ray. |
| distance | The length of the ray. |
| hitInfo | If true is returned, hitInfo will contain more information about where the collider was hit (See Also: RaycastHit). |
| layerMask | A Layer mask that is used to selectively ignore colliders when casting a ray. |
Casts a ray against all colliders in the scene and returns detailed information on what was hit.
function Update () {
var hit : RaycastHit;
if (Physics.Raycast (transform.position, -Vector3.up, hit)) {
var distanceToGround = hit.distance;
}
}
using UnityEngine; using System.Collections; public class Example : MonoBehaviour { void Update() { RaycastHit hit; if (Physics.Raycast(transform.position, -Vector3.up, out hit)) float distanceToGround = hit.distance; } }
import UnityEngine import System.Collections public class Example(MonoBehaviour): def Update() as void: hit as RaycastHit if Physics.Raycast(transform.position, -Vector3.up, ): distanceToGround as float = hit.distance
// Raycast up to 100 meters down function Update () {
var hit : RaycastHit;
if (Physics.Raycast (transform.position, -Vector3.up, hit, 100.0)) {
var distanceToGround = hit.distance;
}
}
using UnityEngine; using System.Collections; public class Example : MonoBehaviour { void Update() { RaycastHit hit; if (Physics.Raycast(transform.position, -Vector3.up, out hit, 100.0F)) float distanceToGround = hit.distance; } }
import UnityEngine import System.Collections public class Example(MonoBehaviour): def Update() as void: hit as RaycastHit if Physics.Raycast(transform.position, -Vector3.up, , 100.0F): distanceToGround as float = hit.distance
| ray | The starting point and direction of the ray. |
| distance | The length of the ray. |
| layerMask | A Layer mask that is used to selectively ignore colliders when casting a ray. |
Same as above using /ray.origin/ and /ray.direction/ instead of origin and direction.
function Update() {
var ray = Camera.main.ScreenPointToRay (Input.mousePosition); if (Physics.Raycast (ray, 100)) {
print ("Hit something");
}
}
using UnityEngine; using System.Collections; public class Example : MonoBehaviour { void Update() { Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); if (Physics.Raycast(ray, 100)) print("Hit something"); } }
import UnityEngine import System.Collections public class Example(MonoBehaviour): def Update() as void: ray as Ray = Camera.main.ScreenPointToRay(Input.mousePosition) if Physics.Raycast(ray, 100): print('Hit something')
| ray | The starting point and direction of the ray. |
| distance | The length of the ray. |
| hitInfo | If true is returned, hitInfo will contain more information about where the collider was hit (See Also: RaycastHit). |
| layerMask | A Layer mask that is used to selectively ignore colliders when casting a ray. |
Same as above using /ray.origin/ and /ray.direction/ instead of origin and direction.
function Update() {
var ray = Camera.main.ScreenPointToRay (Input.mousePosition);
var hit : RaycastHit;
if (Physics.Raycast (ray, hit, 100)) {
Debug.DrawLine (ray.origin, hit.point);
}
}
using UnityEngine; using System.Collections; public class Example : MonoBehaviour { void Update() { Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); RaycastHit hit; if (Physics.Raycast(ray, out hit, 100)) Debug.DrawLine(ray.origin, hit.point); } }
import UnityEngine import System.Collections public class Example(MonoBehaviour): def Update() as void: ray as Ray = Camera.main.ScreenPointToRay(Input.mousePosition) hit as RaycastHit if Physics.Raycast(ray, , 100): Debug.DrawLine(ray.origin, hit.point)