シムシティーの仕組み |
http://simlabo.main.jp/educate/material/simshikumi.htm シムシティーでは、街を構成するいろんな要素を14種類のアイコンであらわしている。プレイはこの要素をエディット・ウィンドに置いていくことによって進行するんだけれど、要素はマップ上に置かれるとその後は勝手に色々変化することになっている。要素にはそれぞれ他の要素に与える影響、他の要素から受ける影響など、いろいろなデータが含まれていて、いったんこれが置かれると、他の要素と相互に関係を持ち始めて状態が変化していくことになるんだ。 さっき説明したシミュレーションの例では、人口っていう一つの数値をあらわすために一つの式を作ればよかった。ところが、街のシステム全体は式一つであらわせるようなもんじゃない。だから個々の要素が他の要素とどういう関係を持ってるかを一つ一つ式にして、それを組み合わせることによって街全体をシミュレートしようって考えたわけだ。 この仕組みを効率的に動かしていくために、シムシティーの中身は多層構造になっている。チェスのボードみたいに縦横の線で区切られた層がいくつか用意されていて、それぞれが特別な数値だけを計算するようになっているんだ。 プレイが行なわれるエディット・ウィンドウっていうのは階層の中でいちばん上にあるマップレイヤーのことで、プレイヤーが置いた各要素はここで他の要素に影響を及ぼしたり、他から影響を受けたりする。ところが、要素と要素の関係すべてを一つの層で計算していると、街全体の計算はとんでもなく複雑になってしまう。そこで、たとえば交通渋滞の具合だけを計算している階層や、犯罪の発生率だけをシミュレートしている階層なんかをいくつか用意したんだ。それも計算する数値によって、シミュレート精度を変えるようにしてね。 マップレイヤーは1マス×1マス(道路や鉄道1要素の大きさ)の単位で要素と要素の関係を計算している。いちばん精度が高い。 この下に、人口密度、交通渋滞、環境汚染度、ランドバリュー、犯罪発生率、それぞれの数値だけを2マス×2マスの大きさごとに計算している階層が用意されている。 さらに、地形の状況を4マス×4マスで計算している階層、人口増加率、消防署、警察署、消防署の影響力、警察署の影響力なんかを8マス×8マスで計算している階層がある。 こういった個別の階層で計算された結果が、またいちばん上のマップレイヤーにフィードバックされる。そうすると、画面上では次から次へといろんな変化が連続的に起きていくことになる。 これがシムシティーの基本的な構造なんだ。 |
【このカードへのコメント】