Name | Description |
---|---|
passableMask | A mask specifying which NavMesh layers can be passed when tracing the path. |
maxDistance | Terminate scanning the path at this distance. |
hit | Holds the properties of the resulting location. |
boolean - True If terminated before reaching position at maxDistance. Otherwise returns false.
Sample a position along the current path.
This function looks ahead a specified distance along the current path. Details of the mesh at that position are then returned in a NavMeshHit object. This could be used, for example, to check the type of surface that lies ahead before the character gets there - a character could raise his gun above his head if he is about to wade through water, say.
var target: Transform;
var mesh: NavMesh;
private var agent: NavMeshAgent;
private var waterLayer: int;
function Start () {
agent = GetComponent.<NavMeshAgent>();
waterLayer = mesh.GetNavMeshLayerFromName("Water");
agent.SetDestination(target.position);
}
function Update() {
var hit: NavMeshHit;
// Check all layers one unit ahead.
if (!agent.SamplePathPosition(-1, 1.0, hit)) {
if (hit.mask & waterLayer) {
// Water detected along the path...
}
}
}