레이캐스팅을 사용해 캐릭터 움직이기

  • 레이캐스팅 : 카메라의 원점에서부터 마우스로 클릭한 지점까지 이어지는 특정한 벡터를 구하는 것

    • 보이지 않는 선(Ray)은 카메라 원점 > 클리핑 평면 (사용자의 화면 비율에 맞는 평면) > 인게임 맵 까지 이어짐
  • Debug.DrawRay : 시작점과 방향을 정하면 그에 맞는 선을 그음

  • Camera.ScreenPointToRay : 카메라의 원점에서부터 특정 지점까지 이어지는 선을 그음

  • Ray 구조체 : origin(원점)과 direction(방향)을 가지고 있는 벡터 구조체

  • RaycastHit 구조체 : Ray의 충돌지점에 대한 구조체.

    • RaycastHit.point는 클릭해서 닿은 위치값이기 때문에 주로 사용됨
  • MoveToCursor() : 레이캐스팅을 통해 캐릭터를 움직임

    1. 카메라에서 화면으로 레이캐스팅을 진행함
    2. 레이가 터레인과 충돌한 지점을 구함
    3. 그 지점을 캐릭터의 NavMeshAgent의 destination으로 지정함.

고정 카메라 만들기

  • 아무런 설정도 하지 않고, 플레이어의 자식으로 메인 카메라를 두면 회전을 같이 함.
  • 이런 일을 방지하기 위해서, 플레이어의 자식으로 Follow Camera Game Object를 생성함
  • 카메라는 Follow Camera의 자식으로 들어감.

14. 고정 팔로우 카메라 생성까지 완료