본문 바로가기

게임 개발/기획

로컬라이징(국가에 따른 언어)을 위한 DB 작성

로컬라이징(국가에 따른 언어)을 위한 DB 작성

요즘 게임들은 대부분 전세계에 판매하기 위해 다양한 언어를 지원한다.

 

그렇다면 게임을 만들 때 각 국가에 맞게 한 단어에 여러 국가의 언어가 필요하다.

그럴 때마다 게임의 String 데이터들을 일일이 다 바꾸는 것이 아니라 게임 속 String 데이터에는 어떤 데이터가 들어가야할지 명시만하고, 실제로 들어가야하 할 데이터는 게임 데이터 파일로 관리하는 것이다.

 

이러한 이유는 유지보수(관리)가 편리하며, 타 국가의 언어로 번역 시 외주를 맡겨야할텐데,

해당 경우에 내부 데이터와 분리하여게임 데이터를 안전하게 보호할 수 있다.

 


DB 작성

먼저, [REDACTED] 라는 게임의 메인 화면을 가져와보았다.

https://www.gameuidatabase.com/uploads/REDACTED11102024-021644-9297_thumb.jpg

필자는 이 게임의 내부 구조를 알 수 없기 때문에 간단하게 해당 UI의 String 데이터를 임시로 할당하였다.


이번 글에서 말하고자 하는 핵심적인 내용은 바로 이것이다.

각각 하나의 데이터로 각 언어에 해당하는 단어를 저장하고, 언어 설정에 따라 해당 데이터를 교체하는 것이다.

아래 예시는 영어 데이터인 11번을 불러와서 글자를 적용한다는 것을 표현한 이미지이다.

 

그렇다면 게임에는 RPG 게임같은 경우에는 정말 셀 수도 없는 String 데이터가 있을텐데, 11, 12, 13 과 같이 아무 규칙 없이 관리하는 것은 힘들 것이다.

 

그렇기 때문에 데이터를 효과적으로 관리할 수 있는 분류를 생성한다.

이번 글에서는 주분류, 부분류, 세부 분류 이렇게 세 개로 나누겠다.

위에서 String_1_1_1 데이터의 의미는 '메인 로비에서 메인 화면에 관한 String 데이터 중 1번 째'의 데이터를 의미한다.

그 후에는 언어 설정에 맞는 데이터만 가져와서 넣으면 자동으로 언어에 맞게 변경된다.

 

그리고 게임의 TextBox에는 직접적인 String 데이터가 아닌, 어떤 데이터 값이 들어갈 것인지를 넣어야한다.

위 시트가 완성된 후에는 각 설정에 맞게 알아서 들어갈 수 있게 할 수 있기 때문이다.


그럼 이번에는 인게임에서 사용되는 텍스트까지 간단하게 실습해보겠다.

 

먼저 UI의 각 TextBox에 들어갈 String_ID는 다음과 같다.

https://www.gameuidatabase.com/uploads/REDACTED11102024-021644-58830.jpg

그럼 데이터는 아래와 같이 작성하면 될 것이다.

 

'게임 개발 > 기획' 카테고리의 다른 글