목록창고/게임 개발 [Hidden] (86)
도드넷

유니티 안드로이드 C# 메일 보내기 - 버그 리포트 만들기. 1. 목표 : 사용자가 앱에서 보고자용 앱을 통해서 관리자에게 메일을 보낼 수 있게 만든다. 2. 보고자 전용 새로운 구글 메일 계정 만들기. 3. 해당 구글 계정설정 보안에서 App password 만들고 복사해놓기. https://myaccount.google.com/security?hl=en 4. 다음 코드 사용하기. 필요한 using 선언 using System; using System.IO; using System.Collections; using System.Collections.Generic; using System.Net; using System.Net.Mail; using System.Net.Security; using Syst..

유니티 안드로이드 앱 이름 현지화, 번역하는 방법. 0. 유니티 Localization 이라는 패키지를 이용할 수 도 있으나 개인적으로 유니티 패키지를 진심으로 혐오하므로간략하고 스크립트없는 깔끔한 현지화를 추구한다면 다음을 추천한다. 1. 목표 : 사용자의 디바이스 언어설정에 따라 설치한 앱의 이름을 다르게 표시해보자. 2. Assets\Plugins\Android 폴더에 res 라는 폴더를 만든다. 3. res 폴더에 values 라는 폴더를 만든다. 4. res 폴더에 values-언어코드 라는 폴더를 추가로 만든다. - 예 : values-ko (한글), values-ja (일본) 언어코드 참고 : https://www.w3schools.com/tags/ref_language_codes.asp 5..

ArgumentException: JSON parse error: Invalid escape character in string. Invalid escape character in string. 오류가 나는 이유? 해결법? JSON 파일을 객체로 복구할때 다음과 같은 오류가 발생했다. ArgumentException: JSON parse error: Invalid escape character in string. JSON 데이터 파일 -> 객체로 만들던중 데이터에 Invalid escape character 가 나타나서 작업을 수행하지 못했다는 의미이다. Invalid escape character란 무엇일까? 데이터 처리에 있어서 문자 자체로 해독하지 않고 다양한 문자와 조합되어 특수한 역할을 하는 특..

게임 디자인에 있어서 레벨 디자인이라는 것에 대한 개인적인 생각 & 고찰. 1. 레벨 디자인이란? - 플레이어가 경험할 수 있는 공간을 설계하는 것. 2. 레벨 디자인의 요소. [ 스토리, 환경, 목표 ] #1 스토리 (Story) 시나리오라고도 하며 레벨 디자인의 근간이 되는 요소다. 보통은 글, 간략한 스케치에 의해 구현되며 플레이어가 처한 상황및 배경을 서술한다. 이 스토리를 기반으로 게임 제작자/레벨 디자이너가 스토리가 서술하는 환경을 실제화하게 된다. #2 환경 (Enviroment) 스토리를 기반으로 각종 타일, 지형, 광원, 장식물, NPC등의 애셋의 적절한 조합과 배치로 플레이어가 경험하게될 유니크한 분위기나 상황을 실제로 연출한다. #3 목표 (Objective) 플레이어가 해당 공간에 ..

C# List 정렬하는 방법 오브젝트의 특정 값에 의한 C# 리스트(List) 오름차순 혹은 내림차순 정렬. Linq OrderBy를 이용해 List 오브젝트, 그 속성값으로 큰 숫자순, 작은 숫자순으로 정렬하는 방법. 낮은가격순, 높은가격순으로 객체 정렬하기? #1. Linq 참조. #2 Orderby 함수, 다음 코드를 사용. 새로운_리스트 = 목표_리스트.OrderBy(아무문자 => 아무문자.비교할값).ToList(); 위의 함수를 사용하면 낮은 가격순으로 정렬한다. (1,2,3,4...) 높은 가격순으로 정렬하고 싶으면? 리스트.Reverse(); :3

