Unity 6.3
0 онлайн 1 гость 3 в системе
Вход

NavMeshAgent.Raycast

Declaration

public bool Raycast(Vector3 targetPosition, out AI.NavMeshHit hit);

Параметры

Параметр Описание
targetPosition Желаемое конечное положение движения.
хит Свойства препятствия, обнаруженного лучом (если таковое имеется).

Возвращаемое значение

логическое True, если между агентом и целевым местом находится препятствие, в противном случае false.

Описание

Проведите прямой путь к целевой позиции в NavMesh без перемещения агента.

Эта функция следует за путем "луча" между позицией агента и указанной позицией цели. Если вдоль линии встречается препятствие, то возвращается истинное значение, а положение и другие детали препятствующего объекта сохраняются в параметре hit. Это может быть использовано для проверки наличия свободного выстрела или линии обзора между персонажем и объектом цели. Эта функция предпочтительнее аналогичных Physics.Raycast, так как трассирование линии выполняется более простым способом с использованием navmesh и имеет меньшую нагрузку на обработку.

using UnityEngine;
using UnityEngine.AI;

public class ExampleClass : MonoBehaviour { public Transform target; private NavMeshAgent agent;

void Start() { agent = GetComponent<NavMeshAgent>(); }

void Update() { NavMeshHit hit; if (!agent.Raycast(target.position, out hit)) { // Target is "visible" from our position. } } }