SDK 설정하기

개인화 오퍼를 사용하기 위해 필요한 SDK 설정에 대해 알아봅니다. 본 페이지는 다음과 같이 구성되어 있습니다.

  • 사전 요구사항

  • 관련 컨트롤러, 클래스, 메소드

  • 유니티 에디터에서 SDK 설정하는 법

  • 오퍼 UI 구성 요소와 스크립트

들어가기 전에

컨트롤러, 클래스, 메소드 소개

TPPersonalizedOfferControllerShowOfferById 혹은 ShowLatestOffer메소드 호출 시, 각각의 플레이어(즉, player_uuid)에 해당하는 오퍼를 동적으로 불러와 Scene에 보여줍니다.

  • ShowOfferByIdShowLatestOfferTPPersonalizedOffer 클래스의 메소드입니다.

  • TPPersonalizedOffer는 텐투플레이 개인화 오퍼와 AI 인게임 상점 출력 기능을 위한 클래스입니다.

상기 구성요소들(즉, 컨트롤러, 클래스, 메소드)은 개인화 오퍼와 AI 인게임 상점에서 공통으로 사용됩니다.

유니티 에디터에서 설정하기

오퍼가 제대로 보이게 하려면 먼저 유니티 에디터 설정과 스크립트 작업이 필요합니다.

  1. 유니티 에디터에서 Assets/TentuPlay/TPPersonalizedOfferTemplates에 있는 TPPersonalizedOfferController.prefab 위치를 확인합니다. TPPersonalizedOfferController.prefabTPPersonalizedOfferController.cs 스크립트를 컴포넌트로 갖고 있습니다.

    image (10)
    image (12)
  2. TPPersonalizedOfferController 게임 오브젝트를 Scene에 추가합니다.

    image (26)
  3. 아래의 예시 코드와 같이 tpPersonalizedOfferController GameObject 파라미터 값을 활용하여 ShowOfferById 혹은 ShowLatestOffer를 호출합니다.

    예시 코드
    public void ShowPersonalizedOffer()
        {
            TPPersonalizedOffer myTPOffer = new TPPersonalizedOffer();
            StartCoroutine(
                myTPOffer.ShowOfferById(tpPersonalizedOfferController, player_uuid, "en", offer_id, (response => { })));
        }

    자세한 예시는 Assets/ShingGoongDemo/Scripts/TentuplayRelated/TentuPlayCRMPlayerController.csAssets/ShingGoongDemo/Scripts/TentuplayRelated/MailBoxOpen_offer.cs에서 확인하세요.

  4. 이제 지정된 조건에서 예시 오퍼가 게임 화면에 나타납니다.

    image (13)
    개인화 오퍼가 우편함에 생성된 모습
    image (15)
    개인화 오퍼가 화면에 노출된 모습

개인화 오퍼와 AI인게임 상점 오퍼는 OfferInfo.offerType으로 구분됩니다.

오퍼 UI

개인와 오퍼의 UI 구성요소에는 무엇이 있으며 유니티내 어디에 위치해 있는지 살펴봅니다.

UI 템플릿

ShowOfferById 혹은 ShowLatestOffer가 호출되면 Scene에 있는 TPPersonalizedOfferController(TPPersonalizedOfferController.ShowOffer)의 child로 TentuPlayManualOffer_landscape 혹은 TentuPlayManualOffer_portrait가 생성됩니다.

콘솔에서 입력한 이미지가 OfferImage의 Texture/Raw Image가 됩니다.

image (16)
TPPersonalizedOfferController의 child로 TentuPlayManualOffer_landscape 생성된 모습

UI 템플릿 구성요소

개인화 오퍼 UI의 대표적인 프리팹인 TentuPlayManualOffer_landscape.prefab에 대해 좀 더 자세히 알아보겠습니다.

06 TentuPlayManualOffer landscape gui

  • MessageController: 쪽지 오픈 및 닫기를 위한 스크립트

  • TentuPlayManualOffer: 개인화 오퍼를 위한 텐투플레이 스크립트

07 TentuPlayManualOffer landscape scripts

메시지 이미지(OfferImage)

GUI 스크립트

08 OfferImage gui

콘솔에 이미지 사이즈가 지정(580x896px)되었더라도 OfferImage에서 사이즈를 새로 지정할 시 그 사이즈로 맞춰집니다.

방향별로 화면 기본 사이즈는 다음과 같습니다.

  • TentuPlayManualOffer_landscape: 640x400

  • TentuPlayManualOffer_portrait: 400x640

On Click()TentuPlayManualOffer.GoToOfferEvent

09 OfferImage Scripts

닫기 버튼(CloseButton)

GUI 스크립트

10 CloseButton gui

On Click()TentuPlayManualOffer.CloseOfferEvent

11 CloseButton scripts

오늘 보지 않기 체크박스

GUI 스크립트

12 Toggle gui

On Value ChangedTentuPlayOffer.CheckDoNotShowToday

11 CloseButton scripts

더이상 보지 않기 버튼으로 바꿀 경우 MarkDoNotShowAgain 메소드를 이용하도록 수정하여 사용합니다.

오퍼 검증하기

텐투플레이는 보안의 차원에서 오퍼 검증 API를 제공합니다. 오퍼 ID 인증과 무결성 확인을 통해 오퍼를 전송하는 과정에서 생길 수 있는 위변조나 데이터 손상을 방지할 수 있습니다.

자세한 내용은 오퍼 검증 API를 참고하십시오.