function SweepTest (direction : Vector3, out hitInfo : RaycastHit, distance : float = Mathf.Infinity) : bool
Parameters
| Name | Description |
| direction |
The direction into which to sweep the rigidbody.
|
| hitInfo |
If true is returned, hitInfo will contain more information about where the collider was hit (See Also: RaycastHit).
|
| distance |
The length of the sweep
|
Returns
bool - True when the rigidbody sweep intersects any collider, otherwise false.
Description
Tests if a rigidbody would collide with anything, if it was moved through the scene.
This is similar to doing a Physics.Raycast for all points contained in any of a Rigidbody's colliders,
and returning the closest of all hits (if any) reported.
This is useful for AI code, when you need to know if an object would fit somewhere without colliding with anything.
See Also: Physics.SphereCast, Physics.CapsuleCast, Rigidbody.SweepTestAll
var hit :
RaycastHit;
function Update () {
if (rigidbody.SweepTest (transform.forward, hit, 10)) {
Debug.Log(hit.distance +
"mts distance to obstacle");
}
}
using UnityEngine;
using System.Collections;
public class example :
MonoBehaviour {
public RaycastHit hit;
void Update() {
if (rigidbody.SweepTest(transform.forward, out hit, 10))
Debug.Log(hit.distance +
"mts distance to obstacle");
}
}
import UnityEngine
import System.Collections
class example(
MonoBehaviour):
public hit as
RaycastHit def
Update():
if rigidbody.SweepTest(transform.forward, hit, 10):
Debug.Log((hit.distance + 'mts distance to obstacle'))