階段を降りた直後や、中断した所から再開した時に「99 掛軸裏の洞窟」等と表示されますね。今回はあのフォントの話です。
このフォントは「古印体」と呼ぶことを最近知りました。印鑑に使われる書体だそうですが、少し怖いイメージがあるからか、その手の作品にしばしば登場します(どちらが先かは分かりませんが)。言うまでもなく、かまいたちの夜のタイトル画面のフォントもこれです。 いつものようにJavaScriptで文字を表示していると、いきなり「怨」の文字が登場してびっくりしたのは秘密です。これはROMハッカーに対するCHUNSOFTからの怨念なのかと一瞬思いましたが、http://oyasen20.tripod.com/other_romhacking.htmlから分かるように、当初は「怨念坂」という地形を入れる予定だった訳ですね。 因みに見れば分かりますが、巻物の洞窟の「巻物」のフォントは適当に描いたもので、古印体ではありません。とても暇な時があれば描き直すかも知れません。 さて、前置きが長くなりましたがこのフォント、簡単な圧縮(と言う程でもないが)がされているのでYY-CHR等では編集できません。地道にバイナリエディタで編集しましょう。 1文字は24*24ドットですが、それは8*8ドットのブロックに分かれています。ブロックを左から右へ並べ、右端まで来ると下の行へ降りて左から右へ並べ……を繰り返して1つの文字を描画します。 更にブロックのデータにはタイプ0~タイプ3の4つのタイプがあります。これはブロック毎に自由に設定でき、そのデータを圧縮するか否か、圧縮する場合はその方法を決定します。 1つの文字のフォーマットは以下の通りです。 ・横幅(1バイト) ・ブロック1~4のタイプ(1バイト) ・ブロック1(0~8バイト) ・ブロック2(0~8バイト) ・ブロック3(0~8バイト) ・ブロック4(0~8バイト) ・ブロック5~8のタイプ(1バイト) ・ブロック5(0~8バイト) ・ブロック6(0~8バイト) ・ブロック7(0~8バイト) ・ブロック8(0~8バイト) …… 但し、 ・(横幅)=(実際の横幅/8)-1 ・(ブロックn~n+3のタイプ)=(ブロックnのタイプ)+04h*(ブロックn+1のタイプ)+10h*(ブロックn+2のタイプ)+40h*(ブロックn+3のタイプ) 24*24ドットの文字なら、横幅の値は24/8-1=2、すなわち02hになります。 タイプの解説は次回に行います。
by oyasen
| 2009-06-09 19:48
| 改造・解析
|
|
ファン申請 |
||