Sprite 폰트 교체 함수 설명
이 문서에서는 스프라이트 시트를 사용하여 기존에 생성된 스프라이트 폰트 자산을 교체하는 font_replace_sprite
함수에 대해 설명합니다. 각 하위 이미지는 개별 기호 또는 문자를 나타냅니다. 이 함수의 주요 요소와 추가 활용 예제들을 쉽게 설명하겠습니다.
함수 설명
정의
font_replace_sprite
함수는 스프라이트 폰트를 교체하는 기능을 제공합니다. 이때 각 문자는 스프라이트 시트의 다른 하위 이미지로 지정됩니다.
인수 설명
인수 | 타입 | 설명 |
---|---|---|
ind |
Font Asset | 교체할 폰트의 인덱스 (모든 참조는 새로운 폰트를 가리킵니다). |
spr |
Sprite Asset | 폰트를 기반으로 추가할 스프라이트입니다. |
first |
Real | 사용할 첫 번째 문자에 대한 인덱스입니다. |
prop |
Boolean | 각 문자의 주위에 공백을 제거할지 여부 (false일 경우 모노스페이스 폰트가 됨). |
sep |
Real | 각 문자 사이의 간격 (0이면 문자들이 닿음). |
반환값
- N/A (해당 함수는 값을 반환하지 않음).
사용 예제
다음 예제는 글로벌 변수가 "Font"로 인덱스된 폰트를 외부 이미지 파일에서 새로운 폰트 자산으로 교체하는 코드입니다.
font_replace_sprite(global.Font, working_directory + "Sprites/spr_Font.png", ord("!"), true, 2);
중요한 사항
UTF8
맵 번호는 첫 번째 문자를 사용합니다. 일반 폰트와 마찬가지로 "!"부터 시작합니다.- 문자 맵에는 공백이 없어야 합니다. 예를 들어
'.'
와'0'
를 사용하고/
를 사용하지 않으면,/
를 포함하거나 두 문자 사이에 빈 하위 이미지를 남겨야 합니다. - 비율이 있는 폰트는 문자의 실제 너비에 따라 간격이 조정되며, 비율이 없는 폰트는 하위 이미지의 너비에 따라 조정됩니다.
적용 및 활용 예제
예제 1: 기본 스프라이트 폰트 교체
font_replace_sprite(global.Font, "Images/myFontSprite.png", ord("A"), true, 1);
이 코드는 global.Font
를 "Images/myFontSprite.png"로 교체하면서 'A' 문자를 첫 글자로 설정합니다.
예제 2: 모노스페이스 폰트 설정
font_replace_sprite(global.Font, "Images/monoFontSprite.png", ord("!"), false, 0);
이 예제에서는 모노스페이스 폰트를 설정하여 모든 문자의 간격을 제거합니다.
예제 3: 커스텀 문자 간격 설정
font_replace_sprite(global.Font, "Sprites/special_font.png", ord("."), true, 5);
여기서는 각 문자 사이의 간격을 5로 설정하여 여유 공간을 둡니다.
결론
font_replace_sprite
함수를 활용하면 자신만의 스프라이트 폰트를 커스터마이즈하여 게임의 그래픽 품질을 향상시킬 수 있습니다. 주의할 점과 예제를 참고하여 효율적으로 활용하시기 바랍니다.