유니티 온라인 대전 공부 1 - 설치 및 세팅

2023. 9. 6. 18:38Unity/유니티(기본)

728x90
반응형

 파이어베이스와 포톤을 사용하여, 온라인 게임을 구현하는 방법을 학습.

 

- 구글 파이어베이스: 계정 인증에 이용

- 포톤: 네트워크 게임 플레이 구현

 


Firebase

 

 파이어베이스는 온리원 백엔드 플랫폼으로써, 복잡한 웹 API 설계를 대신해 주는 구글의 상품이다.

 

 

Unity 프로젝트에 Firebase 추가  |  Firebase for Unity

Google I/O 2023에서 Firebase의 주요 소식을 확인하세요. 자세히 알아보기 의견 보내기 Unity 프로젝트에 Firebase 추가 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요

firebase.google.com

1. 파이어베이스를 활용해 Unity 게임을 만드는데 있어서, 가장 먼저 해야 할 일은 위 링크에서 Firebase.SDK를 다운로드하는 것이다.

 

2. 파이어베이스를 이용할 유니티 프로젝트를 킨 상태에서, 사용하고자 하는 파이어베이스 기능이 담겨있는 패키지를 더블클릭하여 import 한다.

 

3. 파이어베이스에서 유니티 앱을 식별하는데 이용하기 위해, Build Setting -> Resolution and Presentation -> Project Settings -> Identification 위치에 있는 Package Name을 적절한 이름으로 변경해 주어야 한다.

 

4. 어플리케이션에 첨부할 서명도 필요하다. Build Setting -> Project Settings -> Publishing Settings 위치에 있는 Keystore Manager... 을 클릭하고, 적절한 값을 넣어서 키를 생성한다.

 

5. 이후 파이어베이스 홈페이지에서 콘솔로 이동 후, 새로운 Firebase 프로젝트를 생성한다. 생성 시 작성해야 할 내용이나, 체크는 적절히 재량껏. 애널리틱스를 쓰나 안 쓰나 큰 차이는 없는 듯하다.

 

 6. 이렇게 까지 하면 파이어베이스 프로젝트 생성 완료. 하지만 어플리케이션을 연결해야 한다. 위 사진은 이미 연동되어 있는 상태인데, 아직 추가하지 않은 경우라면 유니티 아이콘을 클릭하여 연동하면 된다.

 

 대충 이런 느낌이다.

 

7. 유니티 아이콘을 눌러서 앱 연동을 시도하면 위와 같은 창이 나오는데, 이때 Android 패키지 이름란에 위의 "3" 과정에서 작성한 Package Name을 그대로 기입해 주면 된다.

 

8. 이렇게 하고 나면 "google-services.json"이라는 파일을 제공한다. 해당 파일을 다운로드한 후, 유니티 프로젝트의 Assets 폴더에 넣어준다.

 

9. 빌드 -> Authentication -> Sign-in method에서 원하는 계정 인증 방법을 선택한다.

 

10-1. 프로젝트 설정 -> 내 앱에서 디지털 지문을 추가해야 한다.

 

10-2. 아까 전에 Assets 디렉토리에 "user.keystore"파일을 넣었을 텐데 윈도우라면 파워쉘, 리눅스라면 쉘 등을 이용하여 해당 디렉토리로 이동한다.

 

10-3. 먼저 "keytool -list -v -alias 별칭이름 -keystore user.keystore"을 타이핑하고 나면, 비밀번호를 입력하라고 나온다. 이때, 앞서 "4" 과정에서 작성한 패스워드를 입력하면 위와 같은 내용이 출력된다. 여기서 SHA1이던 SHA256이던 상관없이 둘 중 하나를 택 1 하여 "10-1" 과정에서 나타난 공란에 기입한다.

 


※ 주의 사항 ※

 Keytool 명령어가 실행되지 않는 경우에는 아래의 방법을 시도해 보길 바랍니다.

 

 시스템 속성 -> 환경 변수 -> 시스템 변수까지 들어간 후, Path 편집을 누른 후, OpenJDK와 OpenJDK\bin 디렉토리 모두 환경 변수에 넣어준다. 대부분의 경우, JDK 환경 변수 문제로 인해 keytool 명령어가 실행되지 않는다.


 

11. 이제 등록한 인증서 지문을 생성할 수 있는 keystore를 가진 앱에 대해서, 파이어베이스가 신뢰하고 통신할 수 있게 된다. 여기서 새로운 google-services.json 파일을 받은 뒤에, Assets 디렉토리 내에 있던 "google-services.json" 파일을 제거하고, 새로 받은 파일을 넣는다.

 

12. Authentication -> Users에서는 테스트를 위해, 사용자를 직접 추가할 수 있다.

 

 

 


Photon

 게임 플레이에서 네트워크 동기화를 구현할 때 이용한다.

 

1. 포톤의 Pun 2를 사용하기 위해, 에셋 스토어에서 import 한다.

 

 

글로벌 크로스 플랫폼 실시간 게임 개발 | Photon Engine

 

www.photonengine.com

2. 로그인 후 관리 화면으로 이동하고,

3. 새 어플리케이션 만들기를 선택한다.

 

4. 사용하는 포톤의 종류를 정확히 기입하고, 어플의 이름과 설명을 작성한다.

 

5. 그 후 생성된 어플리케이션의 ID를 복사하여, 

 

6. Window -> Photon Unity Networking -> PUN Wizard로 들어가서 Pun Setup 클릭 후, 복사한 어플리케이션 ID를 붙여 넣기하고 Setup 한다.

 

728x90
반응형