見出し画像

雑記 - ビットマップフォントあれこれ

MGLのドキュメント化の進みが良くない状態が続いており、今週も週報をお休み……としようかと思ったのですが、久々にMGLとは無関係な内容を書く事にしました。

(迷い込んだ方のために書いておきますと、普段は私はMGLというゲーム開発用フレームワークを開発していまして、ここでは主にその週報を書いています)

という訳で……


ビットマップフォント練習中

普段はMGL関連の情報ばかりを書いているためエンジニアのような印象を持たれてそうですが、私の興味の対象はゲーム開発全般にあります。ゲームに使用するリソースの作成もまた然りでして、最近はドット絵の練習も兼ねてビットマップフォントの作成を定期的に行っています。

このビットマップフォントの作成、特に8x8のような制限下の書体の作成は奥が深い世界でして、その一端をこの場でご紹介してみようと思います。

さて、MGLのドキュメントのフォントリソースの登録のページには、次のような記述があります。

MGLのドキュメントに記載されている残念な8x8ドットフォント

ここで例として使用している8x8ドットのビットマップフォントは「反撃BLOCKS」に使用したものですが、見ての通りあまり綺麗な書体ではありません。
これは当時の私がカリグラフィのカの字も知らないまま、乏しい画力のみで描き上げた結果によるものです。かれこれ1年ほど前、MGLのドキュメントを書く際にこの画像を引っ張り出してきて、改めて「うわぁ……」となった心境が注釈に現れています。

さすがにこれは恥ずかしかったので、その後に書体についてのいくつかの文献を漁り、少なくとも「不自然でない」書体に改良しようと試みました。そうして最近書き直したものが次のフォントです。

最近書き直した8x8ドットフォント

元々の画力が乏しいため歪な部分もありますが、全体的にバランスの取れた書体になったのではないでしょうか。

これはスキル云々よりも、基礎を押さえながら書き直した結果だと思います。ベースラインとXハイトを意識して書くだけでも不自然さは大きく改善された気がします。細かい部分で歪な印象を受けるのは、純粋にドット打ちのスキルの問題でしょう。

さて、練習用に描いた8x8ドットフォントをもう1つ。MICRフォントをモチーフにして描いたものです。

練習用に描いた8x8ドットMICRフォント

MICRフォントは元々は金融機関向けの自動認識用の数字フォントでして、1960年代にこれをモチーフにアルファベット部分を加えた書体が流行しました。モデルにしたのはそのうちのData70というものです。

これは日本でも近未来感を持たせるために一時期多用されたため、見覚えのある方も多いのではないでしょうか。個人的に真っ先に思い浮かべるのは、タイトーの「ハレーズコメット」、ナムコの「グロブダー」、そしてマイコンBASICマガジンのロゴあたりです。あと、私が強く影響を受けたゲームのひとつ、「バトルガレッガ」の書体の一部にも使用されていますね。

ゲームとは相性の良さそうな書体ですが、実は権利的にちょっと不明瞭な部分があるため、これをそのままゲームに使用するのは控えようかと思っています。Data70は文字通り1970年製の書体でして、著作権的にまだ切れていないはずなのですよね。現時点での権利関係を調べようと試みたのですが、情報が少なくて結局分からず仕舞いでした。Data70のアウトラインフォントについては有償で販売されていますので、ゲームに使用するならそちらを購入した方が無難です。

さて、最後にサイズを変えて6x8ドットフォントを2つ。

6x8ドットフォント

上がLight、下がBold(Regular?)とでも言いましょうか。

ラテン文字は基本的に縦長の長方形であるため、8x8の等幅という制限で小文字まで綺麗に含めるのは結構難しかったりします。せめてもう2ドット横に狭ければ……という思いで試しに書いてみたのがこのフォントでした。

雰囲気的には電子工作でよく用いるキャラクタディスプレイのフォントという感じですね。レトロゲーム感というよりは、ちょっとした小物UIに使えそうな感じです。

この他にもいくつか試行錯誤したフォントがあるのですが、ここで紹介したものほど整ってはいないため、またの機会にとしましょう。


今週の作業内容(MGL週報)

書かないつもりでしたが、やっぱり書いておきましょう。

タスクシステム関連のドキュメント作成

引き続きタスクシステム関連のドキュメントを(主に休憩時間中に)書いています。

書いている最中に初期化まわりに疑問を抱き始めてしまい、3歩進んで2歩下がる状態が続いています。きりがないので一旦リリースしてから直したほうが良さそうなのですが、ちょっとだけ、もうちょっとだけで時間を浪費しています。

もっとも、動作検証や仕様的な問題のチェックを含めたドキュメント化作業なので、進め方としては間違ってはいないのですが。どちらかというと、なかなか先に進めない焦りのようなものを感じています。


その他

やっぱり今のPCでは作業配信を始めるのは厳しそう。詳細はいずれ機会があったら書きますが、今の環境では音声がノイズだらけになってしまうみたいです。

この記事が気に入ったらサポートをしてみませんか?