GameMaker에서의 폰트 정의 및 활용 방법
GameMaker에서 폰트를 정의할 때, 포함할 문자 범위를 설정할 수 있습니다. 폰트 자체는 법적 이유로 게임에 포함되지 않고, 폰트의 이미지가 텍스처 페이지에 포함되어 게임에서 사용됩니다. 따라서 사용해야 할 문자의 수를 최소화하고 게임에서 필요한 문자 범위만 지정하여 텍스처 메모리를 최적화하는 것이 중요합니다.
font_get_last
함수
이 함수는 게임에 폰트 자산을 추가할 때 사용된 마지막 문자(UFT8 값)를 찾는 데 사용됩니다.
문법
font_get_last(ind);
매개변수
매개변수 | 타입 | 설명 |
---|---|---|
ind | 정수 | 확인할 폰트의 인덱스 |
반환값
- 함수는 지정된 폰트 인덱스에서 마지막 문자의 ASCII 값을 반환합니다.
예제
아래 코드는 "fnt_Main"이라는 폰트 인덱스에서 폰트 범위의 마지막 문자의 ASCII 값을 저장합니다.
num = font_get_last(fnt_Main);
폰트 최적화에 대한 활용 예제
게임에서 사용되는 다양한 문자들로 인해 폰트 리소스의 최적화가 필요합니다. 아래는 폰트 최적화를 위한 몇 가지 응용 예제입니다:
예제 1: 특정 문자만 포함하기
게임이 특정 언어(예: 영어)만 지원할 경우에는 다음과 같이 문자를 최소화 할 수 있습니다.
fnt_Main = font_add("myFont.ttf", 16, true, false, 0, 0, "abcdefghijklmnopqrstuvwxyz");
위 코드에서는 알파벳 소문자만 포함된 폰트를 추가하고 있습니다.
예제 2: 다양한 언어 지원
여러 언어를 지원해야 하는 경우 특정 문자 범위를 설정하여 각 언어에 필요할 모든 문자만 지정할 수 있습니다.
fnt_Main = font_add("myFont.ttf", 16, true, false, 0, 0, "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz가나다라마바사");
이 예제에서는 한글과 영문 대문자 및 소문자를 모두 포함하도록 설정하였습니다.
예제 3: 게임 내 UI 최적화
게임 내 사용자 인터페이스(UI)를 설계할 때, 사용될 텍스트의 종류에 따라 폰트를 나누어 생성할 수 있습니다.
// 게임 내 제목용 폰트
fnt_Title = font_add("myFont.ttf", 24, true, true, 0, 0, "Your Game Title");
// 게임 내 버튼용 폰트
|Options|
|---|
이렇게 함으로써 각 폰트를 사용해야 할 필요가 있는 경우에만 접근하게 되어 메모리 사용량을 줄일 수 있습니다.
요약
- 폰트를 정의할 때는 필요한 문자 범위를 최소화하여 텍스처 메모리를 효율적으로 사용할 수 있습니다.
font_get_last
함수를 이용해 마지막 문자의 ASCII 값을 얻을 수 있습니다.- 필요에 따라 폰트를 나누어 추가하고 관리하여 최적화된 게임 개발이 가능합니다.
© Copyright YoYo Games Ltd. 2021 All Rights Reserved