ゲームを知る

デモ 027ランドマーク

デモを読み込んでいます
自動再生では、案内役について目的の場所へ行った後、同じ規則で歩くプレイヤーのモデル(家か、家との位置の関係を覚えた目印が見えていれば家への近道を進み、見えなければ角ででたらめに曲がる)が一人で家へ戻ります。段の右上は帰りの歩数と、帰りに一度通った所をまた通った回数です。「?」は家の位置がわからない状態です。下のボタンで目的の場所から自分でも歩けます。ステージをクリックすると、矢印キーでも操作できます。

第四章 レベルデザインNo.027

ランドマーク

Landmark別名 目印

概要

プレイヤーが今いる位置と向きを確かめる手がかりにする、形や色がほかと違う目立つ物。似た景色が続く町や森でも、目印との位置の関係から目的の場所や来た道の方向がわかる。どこからでも見える高い目印と、区画ごとに違う近くの目印を組み合わせて置く。

使われる場面

似た建物が並ぶ町
区画ごとに噴水、大きな木、市場のように形と色の違う目印を置く。景色を見るだけで町のどの辺りにいるかがわかるようにする。
広い野外
山や高い塔のように遠くから見える目印を置き、どこにいてもその方向から向きを確かめられるようにする。目的の場所を目印の近くに置けば、行き先を「塔のふもと」のように目印で伝えられる。
拠点へ戻るゲーム
探索に出て拠点へ戻るゲームでは、拠点に遠くから見える目印を置き、帰る方向がどこからでもわかるようにする。
迷路やダンジョン
似た通路や部屋が続くと、一度通った所かどうかを見分けられない。分かれ道や部屋ごとに像、壊れた柱、色の違う床のように形や色の違う物を置き、通った所だと気づけるようにする。
カメラが回る 3D のゲーム
キャラクターの後ろから映すカメラが、向きを変えると一緒に回るので、画面の上が北とは限らない。遠くの山や塔を、向きを確かめる手がかりにする。

判断基準

こういうときこうする
どこへ行けばいいかわからない目的の場所に遠くから見える目印を置くか、目的の場所を目印の近くに置く。行き先を「塔の東の広場」のように目印で伝えられるようにする。
同じ場所をぐるぐる回ってしまう区画や分かれ道ごとに形や色の違う目印を置き、一度通った所だと見てわかるようにする。
目的の場所には着けたが、来た道を戻れない始めの場所から見える所に、遠くから見える高い目印を置く。あるいは、始めの場所から目的の場所まで、ある目印のそばから次の目印が見える間隔で目印を置く。
目印を置いたのに迷う迷った場所からその目印が見えるかを確かめる。見えない目印は手がかりにならないので、目印を高くするか数を増やす。
似た目印が 2 か所にあり、どちらを見ているのか取り違える目印ごとに形、色、大きさのどれかを変え、同じ形の目印を 2 か所に置かない。
今どの区域にいるのかわからない区域ごとに屋根や壁の色と地面の材質を変える。
前に見た目印を頼りに歩いたら、思った場所に出なかった目印には位置が変わらない物を使う。行き来する人や乗り物、壊せる物は目印にしない。
目印が多すぎて、どれがどこにあったか覚えられない遠くから見える高い目印は数を絞り、それぞれの形を大きく変える。区画ごとの目印は隣の目印のそばから見える程度の大きさにとどめる。

遊んでこう感じたら

指示の例

  • 町の区画がどれも同じ見た目で、目的の場所から家へ戻れない。家の近くに町のどこからでも見える高い塔を、ランドマークとして一つ建てて

  • 同じ通りを何度も回ってしまう。区画ごとに噴水、大きな木、市場のように形と色の違うランドマークを一つずつ置いて

  • 塔を建てたのに、町の南側からは建物に隠れて見えない。塔を周りの建物の 3 倍くらいの高さにして、どこからでも屋根越しに見えるようにして

  • 今どの区域にいるのかわからない。区域ごとに屋根の色と建物の造りを変えて、東は赤い屋根のれんが造り、西は青い屋根の木造のように見ただけで区域がわかるようにして

  • ミニマップを消したら、どこにいるかわからなくなった。町の四隅に形の違うランドマークを一つずつ置いて、地図を見なくても位置がわかるようにして

詳細

似た景色が続く場所

碁盤の目に区切られた町や同じ木が続く森では、どの角に立っても見える景色はほとんど変わらない。画面に映るのが周りの一部だけだと、今いる所が前に来た所かどうかも、目的の場所や来た道がどちらにあるかも景色からは判断できない。そこで、形や色がほかと違い遠くからでも見つけやすい物を置き、プレイヤーが位置と向きを確かめる手がかりにする。この目印をランドマークと呼ぶ。

