본문 바로가기

프로그래밍/Unity 3D

[Unity3D] 유니티에 구글 업적 추가하기

[Unity3D] 유니티에 구글 업적 추가하기



유니티에서 GooglePlayGames 플러그인을 추가해서 사용중이시라면 간단하게 구글 업적을 사용할 수 있습니다.

이 포스팅은 업적 추가에 대한 내용이 헷갈리거나 잘 생각이 나지 않을 때 바로 참고할 수 있도록 작성했습니다.

구글 플레이 게임 플러그인을 사용중이시며 앱이 게임서비스에 연동 되이었다는 가정 하에 작성합니다.

이 포스팅은 2017.11.29 에 작성 되었습니다.


1. 구글 플레이 콘솔 -> 게임 서비스 -> 업적


2. 새 업적 추가


3. 업적 내용 작성 후 임시보관함에 저장

- 작성된 업적은 삭제가 불가능하므로 삭제를 원할 시 수정 후 다른 내용으로 재사용 해야 합니다.


4. 리스트에서 출시 준비 확인 -> 왼쪽 최하단 게임 출시 메뉴 -> 변경사항 출시



5. 업적 리스트 아래 '리소스 받기' 클릭

나오는 내용을 전체 복사합니다.


6. 유니티에서 Window -> Google Play Games -> Setup -> Android setup 에서 리소스 붙여넣기


Setup 클릭시 Assets 디렉토리에 GPGSIds.cs 파일이 생성됩니다.

여기서 static class GPGSIds가 생성되고 업적의 ID가 string 변수로 선언됩니다. Setup을 클릭하기 전에 클래스 명을 변경 해도 됩니다.


7. GPGIDs.cs 에서 업적 ID 변수명 확인하기



8. 적절한 시점에 업적 달성 코드 추가하기


Social.ReportProgress(업적 ID , 달성도 0~100f , 콜백함수);


위에서 확인한 업적 ID를 입력합니다. 달성도를 입력합니다. 단계별 업적이 아니라면 100f를 입력하시면 됩니다. 콜백함수는 System.Action<bool> 입니다. bool을 매개 변수로 받는 함수를 콜백함수로 설정 가능하다는 말입니다. 아래처럼 바로 콜백함수를 작성하여 사용 하면 편리합니다.



bool 인자가 성공 여부를 전달해줍니다. bool 인자를 갖는 함수를 만들어서 호출해도 됩니다.

콜백함수가 없으면 null을 입력합니다.