「ゲームのマップについて」という簡単なタイトルで申し訳ありません、何と言えばいいのかわからなかったので・・・
最近部屋の整理をしていたらMother3が出てきました。懐かしさのあまり、久しぶりにプレイしていまして、
ふと思ったのですが、Mother3のようなゲームのマップは、ドットのくせに通れるところと通れないところが細かく設定?されていますよね(崖の形や高さによって進めたりすすめなかったり)
ファミコンのドラクエなどのマップは、二次配列に「通れる」「通れない」とデータを入れてあることで、通れるところは通れる、通れないところは通れないとなっているのはわかります。
しかしそのせいで、通れるところと通れないところが極端といいますか、四角形が1つ1つあるということが丸わかりです。
Mother3の場合は通れないところが斜めに削られてたり、二次配列で設定されているとは思えないです。
・・・説明が下手すぎてすみません。上手く伝えられないのですが、わからなかったら聞いてください。
とにかく、Mother3のようなゲームのマップはどうやって移動範囲を設定しているのかを教えてほしいです。
僕はC言語は大体理解していると思います。実際ゲームを作ったことはありませんが、Dxライブラリで、ドラクエ風のマップ内でキャラクターを縦横動かすプログラムくらいは作ったことがあります。
説明が難しくなっても構いませんので、どういう原理なのか教えてください。
ゲームのマップについて
Re: ゲームのマップについて
実際にMother3の開発に携わった訳ではないので想像でしかありませんが
2Dのアクションゲームで行うような当たり判定の計算を行っているのではないでしょうか?
それならば例え斜めや円形の対象であっても、ほぼその形通りの判定チェックが出来ます
建物や障害物の一つ一つに情報を設定するのは結構な手間だと思いますけれどね(苦笑)
2Dのアクションゲームで行うような当たり判定の計算を行っているのではないでしょうか?
それならば例え斜めや円形の対象であっても、ほぼその形通りの判定チェックが出来ます
建物や障害物の一つ一つに情報を設定するのは結構な手間だと思いますけれどね(苦笑)
♪僕たちは まだ森の中 抜け出そう 陽のあたる場所へ
Re: ゲームのマップについて
表示用タイルと同じ大きさで当たり判定するのではなく、もっと解像度の高い(見えない)当たり判定用のマップを使っているのかもしれません。
-
スクエア
Re: ゲームのマップについて
返信遅れてすみません
>>jayさん
もしそのやり方だとすれば、さすが開発の人数が多いだけあるって感じですね・・・
一人でオリジナルのゲームに同じシステムを取り入れるには難しいのかなぁ
>>ISLeさん
①判定用のマップには黒線のみが描かれていて、黒線の外側には出ないように判定処理をする。
②裏に用意された判定用マップで判定処理をしつつ、表示用マップを表示する。
みたいな感じですか?
>>jayさん
もしそのやり方だとすれば、さすが開発の人数が多いだけあるって感じですね・・・
一人でオリジナルのゲームに同じシステムを取り入れるには難しいのかなぁ
>>ISLeさん
①判定用のマップには黒線のみが描かれていて、黒線の外側には出ないように判定処理をする。
②裏に用意された判定用マップで判定処理をしつつ、表示用マップを表示する。
みたいな感じですか?
Re: ゲームのマップについて
線で分けると判定がめんどうくさいですよ。スクエア さんが書きました:①判定用のマップには黒線のみが描かれていて、黒線の外側には出ないように判定処理をする。
②裏に用意された判定用マップで判定処理をしつつ、表示用マップを表示する。
みたいな感じですか?
「進める」「進めない」の情報が入った二次元配列です。
マップパターンと1対1の大きさで判定するのと同じですよ。
仮に表示用パターンが16x16だとしても判定用マップを8x8とか4x4とか2x2とか1x1という単位にするだけです。
スクロールも含めて表示にはオフセット座標があれば良いので、移動する単位は自由なのです。
ここのサイトのゲームプログラミングの館にもありますけど、むしろパターンの大きさに合わせて移動させるほうがめんどうくさいのです。
-
スクエア
Re: ゲームのマップについて
たびたび時間を空けてしまい申し訳ありません
ISLeさんの言うことを元に自分なりに作ってみたり、いろいろ調べたりしたところ大体わかったと思います
ISLeさんありがとうございました
それからjayさんもありがとうございました
ISLeさんの言うことを元に自分なりに作ってみたり、いろいろ調べたりしたところ大体わかったと思います
ISLeさんありがとうございました
それからjayさんもありがとうございました