유니티 구글 플레이 로그인 Canceled? Releases signed by Google Play Credentials SHA-1 키 불일치 사건. WTF IS GOING ON?! (O_O)? 게임 출시에 앞서 많은 테스팅을 진행하던중 좀 뜬금없지만 기이한 상황이 벌어졌다. 상황/문제 유니티에서 빌드해서 직접 모바일 기기에 게임을 삽입해서 게임을 설치-실행하면 로그인이 잘되고 구글 플레이 클라우드 서비스도 잘 이용할 수 있다. 하지만 클로즈드 테스트, 인터널 테스트등으로 구글 플레이에서 게임을 다운로드, 설치하면 자동 로그인도 작동하지 않고 그에 따라 구글 플레이 클라우드 서비스를 이용할 수 없다. Anti-Piracy? (비허가 제3 경로 설치시 구글 플레이 서비스 이용불가) (Play Game Se..

유니티 모바일 게임에서 플레이어에게 구글 플레이 리뷰 요청하기. 유니티로 제작된 안드로이드 모바일 게임에서 플레이어에게 구글 플레이 레이팅/리뷰를 요청할수있다. #1 패키지 설치. https://developers.google.com/unity/packages#play_in-app_review #2 스크립트로 리뷰 요청하기. #3 구글 플레이 인앱 리뷰 요청은 다음과 같은 조건이 있다. 1. 반드시 구글 플레이를 통해 설치/소유한 앱이여야함. 2. 계정당 1회 이상 부를 수 없음. #4 불만 :: 답답한 API 이 API는 매우 기본적인 기능만한다. 플레이어가 실제로 리뷰를 했는지 안했는지도 안알랴준다. API가 플레이어가 어떤 행동을 했는지 아무런 반응, 콜백도 주지 않는다. 조건 불만족에 따른 기타 ..

유니티 모바일 게임 안드로이드 앱 자동 업데이트 기능 업데이트 체크 앱에서 구글 플레이 API를 통해 업데이트 실행하기. 앱실행시 자동으로 구글 플레이와 연동해서 업데이트가 가능한지 확인하고 업데이트 하도록 하기. #1 Play In-App Update 패키지 다운로드 https://developers.google.com/unity/packages#play_in-app_update 왜 구글 플레이 API 자체에 있지 않은지 의문스럽지만 패키지를 따로 다운로드하고 설치해야한다. (패키지 설치할때 언제나 백업만들고 진행한다.) #2 업데이트 스크립트 짜기. 1단계 : using 참조하기. 2단계 : 안드로이드용 업데이트 함수 만들고 시작 스크립트에 적절히 배치하기. 3단계 : 본격적으로 업데이트 함수 스크립..

유니티 구글 플레이 클라우드 데이터 저장 세이브,로드 구현하는 방법. 유니티~모바일 구글플레이 서버를 이용해 데이터(바이너리) 저장하는 방법. #1 사실 이 주제로 전에도 한번 글을 쓴적이 있었다. 링크 : https://dodnet.tistory.com/3862 문제는 구글 플레이 API가 진보를 거듭하면서 더이상 작동하지 않게되었다는거다. #2 유니티 모바일 게임 구글플레이 클라우드 데이터 저장 방법. 간단히 구글 플레이 클라우드 저장, 로드하는 과정을 써보면. 1단계 : 연결. 2단계 : 데이터 접근. 3단계 : 데이터 저장 및 불러오기. 이렇게 3과정으로 나뉜다. #3 게임 클라우드 저장 지원하기. 구글 플레이 콘솔에서 Play Game Services > Setup and management >..

유니티 IAP 인앱 구입, 인앱 구입 구글 플레이 아이템 구입 시스템 구축하는 방법. 인앱 광고와 더불어 게임을 통해 수익을 올릴 수 있는 좋은 방법중 하나인 인앱 구입, 아이템 구입을 구현하는 방법이다. 생각보다 쉬우니 차근차근 단계별로 따라하면 10분안에 구축이 가능하다. #1 프로젝트 백업 - 무언가 큰 사이즈의 패키지, 시스템을 도입하기전에 프로젝트를 통째로 백업해서 언제라도 롤백할 수 있도록 안전하게 저장하고 버전관리하는 모든 개발자의 필수-기본 덕목이다. #1 Project Settings > Services > In-App Purchasing 에서 유니티 인앱 구매 시스템 켜기. (Importing 완료후 유니티 재부팅.) #2 구글 플레이 콘솔에서 판매자 계정 (Payments profil..