본문 바로가기

유니티 이야기19

[Unity] 2022 Codeless 인앱 결재(IAP) Tutorial (1) 구글에서 운영 중인 모바일 게임 업데이트를 하다가 결재 라이브러리를 버전 4로 업그레이드하란 경고 문구를 보고 구현에 보지 못했던 코드리스 인앱 결제로 구현해 보고 얻게 된 정보로 튜토리얼을 작성해보겠습니다. 결재 라이브러리 v4 관련 구글에서 별도의 SDK가 제공하지만 유니티 IAP 패키지와 충돌 문제가 있어 해당 버전이 포함된 IAP 버전(4.4.1)으로 설치하여 진행했습니다. 이번 포스팅에서는 유니티 프로젝트 설정하는 방법을 다룹니다. 1. 프로젝트 설정 Window > General > Services > In-AppPurchasing 유니티 서비스에 대한 초기 설정을 하지 않았다면 초기 설정부터 진행해야 합니다. ( 프로젝트 ID 생성, 어린이를 대상으로 하는 앱인지 확인합니다.) 조직 선택 후.. 2022. 8. 29.
[Unity] 대량의 엑셀데이터 유니티 인스턴스로 밀어넣기 게임을 만들다 보니 반복적인 데이터를 인스턴스화 된 스크립트에 입력해야 하는 경우가 있습니다. 몇 줄 정도는 수작업이 가능하지만 아이템 리스트 같이 대량의 데이터를 반복적으로 할당해야 하는 경우 난감한데요. 이럴 때 엑셀로 데이터를 정리해서 일괄적으로 밀어 넣는 방법을 작성해보겠습니다. 보통 정적인 데이터는 메모리 최적화 때문에 데이터가 필요할 때 스크립터블 오브젝트에서 데이터를 읽어가는데 이번 포스팅에서 작성되는 코드는 대량의 반복 데이터를 지속적으로 계속 참고해야 되는 경우에 고려해 볼만 한 것 같습니다. 예시 방향은 디아블로 2의 세트 아이템 리스트로 잡았습니다. 전제 조건은 세트 아이템의 수는 4개로 고정하고 각 아이템은 투구, 갑옷, 장갑, 신발 순으로 구조화해서 작성하였습니다. 혹 세트별로 숫.. 2022. 8. 28.
[Unity] json 직렬화 저장 및 읽어오기 + 암호화 (utf8) JSON이란 자바스크립트에 뿌리를 두고 있는 경량의 데이터 포맷입니다. 데이터가 표현될 때 클래스나 배열까지 표현이 가능하고 데이터 자체가 텍스트로 이루어져 있어 이해하기 쉽고 독립적이어서 게임 데이터를 저장할 때 자주 사용됩니다. 제가 사용하면서 느낀 장점은 데이터를 개별적으로 저장하는 번거로움이 없고 데이터 구조를 통으로 저장하고 읽어올 수 있으며 관련 유틸이 잘 만들어져 있어서 쉽게 사용할 수 있었습니다. 이런 이유로 대부분 프로그래밍 언어에서 Json 직렬화는 지원하고 있어 다른 언어 간에도 데이터를 이동시킬 수 있는 장점이 있습니다. 단점은 파일 자체가 텍스트고 체계가 있다 보니 파일을 열어서 읽어보면 내용 자체를 이해하고 수정이 가능합니다. 관련 기능을 유니티 API 문서를 참고해서 작성해 보.. 2022. 8. 27.
[Unity] CultureInfo를 통해 언어 설정 하기 기존 작성했던 유니티 Application.systemLanguage로 초기 언어를 설정하는 방법에 추가로 .Net에서 제공하는 CultureInfo를 통해 언어를 설정하는 방법을 작성해보겠습니다. 저의 경우 현지화해야 되는 언어가 유니티에서 제공하는 SystemLanguage에 없어서 이 방법으로 초기화 한 경험이 있습니다. 1. CultureInfo의 정보 속성 확인하기 해당되는 클래스를 사용하기 위해 System.Globalization, System.Threading 네임스페이스를 추가했습니다. 어떤 내용을 보여주는지 간단하게 확인하기 위해 일부 정보를 출력해 보았습니다. 아래는 초기 확인을 위한 스크립트 내용입니다. using System.Globalization; using System.Thr.. 2022. 8. 26.