物足りない迷路機能・線画像(ベクトル画像)の話

ウィザードリィ風ゲームの玄室の使い道」(http://d.hatena.ne.jp/kumashige/20070605/1180976655)の最後の方に書いたが、迷路の汎用機能がもうちょっと欲しい。

なお、今現在持っている機能については、次の記事「『かわいそうな王』の時点で実装されていた迷路機能」へ。

以下、だいぶ前にアップしようと思っていた記事なのだが、すっかり忘れていた……。

現実的な問題として、ウィザードリィの汎用イベントには、玄室と遭遇戦と罠(ピット、ダークゾーン、ターンテーブル)しか存在しないのだ。

もちろん、個別イベントの設置という決定的な方法もあるのだが……、3Dダンジョンゲームに定番となりうる汎用機能が、もっと増えてもいい気がするのだ。

欲しいものをもっと良く考えてみると、「ビジュアル面で変化が欲しい」になる。現状、ダークゾーン、壁および床の配色、それと壁かドアか柵かによって、見た目が変化するだけだ。

ドアと壁の表現

ドアと壁の種類は現状くらいでいい。

けど、(以前どこかに書いたが)高さを変える機能は欲しい気はする。フロア単位で高さを変えるのは簡単だけど、壁単位で変えるとなると面倒くさいとか。

フロアの表現

床が寂しい。かといってビットマップ画像を表示するのは別の目的になる。たとえば床(空中)に絵画的な画像を表示するなら、壁と天井も絵画的な画像にしないとバランスがとれない。

線画(ベクトル描画)モードにおける「線」画像。理想を言えばこれが欲しい。

線画像とは、こういう奴だ。

線画像には、以下の二つの目的がある。

線画像(ベクトル画像)の目的

  • アイテムや石や木などのオブジェクトを描画しても、線画迷路のイメージを損ねない
  • 拡大縮小にも綺麗に対応する

ところがこいつが面倒くさい。ビットマップ画像はあっけなく実装できたDesigeonも、ベクトル形状の処理は未知の領域である。

APIに任せることもできる。ウィンドウズには「ウィンドウズ・メタファイル」というファイル形式、それと「エンハンスド・メタファイル」というファイル形式が存在する。しかしどちらも過去の使用経験上、難点が多い。

以下はメタファイルを使用する上での問題点。

  1. 扱いに慣れていない人が多い。ツールも少ない
  2. 単純なドット描画(と思われる)のため描写が汚くなる(上のサンプルほど綺麗にならない。はず)。アンチエイリアスの追加処理が欲しくなる
  3. 95系ウィンドウズで使用すると、リソース解放時にリソースリークを起こす
  4. ウィルスが混入する恐れがある

どれも運用努力やアプリ側の設計によって回避可能な問題ではあるが、要するに面倒が多いのだ。

とくに、アンチエイリアスが必要と言われると、処理速度面でもキツくなる恐れがある。だけど汚い線画を表示するくらいなら、ビットマップを使った方がマシなのだ。