🏗️ STEP 1. GCP 프로젝트 생성 및 할당량 확인 (가장 먼저 할 일)
GPGS를 연동하려면 게임 전용 GCP 프로젝트를 최우선으로 생성해야 합니다.
1-1. 새 프로젝트 만들기
- Google Cloud Console 접속 및 로그인.
- 화면 상단 네비게이션 바의 [프로젝트 선택] 드롭다운 클릭 ➡️ 팝업창 우측 상단의 [새 프로젝트(New Project)] 클릭.
- 프로젝트 이름:
Drill Rush입력. (위치/조직은 기본값으로 두어도 무방)
- [만들기] 버튼 클릭 후 프로젝트가 완전히 생성될 때까지 대기.
💡 1-2. 구글 계정 당 프로젝트 생성 갯수 제한 (Quota)
- GCP는 무한정 프로젝트를 만들 수 있는 것이 아닙니다. 구글 계정이나 결제 계정에 따라 기본적으로 생성할 수 있는 프로젝트 수(보통 10~30개 내외)에 제한이 있습니다.
- 남은 갯수 확인법: '새 프로젝트 만들기' 화면 상단에서 구글 계정에 남은 잔여 프로젝트 할당량(Remaining Project Quota)을 직접 확인할 수 있습니다.
- 한도 초과 시: 제한에 도달하면 '할당량 관리(Manage Quota)' 링크를 통해 구글에 프로젝트 한도 증가를 요청하는 양식(Form)을 제출해야 합니다. 1인 개발 규모에서는 금방 도달할 수치는 아니니 "이런 제한이 있다" 정도만 메모해 두세요!
🔐 STEP 2. OAuth 동의 화면 (Consent Screen) 구성
- 생성한
Drill RushGCP 프로젝트가 선택된 상태에서 ➡️ [API 및 서비스] ➡️ [OAuth 동의 화면] 클릭.
- User Type:
외부(External)선택 후 만들기.
- 필수 입력 항목:
- 앱 이름:
Drill Rush(실제 유저에게 노출됨) - 사용자 지원 이메일: 내 이메일 주소
- 개발자 연락처 정보: 내 이메일 주소
- 나머지(범위, 테스트 사용자 등)는 전부 빈칸으로 두고 [저장하고 계속] 연타.
- 🚨 중요: 대시보드에서 [앱 게시(Publish App)] 버튼을 눌러 반드시 '테스트' 상태를 '프로덕션'으로 변경할 것! (안 하면 테스터 외 로그인 불가)
🔑 STEP 3. 사용자 인증 정보 (OAuth 클라이언트 ID) 생성
💡 핵심 포인트: 안드로이드는 반드시 출시용(App Signing)과 테스트용(Upload Key) 2개의 SHA-1 인증서를 모두 등록해야 개발 중에도 기기에서 로그인이 가능함.
- [API 및 서비스] ➡️ [사용자 인증 정보] ➡️ 상단 [+ 사용자 인증 정보 만들기] ➡️ [OAuth 클라이언트 ID]
- 애플리케이션 유형:
Android
- 패키지 이름:
com.YourCompany.DrillRush(유니티 Player Settings와 동일하게)
- SHA-1 인증서 지문 입력 (2개 각각 생성):
- ① 출시용 ID 만들기: 구글 플레이 콘솔 ➡️ [설정] ➡️ [앱 무결성] ➡️ [앱 서명] 탭의 '앱 서명 키 인증서' SHA-1 복사.
- ② 테스트용 ID 만들기: 유니티 빌드 시 사용하는 Keystore의 SHA-1을 추출해서 복사.
⚙️ STEP 4. 구글 플레이 콘솔 (Play Console) 연동
- Play 콘솔 ➡️ [Play 게임즈 서비스] ➡️ [설정 및 관리] ➡️ [설정] 이동.
- [사용자 인증 정보] 탭 ➡️ [사용자 인증 정보 추가] 버튼 클릭.
- GCP 프로젝트 연결 메시지가 뜨면, Step 1에서 만든
Drill Rush프로젝트를 선택해 연결.
- 유형을
Android로 선택 후, 방금 GCP에서 만든 출시용 OAuth 클라이언트(App Signing SHA-1)를 선택하고 저장.
🏆 STEP 5. 리더보드(Leaderboards) & 업적(Achievements) 생성
5-1. 리더보드 (최고 깊이 경쟁)
- Play 콘솔 ➡️ [Play 게임즈 서비스] ➡️ [리더보드] ➡️ [리더보드 만들기]
- 이름:
Max Depth
- 형식:
숫자/ 정렬 순서:큰 값이 더 좋음(더 깊이 내려갈수록 랭킹 상승)
- 아이콘: 512x512 픽셀 아이콘 등록 후 저장.
5-2. 업적 (달성 목표)
- Play 콘솔 ➡️ [Play 게임즈 서비스] ➡️ [업적] ➡️ [업적 만들기]
- 이름/설명: (예:
마그마 도달!,설명: Camp 2 마그마 기지에 도달했습니다.)
- 상태:
공개/ 증분 업적 여부: 단순 도달은아니오.
- 아이콘 등록 후 저장.
🧩 STEP 6. Unity GPGS 플러그인 연동 및 C# 초기화
6-1. XML 리소스 유니티에 넣기
- Play 콘솔 리더보드/업적 탭에서 상단의 [리소스 받기] 클릭 후 나오는 XML 코드 전체 복사.
- 유니티로 이동 ➡️ 상단 메뉴 [Window] ➡️ [Google Play Games] ➡️ [Setup] ➡️ [Android Setup]
Resources Definition텍스트 박스에 복사한 코드를 붙여넣고 [Setup] 클릭.
6-2. C# 기본 초기화 코드 뼈대
using UnityEngine; using GooglePlayGames; using GooglePlayGames.BasicApi; public class GPGSManager : MonoBehaviour { void Start() { // 1. GPGS 초기화 및 활성화 PlayGamesPlatform.DebugLogEnabled = true; PlayGamesPlatform.Activate(); // 2. 로그인 시도 SignInToGooglePlay(); } public void SignInToGooglePlay() { PlayGamesPlatform.Instance.Authenticate(SignInInteractivity.CanPromptAlways, (result) => { if (result == SignInStatus.Success) { Debug.Log("GPGS 로그인 성공!"); } }); } // 리더보드 점수 보고 public void ReportScoreToLeaderboard(long score) { if (Social.localUser.authenticated) { Social.ReportScore(score, GPGSIds.leaderboard_max_depth, (bool success) => { Debug.Log("리더보드 업데이트: " + success); }); } } // 리더보드 UI 띄우기 public void ShowLeaderboardUI() { if (Social.localUser.authenticated) { PlayGamesPlatform.Instance.ShowLeaderboardUI(GPGSIds.leaderboard_max_depth); } } }