Velocity at which the obstacle moves around the NavMesh.
// Simple behaviour to block the player who we assume is controlled // by a NavMeshAgent. var obs: NavMeshObstacle; var player: Transform; var moveSpeed: float;function Start () { obs = GetComponent.<NavMeshObstacle>(); }function Update() { // Find the heading to a target point five units in front of the player. var targetPoint = player.TransformPoint(Vector3.forward * 5.0); var heading = (player.position - transform.position).normalized; // Set the obstacle to move to the target at a predetermined speed. obs.velocity = heading * moveSpeed; }
using UnityEngine; using System.Collections; public class Example : MonoBehaviour { public NavMeshObstacle obs; public Transform player; public float moveSpeed; void Start() { obs = GetComponent<NavMeshObstacle>(); } void Update() { Vector3 targetPoint = player.TransformPoint(Vector3.forward * 5.0F); Vector3 heading = player.position - transform.position.normalized; obs.velocity = heading * moveSpeed; } }
import UnityEngine import System.Collections public class Example(MonoBehaviour): public obs as NavMeshObstacle public player as Transform public moveSpeed as float def Start() as void: obs = GetComponent[of NavMeshObstacle]() def Update() as void: targetPoint as Vector3 = player.TransformPoint((Vector3.forward * 5.0F)) heading as Vector3 = (player.position - transform.position).normalized obs.velocity = (heading * moveSpeed)