デモの町は横 8、縦 3 の区画が碁盤の目に並び、目印のない区画には同じ形の家が 4 軒ずつ建っている。画面に映るのはキャラクターから左右に 6 マス、上下に 3 マスほどで、画面 1 枚の広さは町の約 2 割である。上の段の町には目印がない。下の段の町には、町の中ほどに高い塔が 1 本ある。6 つの区画に噴水、大きな木、風車、花畑、像、市場がある。家は町の南西の角に、目的の場所は北東の角にあり、あいだの道のりは最短で 40 マスである。

デモの自動再生で歩いているもの

行きはどちらの段も案内役の後について同じ道を歩く。帰りは案内役と別れ、プレイヤーのふるまいのモデルに一人で歩かせている。規則はどちらの段も同じで、違うのはそれぞれの段の町にある目印だけである。

  • 覚えること:道順と方角は覚えない。覚えるのは同時に画面に映った物(家、目的の場所、目印)どうしの位置の関係だけで、関係はたどって使う。家と噴水、噴水と大きな木がそれぞれ同時に映ったことがあれば、大きな木が見えているときに家の位置がわかる。
  • 家の位置がわかるとき:家か、家との関係をたどれる物が見えていれば、家への近道を進む。町は碁盤の目なので、画面の外の道の並びもわかるものとする。
  • わからないとき:曲がり角で、来た道を除く道からでたらめに選ぶ。角と角のあいだはまっすぐ進む。

見分けのつかない家や道は覚える手がかりにならないものとしている。実際のプレイヤーは曲がった向きや歩いた長さからも来た方向を見積もる。このモデルはそれをしないので、目印がないときの迷い方を大きめに見積もっている。歩数の差はこのモデルで比べた差であり、実際のプレイヤーの迷い方を測ったものではない。

上の段は目的の場所を出てから家の位置がわからないまま、町の東寄りの角を行き来する。同じ角を 4 回通った所があり、一度は目的の場所のすぐ隣の角まで戻っている。146 歩目に家が画面に映り、そこから 6 歩、合わせて 152 歩で家に着く。このうち 44 歩は帰りに一度通った所をまた通っている。下の段は家を出るときに見えた塔が目的の場所からも見えるので、帰りの初めから家の位置がわかり、最短の 40 歩で着く。

上の段の歩き方はでたらめに選ぶ所で使う乱数のシードで変わる。シードを 1 から 1000 まで変えて試すと、目印がないときの帰りの歩数は中央値が 152 歩で、約 4 分の 1 の試行では 260 歩以上かかる。デモのシードは歩数が中央値に近いものを選んでいる。下の段は迷わないので乱数を使わず、どのシードでも 40 歩である。

目印にする物の条件

目印にする物は次の四つを満たすようにする。

  • 遠くから見える:目印は見えている所でしか手がかりにならない。高くするか大きくして、見える範囲を広げる。区画ごとの目印なら、隣の目印のそばから見える広さを目安にする。
  • ほかと形や色が違う:周りの物と同じ形なら、目印として見分けられない。デモの上の段の家はどれも同じ形なので、目印にならない。
  • 位置が変わらない:前に見た位置と今の位置が違うと、目印との関係から求めた場所がずれる。行き来する人や乗り物、壊せる物は目印にしない。
  • 場所ごとに違う:同じ形の目印が 2 か所にあると、どちらを見ているのか取り違え、別の場所にいると思い込む。目印ごとに形、色、大きさのどれかを変える。

遠くから見える目印

デモの「塔」を「低い」にすると、塔は画面に映ったときだけ見える。家と塔は横に 16 マス離れていて、画面 1 枚(横 13 マス)に同時に映ることがないので、モデルは家と塔の位置の関係を覚えられない。区画ごとの目印を「なし」にして塔を低くすると、下の段は上の段と同じ道を同じ 152 歩で歩く。

「高い」にすると、塔はどこからでも見える。家を出るときにも目的の場所に着いたときにも見えるので、帰りのどこにいても塔との位置の関係から家の位置がわかる。区画ごとの目印を「なし」にしても、下の段は 40 歩で着く。デモのモデルでは始めの場所から見える高い目印が一つあれば、町のどこからでも帰れる。

真上から見下ろす画面では、塔の高さを描けない。デモでは画面の外にある高い塔を、画面の端に塔の方向を示す印で描いている。印の中の塔の形は遠いほど小さくする。モデルは、この向きと大きさから塔までの向きと遠さがわかるものとしている。遠さを見せない作りでは、高い目印からわかるのは向きだけになり、家の位置までは絞り込めない。その場合、高い目印は大まかな向きを示すのに使い、細かい場所は近くの目印で確かめられるようにする。

