今回は、Dungeon crawler (3DダンジョンRPG) を擬似的に表現する方法を解説してみます。
Unityであれば、標準で3D描画ができてしまうのでここで紹介している方法は必要ないですが、2D描画機能しかない環境の場合はこの手法が有効です。
目次
疑似3Dダンジョンの作成方法
では、まず準備として、視界の範囲や奥行きをどうやって表現するかを考えます。
これは、視界を奥「2」まで、左右を「1」までとしたものです。この場合視界は、3×3マスで表現することができます。そして、0~2が奥、3~5が中距離、6・8が近く、となります。遠近法を使えば、近くにあれば大きく、遠くにあるほど小さく映るので、一番近い壁を「3」、中距離の壁を「2」、遠い壁を「1」の比率で考えます。
壁の描画
先ほどの図に合わせて壁を作っていきます。
まずは左側の奥にある壁です。いくつかの壁は多角形になってしまうので、多角形の描画機能がある環境でない場合はあらかじめ画像を用意しておく必要があります。
真ん中の奥にある壁です。
右側の奥にある壁です。
左側の中距離にある壁です。
真ん中の中距離にある壁です。
右側の中距離にある壁ですね。
左側の手前にある壁です。
右側の手前にある壁です。
描画順番
壁は奥行きを表現しているため、描画順が重要となります。奥・中距離・壁の順番で描画します。
通路の描画
壁だけを描画してみて、少し違和感があったかもしれません。なぜかというと「通路」がないからです。通路がないと壁がないとき何もなくて不安になりますよね。そこで、通路の描きかたです。
描画順番としては、壁よりも先に描画します。
以上で擬似3Dダンジョンが表現できるようになると思います。今回は奥行きを「3:2:1」で表現してみましたが、色々と比率を変えてみると面白いかもしれません。
関連記事
もしダンジョンを自動生成する場合は、以下の記事が参考になるかもしれません。
穴掘り法によるダンジョンの自動生成