유니티

[유니티] Localization 다중언어 대응

VicGameStudio_Choi 2022. 11. 4. 15:07

이번 시간에는 Localization (지역화?) 에 대해서 알아보겠다.

Localization 을 하는 이유는 대한민국 뿐만 아니라, 다른 국가에도 앱을 지원하게 될 경우에 번역기 되어야하기 때문이다.

 

Localization 방법은 여러가지가 있겠지만, 오늘은 유니티에서 제공해주는 Localization 패키지에 대해서 알아보자

 

 

파일 입출력을 통해서도 구현이 가능한데.. 간략하게 csv 파일로 언어 시트를 만들어서 입출력해주면 간단하게 구현 가능하다. 이 내용은 다음에 기회되면 다루어보겠다.

 

또한, 구글 시트를 통해서 localization 을 구현하려는 분들은 아래 링크를 참고 바란다.

 

https://velog.io/@uchang903/%EC%9C%A0%EB%8B%88%ED%8B%B0-%EB%8B%A4%EC%A4%91-%EC%96%B8%EC%96%B4-%EC%A7%80%EC%9B%90%EB%A1%9C%EC%BB%AC%EB%9D%BC%EC%9D%B4%EC%A7%95Localization

 

[유니티] 다중 언어 지원/로컬라이징(Localization)

자신의 게임을 글로벌로 출시하기 위해서는 여러 국가의 언어를 지원해주어야 한다.이럴 때 버튼 하나로 게임의 전체 텍스트가 바뀌는 기능을 사용하면 간단하게 지원 가능하다.구글 스프레드

velog.io

https://sonsazang.tistory.com/18

 

[Unity-Localization] 유니티 현지화 구현 (다국어 번역)

서론 최근 회사에서 진행하게 될 프로젝트 중 새롭게 요청된 기능 중 하나인 현지화(Localization) 기능 - 다국어 번역 관련해서 구현하게 된 방향과 추후에 지식공유를 위한 정리 글입니다. 프로젝

sonsazang.tistory.com

 


 

유니티 Localization

 

참고 : 유니티 Localization 을 사용할 경우, apk 용량이 늘어난다는 소문이.. 그래서 지금 빌드 중이라... Localization 진행 캡쳐를 못 찍고 있는 상태다... 한 번 기다려보자..

Localization 추가했다고 빌드 시간이 15분.. ㄷㄷ?

 

와.. 원래 30mb 였던, 내 apk 사이즈가 40mb 로 증가했다 --;;

 

 

여튼, 위의 내용을 참고하여, apk 사이즈에 저해받지 않는다면, Localization 을 사용해보자...

신기술인만큼 편한점은 확실히 존재한다.

 

 

[ Window > Package Manage > Localization 검색 후 설치 ] 

 

그런 다음, Language 파일을 저장할 폴더를 생성해준다.

 

나는 Language 라는 폴더를 생성했다. 폴더 이름은 딱히 상관없는 것 같다. ㅎ

 

 

[ Edit > Project Settings > Localization ] 

 

 

[ Create ] 를 눌러준다.

 

 

그러면 , 우리는 Localization Settings 에 대한 .asset 을 저장할 위치를 정하게되는데 

나는 아까 생성한 Langauge 폴더를 선택했다.

 

[ Local Generator ] 클릭

 

나는 한국어와 영어를 지원하기 때문에 아래와 같이 체크 후, [ Generate Locales ] 클릭

 

생성한 Langauge 데이터를 저장할 위치를 선택해야하는데, Language 폴더에 저장한다.

 

 

Specific Locale Selector 는 기본 언어 설정이다.

Project Locale identifier 는 프로젝트 기본 언어 설정이다.

난, 한국어가 기본이기 때문에 아래 처럼 설정했다.

 

 

이제 국가에 맞는 언어를 설정해보자.

 

[ Window > Asset Management > Localization Tables ] 

[ Names ] 에 생성할 테이블 이름을 넣는다. 난 Language 라고 넣고 Create 로 생성해주었다.

 

키를 넣어준다. 키는 우리가 유니티 에디터에서 단어를 사용할지 선택하는 키이고

언어에 따른 value 를 설정해줄 수 있다.

 

 

이제 한번 사용해보자

 

Text 컴포넌트에 우클릭을 하자.

Localize 를 클릭

 

[ String Reference ] 의 속성을 클릭하면 다음처럼 만들어주었던 Language 테이블에 Key 들이 출력된다.

그 중에 아무거나 하나를 눌러서 넣어주면 적용 끝!

 

근데, 위에 처럼 안뜨는 경우가 있다... 사실 내가 그랬다 --;;

 


https://forum.unity.com/threads/localization-not-finding-string-reference-in-editor.1295262/

 

Localization not finding String Reference in editor

Hi. Unity version I'm using: 2021.3.4f1 Localization Package Version: 1.3.2 When adding a Localize String Event to my text, I select a String Table...

forum.unity.com

 

String Search Picker 를 해제하면 잘된다. ㄷㄷ

 

 

게임 시작을 누르면 Game 탭에서 오른쪽 상단에 Korean English 가 나와서 변경해서 테스트가 가능하다.

 

 

끝..