Unity 매뉴얼: 스크립팅 API (2022.3)
개요
Unity의 스크립팅 API는 게임 개발자들이 Unity Engine에서 기능을 구현하는 데 사용하는 다양한 메서드와 클래스들을 제공합니다. 이 매뉴얼에서는 Unity IAP(인앱 구매)를 통한 크로스 플랫폼 구매 처리 방식에 대해 설명합니다.
Unity IAP와 크로스 플랫폼 기능
Unity IAP는 여러 플랫폼에서 인앱 구매를 처리할 수 있는 기능을 제공합니다. 이를 통해 개발자는 구매를 위한 공통적인 절차를 작성할 수 있으며, 각 플랫폼에 특화된 기능도 활용할 수 있습니다.
스토어 확장
Unity IAP의 특수 기능 중 하나는 스토어 확장입니다. 일반적인 크로스 플랫폼 구매 과정과는 다른 추가적인 기능이 필요한 경우에 사용됩니다. 이는 Unity IAP가 성공적으로 초기화된 후, IExtensionProvider
를 통해 접근할 수 있습니다.
중요 포인트: - 스토어 확장을 사용하더라도 플랫폼 별 특성을 고려한 컴파일이 필요하지 않습니다. - 사용하지 않는 플랫폼에서는 무효화된 작업으로 처리됩니다.
예제: Receipt 갱신하기
아래의 코드 스니펫은 Apple의 서버에서 앱 영수증을 갱신하기 위한 메커니즘입니다. 이 코드 조각은 모든 Unity IAP 플랫폼에서 컴파일 가능하며, Apple 플랫폼이 아닌 경우에는 실행되지 않습니다.
/// <summary>
/// Called when Unity IAP is ready to make purchases.
/// </summary>
public void OnInitialized (IStoreController controller, IExtensionProvider extensions)
{
extensions.GetExtension<IAppleExtensions> ().RefreshAppReceipt (result => {
if (result) {
// Refresh finished successfully.
} else {
// Refresh failed.
}
});
}
적용 사례
- 게임에서 새로운 아이템 구매하기
- 플레이어가 게임 내에서 새로운 아이템을 구매할 때, Unity IAP를 통해 간편하게 처리할 수 있습니다.
- 구독 서비스 관리하기
- 구독 모델을 사용하는 게임에서 Unity IAP를 통해 사용자 구독을 관리할 수 있습니다.
- 크로스 플랫폼 지원
- Unity IAP는 Android와 iOS를 포함한 다양한 플랫폼에서의 구매를 동시에 지원하여, 코드의 재사용성을 높입니다.
결론
Unity의 스크립팅 API는 인앱 구매를 포함한 다양한 기능을 통합할 수 있는 강력한 도구입니다. 스토어 확장 기능을 통해 각 플랫폼에 맞는 구매 과정을 간편하게 처리할 수 있으며, 코드의 효율성을 높일 수 있습니다. Unity IAP의 활용은 게임 개발자에게 중요한 요소입니다.