목차
- Megapack 이전
- 첫 번째 팩
- 두 번째 팩
- 유산
- Megapack의 목표
- 더 크고 더 나은
- 더 많은 언어 지원
- 스타일 변형
- 커닝 완성도
- 더 나은 품질 관리
- 더 쉬운 배포 및 유지보수
- 기준을 높이다
- 폰트 디자인 공부
- 사진 참고자료
- PIFO: 나의 픽셀 폰트 도구
- 작동 방식
- 사용된 크레이트
- 1단계: 폰트 시트 생성
- 2단계: 글리프 윤곽 만들기
- 3단계: 커닝 테이블
- 5단계: 내보내기
- 품질 테스트
- 배포
- 결론
Megapack 이전
- 2016년 Ikenfell 작업을 시작하면서 첫 번째 폰트 팩을 만들었음
- 2018년에 두 번째 팩을 출시했으며, 품질이 크게 향상되었음
첫 번째 팩
- 2016년에 12개의 폰트를 포함한 첫 번째 팩을 itch.io에 판매했음
- 당시에는 폰트 디자인 실력이 부족했지만, 인디 게임에서 많이 사용되었음
두 번째 팩
- 2018년에 두 번째 팩을 출시했으며, 40개의 폰트를 포함했음
- 커닝 테이블을 추가하고 다양한 엔진에 맞춘 형식으로 제공했음
- 인디 개발자들과 협력하여 게임 스크린샷을 사용해 홍보했음
유산
- 두 번째 팩은 매우 인기가 있었으며, Nintendo의 Cadence of Hyrule 같은 큰 게임에서도 사용되었음
- Love Conquers All Games의 Get in the Car, Loser에서도 여러 폰트를 사용했음
Megapack의 목표
- Ikenfell 출시 후 번아웃 상태였지만, Rust 프로그래밍 기술을 계속 향상시켰음
- 더 큰 폰트 팩을 만들 계획을 세웠음
더 크고 더 나은
- 이번에는 100개의 폰트를 목표로 했으며, 다양한 게임 장르에 맞는 폰트를 만들고자 했음
더 많은 언어 지원
- 이전 팩은 ASCII 문자만 지원했지만, 이번에는 EFIGS(영어, 프랑스어, 이탈리아어, 독일어, 스페인어)를 지원하도록 확장했음
스타일 변형
- 각 폰트가 다양한 크기와 굵기를 지원하도록 하여 스타일적 일관성을 유지하면서도 변화를 줄 수 있도록 했음
커닝 완성도
더 나은 품질 관리
- 폰트의 전체 품질을 쉽게 평가할 수 있는 방법을 도입했음
더 쉬운 배포 및 유지보수
- 업로드 및 배포 과정을 자동화하여 오류를 줄이고 효율성을 높였음
기준을 높이다
- 폰트 디자인을 공부하고 많은 참고자료를 수집했음
폰트 디자인 공부
- Richard Poulin의 "Design School: Type" 책을 통해 폰트 디자인을 공부했음
사진 참고자료
PIFO: 나의 픽셀 폰트 도구
- 픽셀 폰트를 만들기 위해 Rust로 PIFO라는 도구를 개발했음
작동 방식
- PNG 타일 시트와 설정 파일을 사용하여 폰트를 생성하고, 자동으로 커닝 쌍을 계산하여 TTF 파일로 내보냄
사용된 크레이트
- clap, image, rayon, serde, glyph-names, ab-glyph, crunch 등을 사용했음
1단계: 폰트 시트 생성
- 타일 시트와 설정 파일을 사용하여 폰트를 생성함
2단계: 글리프 윤곽 만들기
- 픽셀을 클러스터로 그룹화하고, 윤곽을 생성하여 TTF 글리프로 변환함
3단계: 커닝 테이블
- 수동 및 자동 커닝을 통해 커닝 테이블을 생성함
5단계: 내보내기
- TTF 파일, 타일 시트, 압축된 텍스처 아틀라스로 폰트를 내보냄
품질 테스트
배포
결론
- 2023년 12월에 175 픽셀 폰트 Megapack을 출시했으며, Rust로 도구 체인을 만들어 폰트를 생성, 품질 테스트 및 배포했음
GN⁺의 정리
- 이 글은 픽셀 폰트 디자인과 제작 과정에 대한 상세한 설명을 제공함
- Rust를 사용하여 폰트 생성 도구를 개발하고, 자동화된 커닝 및 품질 관리 시스템을 구축한 것이 흥미로움
- 픽셀 폰트 디자인에 관심 있는 사람들에게 매우 유용한 정보가 될 것임
- 비슷한 기능을 가진 다른 프로젝트로는 FontForge와 Glyphs가 있음