[Unity]05.포톤2를 활용한 탱크 게임 만들기 #1 - 포톤환경 구성하기

안녕하세요 유랑입니다.



유니티에 포톤2가 나왔다는 소식을 듣고 간단한 탱크게임을 만들어 보았습니다.

사실 배운거지만 복습차원에서 진행할게요.




1. Photon2



포톤1에서 메소드도 더 생기고, 편리한 환경을 구성했다고 하는데

과연 어떤게 달라졌을지 시작해 보겠습니다.



1-1) 포톤환경 구성



프로젝트를 생성 후 자신의 스타일에 맞게 환경을 구성해 주세요.








에셋스토어에서 PUN 2를 받아주세요.

유니티 전용 포톤 프로그램인데 얼마전에 2까지 나왔네요.





포톤 사이트에 들어가 새 어플리케이션을 만들어 ID를 받아오겠습니다.

포톤을 사용하려면 꼭 ID가 있어야 해요.

https://dashboard.photonengine.com/ko-KR/







ID를 복사해 PUN 셋업창에 붙여넣기 해주겠습니다.







* APP Id Realtime => 포톤 네트워크를 사용하기 위한 ID 넘버 값이에요.

* App Id Chat => 포톤 챗팅을 사용하기 위한 ID 넘버 값이에요.

* App Version => 앱 버전을 적어주면 해당 버전의 프로그램을 사용하는 사람들끼리만 만납니다.

* Protocol => 통신규약인데 대표적으로 Udp와 Tcp가 있어요.

* Start In Offline Mode => 코드를 바꿀 필요없이 네트워크를 사용하지 않고 프로그램을 실행가능해요.

* Run In BackGround => 체크하여야 포톤네트워크가 활성화 됩니다.






1-2) 터레인을 이용 지형 만들기



터레인은 지형을 만들 수 있는 기능입니다.

터레인 오브젝트를 생성 후 트랜스폼 값을 다음과 같이 변경해 주세요.






Paint 기능에서는 텍스쳐를 추가해 해당 텍스쳐를 이용해서 지형을 만들 수 있습니다.

마음에 드는 텍스쳐를 선택해 주세요.





브러쉬의 모양에 따라 다양한 모양으로 텍스쳐를 입힐 수 있어요.





Raise/Lower 기능을 사용하면 언덕 or 산을 만들 수 있어요.

주위를 산으로 만들어 주겠습니다.





Paint Tree를 이용해서 나무, 돌, 잔디 같은 지형도 설치해 주세요^^






1-3) 탱크 만들기



받아온 탱크 프리팹을 하이라키 뷰에 드래그앤 드랍을 이용해 만들어 주겠습니다.

Abrams_Tank.zip






Box Collider를 추가하고, Edit 기능을 이용해서 탱크의 크기에 맞게 조정해 주겠습니다.





사실적인 효과와 충돌처리를 가능하도록 Rigidbody를 추가하고,

Mass를 2000으로 설정해 주세요.

탱크의 무게에 비해서는 작은 값이지만 게임이니깐요ㅎㅎ






1-4) 탱크 이동 스크립트 작성



MoveCtrl 스크립트는 탱크를 움직이기 위한 스크립트입니다.

방향키를 이용해 회전과 이동이 가능하며, centerOfMass를 통해서 탱크의 중심점을 바꾸었어요.

이유는 박스콜라이더의 중심에 무게 중심이 생기기 때문에 탱크가 뒤집힐 수 있기 때문입니다.








게임을 실행시켜서 산을 올라가 보세요^^






1-5) SmoothFollow 스크립트



이제 카메라가 탱크를 따라가면 될텐데, 자연스러운 효과를 위해서 

에셋 스토어 스탠다드 에셋에 들어있는 SmoothFollow를 다운받아 주세요.






받은 스크립트는 메인 카메라에 추가하고 컴포넌트 속성은 다음과 같이 변경해 주세요.








탱크를 기준으로 보여지기에 시야가 부족하네요.

탱크 밑으로 빈 오브젝트를 생성 후 위치를 올리고 SmoothFollow 타겟에 넣어 주세요.







게임을 실행하면 자연스럽게 보여지게 됩니다.






1-6) 포탑 



포탑을 움직이기 전에 Terrain 오브젝트의 Layer를 FLOOR로 설정해 주세요.

이 부분은 나중에 다루겠습니다.






터렛에 해당 스크립트를 추가해 줄텐데

마우스로 바닥을 찍으면 카메라에서 광선이 나오게 됩니다.







짜잔 다음과 같이 나오면 성공입니다.






2. 마무리



오늘은 포톤 PUN2를 다운받고, 탱크와 지형을 만들어 보았습니다.

네트워크는 게임기능을 구성한 후 네트워크 기능을 추가하면 되는데요.

다음 시간에는 포탑을 움직여 보고, 네트워크에 대해서 공부해 볼게요.

오늘도 고생하셨습니다.

감사합니다.




수업자료: https://github.com/YouRang12/-Tistory-Unity---Extra-Photon-







댓글

Designed by JB FACTORY