Unity/기능 구현 / / 2025. 11. 28. 20:27

[Unity] 캐릭터 초기 설정

반응형

캐릭터 에셋을 하나 하이어라키에 추가한다.

 

그 다음으로 Project 폴더에서 마우스 우클릭으로 - MonoBehaviour 스크립트를 추가한다.

 

 

생성한 스크립트 이름을 PlayerMovenment로 짓고 하이어라키에 올린 캐릭터에 드래그 앤 드랍을 통해 스크립트를 컴포넌트로 추가한다.

 

 

그 다음 PlayerMovement 스크립트를 더블클릭하여 IDE를 실행한다.

이제 코드를 기본적인 이동, 회전, 애니메이션 코드를 작성한다. 

 

이동 : 가로 이동(Horizontal)과 세로 이동(Vertical)값을 가져온다. 이 때 좌우 키와 상하 키를 동시에 누르면 대각선 이동이 되는데 이 때 대각선 이동의 크기가 1을 초과하지 않도록 normalized를 해준다.

마지막으로 컨트롤러를 통해 방향과 크기(Speed)를 곱해 이동 처리를 한다.

 

회전 : moveDirection의 크기가 0.01 이상이라는 건 입력이 들어왔다는 뜻이므로, 입력이 들어오면 moveDirection의 Vector 값을 쿼터니온(사원수) 회전 값으로 변경하고, 이를 캐릭터의 트랜스폼의 회전 값에 선형보간법을 이용해 부드럽게 전환되도록 한다.

 

애니메이션 : 입력이 들어오면 Idle에서 Walk/Run으로 애니메이션을 변경시키기 위해서 체크할 변수를 매칭시킨다.

애니메이션 컨트롤러에 SPEED라는 변수를 만들면 거기에다가 moveDirection의 크기를 넣어준다는 뜻

크기가 0이면 입력이 없으니 Idle, 0보다 크면 입력이 들어왔으니 움직이는 애니메이션으로 전환시키면 된다.

 

 

이제 에디터에서 애니메이터 컨트롤러를 생성한다.

 

생성한 애니메이터 컨트롤러를 하이어라키의 캐릭터에게 넣어서 컴포넌트로 추가해준다.

 

 

애니메이터 컨트롤러를 더블 클릭해서 애니메이션 컨트롤러를 열면 Entry가 있는데 근처에 Idle 애니메이션을 올려놓는다.

그러면 자동으로 연결이 된다.

 

Idle 애니메이션을 더블클릭하면 우측 Inspector에서 Loop를 설정할 수 있다.

Idle, Run과 같이 이동과 관련된 옵션은 무한히 반복되어야 하므로 체크한다.

 

이제 Idle 뿐만 아니라 입력을 받아서 Run/Walk 애니메이션으로 자연스럽게 전환이 되게 만들어야 한다.

이를 위해 Run 애니메이션을 애니메이터에 추가한다.

 

 

Idle을 클릭하고 우클릭 - Make Transition 클릭

 

그러면 마우스 커서에 화살표가 나오고 이를 Run 애니메이션에 연결한다.

 

마찬가지로 Run에서 우클릭해서 Make Transition을 통해 Idle을 연결한다.

 

이제 전환 조건을 설정해야 하는데, 조건을 설정하기 위해 파라미터를 하나 추가한다.

파라미터 이름은 PlayerMovement 스크립트에서 작성한 이름과 완전히 일치해야 한다.

 

 

이제 조건 설정 준비가 끝났으니,

간선을 클릭한 뒤, Inspector에서 설정한다.

 

 

Has Exit Time을 끄고, 조건을 통해서 전환 규칙을 설정한다.

Condition에 우측 하단 + 버튼을 눌러 조건을 추가한다.



그러면 Idle에서 Run 애니메이션으로 전환되는 조건은 SPEED가 0.1 이상일 때 바뀐다는 설정이 된다.

 

반대도 똑같다.

 

 

반대로 Run에서 Idle로 돌아갈 때는 Less 조건으로 변경한다.

 

 

이제 애니메이션까지 설정이 끝났고, 다음으로 카메라 설정으로  넘어간다.

TopView 시점에서 카메라는 X축으로 45 ~ 55도 정도를 설정하는 편이다.

 

이 카메라가 플레이어를 따라다니게 만들어야 한다.

 

마찬가지로 Project 폴더에서 우클릭 - Create - MonoBehaviour 추가

이름은 FollowCamera로 짓는다.

 

 

스크립트로 가서, Start 함수에서 메인 카메라를 가져오고, Lerp를 통해 카메라의 위치를 설정

 

방금 만든 스크립트를 Player에게 드래그 앤 드롭으로 컴포넌트로 추가.

 

 

결과

반응형

'Unity > 기능 구현' 카테고리의 다른 글

[Unity] Follow Camera  (1) 2026.01.06
[Unity] Input System으로 이동  (0) 2025.12.09
[Unity] Playerprefs  (0) 2025.12.01
[Unity] Monster 설정  (1) 2025.11.29
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유