소개
Adventure Game Studio(이하 AGS)는 무료 어드벤쳐 게임 제작툴입니다. 고전 포인트 앤 클릭 방식의 어드벤쳐 게임 제작에 특화된 제품으로 영미권에서는 아직도 사랑받고 있습니다. 그러나 애석하게도 에디터는 유니코드를 지원하지 않을 뿐더러 지원 비트맵 폰트도 256자 제한이 되어 있던 터라 한중일을 비롯한 국가들에서는 사용이 어려워 관심대상이 되지 못했습니다. 국내 커뮤니티인 네이버 카페 Korea Adv에서는 AGS의 공개된 소스코드를 편집해 한글출력을 성공했다는 게시물이 있습니다만, 늅늅한 일반인들이 시도할 수 있는 것은 아니었지요.
그러던 와중 공식포럼에 2015년 5월 25일(
http://www.adventuregamestudio.co.uk/forums/index.php?topic=52207)에 일본의 프로그래머이신 birthggd(bggd)님께서 AGS 플러그인인 AGSBMFontRenderer를 공개하셨습니다. 이를 통해 비트맵 폰트를 사용해서 UTF-8 텍스트를 출력하는 것이 가능해 졌습니다. 여기서 소개하는 것은 그에 대한 내용입니다.
준비
3.3.3버전 이상의 AGS
AngelCode님의 Bitmap Font Generator로 생성한 BMFont
birthggd(bggd)님의 AGSBMFontRenderer.dll
UTF-8을 지원하는 텍스트 편집기(AGS의 텍스트 편집 기능은 UTF-8을 미지원합니다.)
시스템 로캘을 English(United State)로 변경(buildEXE는 시스템 로캘에 영향을 받지 않습니다.)
방법
Ⅰ. 다운로드한 AGSBMFontRenderer.dll파일을 AGS 설치경로(≠프로젝트 경로)에 붙여넣고, AGS 편집기를 실행한 뒤
[Plugins]항목으로 가서 AGSBMFontRenderer를 찾아 우클릭 후
[Use this plugin]을 눌러 활성화 시켜주세요.
- AGS가 플러그인 파일을 설치 경로에 이전 하기전부터 미리 실행 중인 경우는 새로 옮겨진 플러그인 파일을 인식하지 못 하므로 AGS를 재시작하시기 바랍니다.
- 플러그인을 활성화 시켜두지 않으면 당연하게도 SetBMFont("폰트이름.fnt", 폰트ID);구문에서 플러그인 API를 찾지 못해 Build시 에러가 납니다.
Ⅱ. 프로젝트 생성 경로의
Compiled폴더에 AngelCode님의 Bitmap Font Generator로 생성한 BMFont(.fnt파일과 .tga파일들)을 이동합니다.
- 폰트 생성시 설정에서 Match char height를 체크하고 Font smoothing을 꺼주세요(체크해제).
- 저장 포멧은 .fnt에 8bit texture만 허용합니다.
Ⅲ. AGS 편집기에서
[Fonts]로 가서 우클릭 후
[New Font]를 눌러 새 폰트를 생성하고
[Properties]로 가서 아래의 값을 수정합니다.
- OutlineFont => 해당 폰트의 ID값 그대로
- OutlineStyle => Automatic
Ⅳ. 한글 대사 출력을 하는
룸파일(room#.asc)을 찾아 UTF-8을 지원하는 텍스트 편집기로 열어서
SetBMFont("폰트이름.fnt", 폰트ID);와
Game.SpeechFont = 폰트ID; 구문을 적절한 위치에 삽입해 사용폰트를 수정하고, 대사를 편집후
UTF-8 WITHOUT-bom으로 저장합니다.
Ⅴ. 여태 소개한 플러그인 사용 준비 및 방법의 원문의 내용과 플러그인의 소스코드를 확인하고 싶으면 아래 링크를 참고하세요.
테스트
Compiled Project.zip
샘플 프로젝트를 하나 생성 후 Look at 으로 파란 컵을 조사하는 경우 출력되는 메시지만 가볍게 한글화했습니다. 매우매우 잘 출력됩니다. 이제 AGS는 여러분들의 것입니다. 마음대로 사용할 수 있습니다. 참고로 테스트에는 우리의 영원한 친구 네이버 NanumGothic폰트가 사용되었습니다. 이용 규약에 따라 아래 링크를 소개합니다.
* 나눔글꼴 라이센스 전문 :
http://help.naver.com/ops/step2/faq.nhn?faqId=15879