区画ごとに違う目印

区画ごとに違う目印を置くと、目印が見えただけでどの区画の近くにいるかがわかる。デモの「区画ごとの目印」を「6 か所」にし、塔を「なし」にしても、下の段は 40 歩で着く。案内役の道は隣り合う目印が同時に画面に映る所を通るので、家から噴水、噴水から大きな木、大きな木から市場と風車、風車から花畑へと位置の関係がつながる(像は案内役の道から見えないので、つながらない)。目的の場所では花畑が見えるので、帰りの初めから家の位置がわかる。行きを歩き終えた時点で家の位置がわかる所は、目印がないときは町の道の 1 割に満たない。目印を 6 か所に置くと、町の道の 4 分の 3 になる。帰りの途中で目印が一つも映らない所を 3 マス通り、そのあいだだけ「?」が出る。ただし、角と角のあいだなのでまっすぐ進み、次の角で市場が見える。

「3 か所」にすると噴水、花畑、市場だけが残る。噴水は家と同時に映るが、市場と花畑は家との関係をたどれる物と同時には映らない。目的の場所で花畑が見えても、家の位置はわからない。下の段は 89 歩目に噴水が画面に映るまで上の段と同じ道を迷い、そこから 15 歩、合わせて 104 歩で着く。帰りに一度通った所をまた通ったのは 19 歩で、上の段の 44 歩より少ない。シードを 1 から 1000 まで変えると、3 か所のときの中央値は 104 歩である。

区画ごとの目印は、ある目印のそばから次の目印が見える間隔で、始めの場所から目的の場所まで途切れないように置く。途切れた所から先の目印は見えても、始めの場所との関係がわからない。

区域の見分け

町を区域に分け、区域ごとに屋根や壁の色、地面の材質、植える木の種類を変える方法もある。区域の色からわかるのは一つ一つの目印ほど細かい位置ではないが、目印が一つも映っていない所でも今どの区域にいるかはわかる。区域の境目を越えると景色の色が変わるので、別の区域に入ったことにも気づける。色だけで区域を分けると、色を見分けにくいプレイヤーには区域がわからないので、材質や建物の形の違いも合わせる。

導線との違い

「導線」は光や道の形で次に進む先を示す。今いる所がどこかや、来た道がどちらにあるかは示さない。ランドマークは進む先ではなく、今いる位置と向きを示す。見えていればどこへ向かうときにも使えるので、行きにも帰りにも、寄り道の後にも手がかりになる。

デモの行きの案内役は導線と同じく、進む先を示す役をしている。案内に従えば目的の場所には着けるが、帰りの案内はない。帰りに迷うかどうかは目印で分かれる。目的の場所そのものに高い目印を置けば、その目印は遠くから見える導線にもなる。

ミニマップとの関係

「ミニマップ」は今いる位置と周りの道を、画面の隅の地図で示す。ミニマップがあれば目印がなくても位置はわかるが、位置を確かめるたびに目を画面の隅へ移すことになる。目印があれば、景色を見たまま位置を確かめられる。ミニマップを出さないゲームやまだ地図のない所を探索させるゲームでは、目印が位置を知るおもな手がかりになる。両方を置くときは、目印をミニマップにも同じ形の印で載せ、地図の上の位置と景色の中の目印を結びつけられるようにする。

高い目印の見せ方

カメラが斜めや横から映すゲームでは、高い目印はほかの建物の屋根越しに遠くから見える。周りの建物より十分に高くし、プレイヤーがよく通る場所から見えるかを確かめる。遠くの物を描かない距離(描画距離)を決めているゲームでは、高い目印だけはその距離を超えても描く。

真上から見下ろす画面では、画面の外にある高い目印を、画面の端にその方向を示す印で描く。デモの塔の印がこの描き方で、「ミニマップ」のデモで映す範囲の外にあるゴールを縁に寄せて描いたのと同じ計算で求める。

// 画面の外にある目印 (lx, ly) を、画面の端に寄せて描く(y は下向き)
// (cx, cy) は画面の中心に映っている位置、halfW と halfH は画面の幅と高さの半分、margin は端から離す幅
const dx = lx - cx;
const dy = ly - cy;
if (Math.abs(dx) > halfW || Math.abs(dy) > halfH) {
  const f = Math.min((halfW - margin) / Math.abs(dx), (halfH - margin) / Math.abs(dy));
  // 向きを示す印。印の中の目印の形を遠いほど小さく描くと、遠さも伝わる
  drawMark(cx + dx * f, cy + dy * f, Math.atan2(dy, dx), Math.hypot(dx, dy));
}

関連項目