[유니티]탑다운 슈팅 따라하기 #1 플레이어 컨트롤러

안녕하세요 유랑입니다.



실력향상을 위해서 오늘은 유튜브를 따라하면서 공부하겠습니다.

궁금하신점 있으시다면 댓글로 남겨주세요^^




1. 탑다운 슈팅 따라하기



이번 강의는 Sebastian Lague님께서 만든 예제이며,

유튜브를 보시면 자세한 내용을 배우실 수 있습니다.


유튜브 사이트 => 유튜브 




유니티 슈팅




1-1) 프로젝트 준비



프로젝트를 생성해 주겠습니다.

유니티 버전은 2019.2.0.f1을 사용해 줄게요^^



유니티 슈팅



오늘은 플레이어를 움직일 수 있는 스크립트와

색상을 정해주기 위해 머티리얼 생성,

그리고 씬을 간단하게 꾸며줄께요.



유니티 슈팅




1-2) 스크립트 생성 -㉠Player



플레이어 스크립트는 키보드의 좌우상하를 입력받는 역할을 합니다.

입력값은 플레이어 컨트롤러 메소드에 전달합니다!!




유니티 슈팅




1-3) 스크립트 생성 -㉡PlayerController



플레이어 컨트롤러 스크립트는 플레이어를 움직이는 역할을 합니다.

움직일 때는 리지드바디라는 컴포넌트를 이용하는데,

물리엔진을 이용해 움직인다고 생각하시면 되요ㅎㅎ




유니티 슈팅




1-4) 프로젝트 세팅 -㉠스크립트 적용



스크립트를 적용하시면 아시겠지만 RequireComponent라는 코드에 의해서

자동으로 해당 컴포넌트가 추가됩니다.

이 떄 플레이어는 캡슐을 생성해 만들어 주세요^^




유니티 슈팅




1-5) 프로젝트 세팅 -㉡지형 생성



지형도 필요하겠죠.

Plane을 추가해 주겠습니다.




유니티 슈팅




1-6) 프로젝트 세팅 -㉢머티리얼 생성



플레이어 색깔이 흰색이라 구별하기 힘들 수 있죠.

머티리얼을 만들어 적용해 줄게요.

머티리얼을 캐릭터의 색상과 재질을 바꿀 수 있습니다.




유니티 슈팅




1-7) 프로젝트 세팅 -㉣카메라



우리는 탑뷰 게임을 만들잖아요.

그렇기에 카메라 위치도 조정해 주겠습니다.




유니티 슈팅



게임을 실행시켜 움직여 보세요.

너무 리얼한 나머지 플레이어가 넘어지네요ㅋㄷ



유니티 슈팅




1-8) 플레이어 움직임 보완



리지드바디의 다음 부분을 체크하면 해당 축의 회전을 막을 수 있어요.

물론 포지션을 체크하면 위치를 막을 수 있겠죠.




유니티 슈팅



즉시 이동을 위해 다음과 같이 수정해 주겠습니다.


GetAxisRaw => -1, 0, 1의 값을 반환, 즉시 반응해야 할 때 사용

GetAxis => -1 ~ 1의 범위의 값을 반환. 부드러운 이동에 필요



유니티 슈팅



움직임은 이제 괜찮아졌네요ㅎㅎ



유니티 슈팅




1-9) 플레이어 회전



마우스 커서를 이용해 플레이어 회전을 시켜줄텐데요.

그러기 위해 해당 코드를 추가해 주겠습니다.

원리는 다음과 같아요.

카메라에서 레이가 나오고 마우스의 위치를 반환하여, 

그에 맞게 회전하는 거죠.




유니티 슈팅



유니티 슈팅



유니티 슈팅



Debug.DrawLine을 이용하면 레이를 눈으로 확인가능하답니다ㅎㅎ



유니티 슈팅




2. 마무리



오늘 강의는 여기까지입니다.

탑다운 슈팅을 따라하면서 플레이어 컨트롤러 기능을 만들어 보았습니다.

감사합니다.




수업자료: 탑다운 슈팅 따라하기 #1 플레이어 컨트롤러












댓글

Designed by JB FACTORY