IAP?
먼저 게임개발을 처음하거나, IAP라는 기능을 처음 사용해보는 개발자를 위해 간략하게 소개하고자 한다.
모바일환경에서 유저가 게임에 대한 대가를 지불하는 방식은 크게 2가지이다.
- 게임사가 정해놓은 금액을 지불하고 구매한다.
게임 내에 디스플레이되는 광고를 시청한다.
광고를 시청하는 부분의 경우, 구글에서 제공하는 admob이나 Unity AD같은 광고 모듈을 추가함으로서 사용가능하다. (이 부분에 대해서는 추후 기회가 될때 정리하겠다).
금액을 지불하는 것 역시 두 가지정도로 나눌 수 있을 것 같다.
a. 각 플랫폼별\(ex. 구글 스토어, 애플 스토어\)의 프로세스를 따라서 일정 금액을 지불하고 구매하는 것. -> 이때는 게임 전체의 금액일 것이다 b. 게임 내에 존재하는 상점에서 구매하는 것 -> 게임 아이템이나, 광고 그만보기와 같은 게임 내 상품일 것이다.
위 두 가지 모두 같은 과정으로 처리하면 될 것이라 생각할 수 있으나 사실 둘은 차이가 있다. 가장 큰 차이라고 한다면 1번은 스토어 플랫폼이 사용자에게 서비스를 지급하는 것이고, 2번은 게임사가 사용자에게 서비스를 지급하는 것이라고 설명가능하다.
이 차이에서 생겨난 용어가 바로 인앱결제(In App Purchase)라고 하며 이것을 줄인말이 IAP가 된다.
유니티 5버전 이전까지만 해도 이 IAP에 대한 개발 API가 제공되지 않았기 때문에 3rd party library(가장 유명한 것으로 prime31이 있다.)를 사용하여 전체 프로세스를 개발자가 개발했어야 했지만, 5버전들어 유니티 자체 API로 IAP를 제공하게 되었다.
그들이 이 라이브러리를 제공하면서 발표했던 가장 큰 컨셉은, '게임 이외의 코딩시간을 최소화'하는 것이었다. 실제 사용해보고 느낀점이지만 그 컨셉이 매우 잘 적용되어 있으며, 인디게임과 같이 적은 인원으로 개발하는 그룹에게 작업 스트레스를 줄여주고 서비스의 신뢰성을 높여주는 등 매우 긍정적인 효과를 가져다 주고 있다고 생각한다.