프로그래밍 정리/Unity

[Unity - 유니티] NavMeshAgent - 추적하는 컴포넌트

주누다 2014. 6. 4. 21:03
반응형

NavMeshAgent - 게임오브젝트의 Navigation 정보를 분석하여 목표물을 추적하게 하는 컴포넌트(적을 추적할 때 유용)

※ Navigation Static 옵션을 이용해서 장애물을 회피하게도 할 수 있음.


Component 추가 선택(Add Component 또는 메뉴에서 Component 선택)

Navigation -> NavMeshAgent 추가.



Source

=========================================================================================================

public void Monster1 : MonoBehavior{


private Transform targetTr;

private Transform thisTr;

private NavMeshAgent nma;


void Start()

{

// 추적할 타겟

targetTr = GameObject.Find("Target이 될 오브젝트").GetComponent<Transform>();

// 타겟을 추적할 게임오브젝트

thistr = GetComponent<Transform>();

// 지정된 오브젝트에 NavMeshAgent 를 nma 변수에 할당

nma = GetComponent<NavMeshAgent>();

}


void Update()

{

// 타겟 대상의 위치 설정. 위치 설정시 바로 추적 시작.

nma.destination = targetTr.position;

}

}


※ NavMeshAgent.destination = 추적할 목표의 위치의 설정값. 설정시 바로 추적 시작.


    NavMeshAgent.SetDestination(Vector3 target) - 목적지 설정

    NavMeshAgent.stop = 추적 중지.   


=========================================================================================================


Update 구문에 놓는 것보다 코루틴을 이용해서 하는 방법이 좋음.




반응형