안녕하세요 세번째 글로 찾아뵙게 되었습니다.
우선 플레이어를 생성하기 전에 모델링을 찾아야합니다.
모델링은 유니티 에셋 스토어에서 구할 수 있습니다.
에셋 스토어에서 가볍게 하실거면 무료로 받으시는것을 추천드립니다.
그리고 에셋스토어에서 다운 받기전에 로그인하셔야합니다!!
이번 강의 사용 에셋은 유니티의 대표주자 유니티짱입니다.
https://assetstore.unity.com/packages/3d/characters/unity-chan-model-18705
내 에셋에 추가를 누르면 상단에 유니티에서 열기라고 뜨는데 유니티에서 열기를 클릭해줍시다.
그럼 패키지 매니저 창이 뜨는데,. 항목 선택후에 다운로드를 해줍니다.
임포트를 하고나면 이제 하단 프로젝트에 폴더가 하나 생겼을겁니다.
일단 진행하기전에 폴더 정리부터 해줍시다.
각각의 폴더를 생성 후에 방금 받은 폴더는 Character 폴더에, 이전에 작성한 test 스크립트는 Script에 넣어주세요.
일단 실습을 위해 임시로 평면을 하나 생성해줍시다.
해당 폴더로 가서 폴더 안에 있는 Unitychan 모델링을 씬화면으로 끌어 당겨 배치해줍시다.
여기서 unitychan 의 포지션 값을 x,y,z 각각 0,0,0으로 변경해주시고 붙어 있는 스크립트는 모두 제거해주도록 합시다.
PlayerManager 라는 이름으로 스크립트를 하나 생성해줍시다.
우선 우리가 움직이는 것을 알아보기위해 위의 코드만 짠후에 Input.GetAxis("Horizontal")과 Vertical이 각각 무엇을 하길래
float 값에 대입하는지 디버깅을 통해 알아봅시다.
플레이어에게 스크립트를 붙여줍시다.
카메라 위치값은 ctrl + shift + f 로 원하는 위치에서 카메라 위치를 고정가능합니다.
디버그 창을 확인 해보면 w 를 누르면 점점 1에 가까워지고 s 는 -1 , a도 -1, d는 1에 가까워지는것을 볼 수 있습니다.
이러한 float 값을 가지는것을 알 수 있고 해당 float값을 기준으로 플레이어의 벡터값을 움직이게 하면 플레이어가 이동할 수 있다는 것입니다.
주석을 확인하고 직접 타이핑하여 코드를 짜봅시다.
디버그 부분은 지우셔도 됩니다.
캡슐콜라이더는 콜라이더 편집 옆에 아이콘을 클릭하여 모델링에 맞게 범위를 잘 설정해주시면됩니다.
rigidbody가 있는 오브젝트는 중력이 작동하는데, 만약 콜라이더가 없으면 계속해서 떨어지기 때문에 rigidbody가 있는 오브젝트에 콜라이더도 같이 붙여줘야합니다. 물론 콜라이더는 콜라이더 끼리 닿아야 작동을 하는데, 우리는 아까 평면을 만들었습니다. 평면에는 메쉬 콜라이더라는 콜라이더가 붙어있습니다.
우리의 플레이어가 잘 움직이는 것을 확인할 수 있습니다.
하지만 애니메이션이 없어서 많이 어색하죠
다음에 애니메이션을 추가해보도록 합시다.
https://github.com/rhwjdtjs/Unity_Lec_from_Tistory
강의에 사용되는 스크립트가 있는 깃허브입니다. 스크립트 오류 날시 확인해보세요
간단한 RPG 게임 시리즈 진행 예정
(1) 유니티 설치하기 -> (완료)
(2) 유니티 기본 사용법 -> (완료)
(3) 플레이어 생성 및 이동 -> (완료)
(4) 플레이어 애니메이션 및 무기 들기 -> (6월 14일)
(5) UI 다뤄보기 -> (6월 16일)
(6) 적 구현 -> (6월 19일)
(7) 스탯 구현 -> (6월 20일)
(8) 터레인 -> (6월 21일)
(9) 그래픽 및 메인화면 -> (6월 22일)
'유니티' 카테고리의 다른 글
유니티 3D 간단한 RPG 게임 만들기 (5) - UI 및 간단한 스탯 만들기 (0) | 2023.06.13 |
---|---|
유니티 3D 간단한 RPG 게임 만들기 (4) - 1인칭 및 플레이어 애니메이션 (0) | 2023.06.05 |
유니티 3D 간단한 RPG 게임 만들기 (2) - 유니티 기본적인 사용법 (2) | 2023.06.03 |
유니티 3D 간단한 RPG 게임 만들기 (1) - 유니티 설치하기 (0) | 2023.06.02 |