大和但馬屋日記

はてなダイアリーからの移行中

「Forza Motorsport2」の車のモデリング

yms-zun2007-05-14

発売前からこんなこといふのも何だけど、やつぱり「Forza2」のモデリングはいろいろと残念だ。実在のクルマと比べて似てる似てないレベルの話の一例はid:usui_soup:20070509で紹介されてゐる通りで、この他にも細細とした仕様の間違ひなんかもあるやうだ。ワシはマイカーを持つてないからその辺はあまり気にしないけれども、当該車種に愛着がある人ほどそのあたりは割り切れない思ひをすることになるかもしれない。最終的には「まあ洋ゲーだし」といつたあたりで諦めるしかないだらう。
ワシが気にするのはさうした部分ではなく、普段のプレイ画面についてだ。ジャギー? 知るかそんなの。フレーム落ち? ねーよ。エフェクト? 要らん。そんなスペック厨的な話にも興味はない。
残念なのはただひとつ、「もう少しクルマを綺麗に見せられんか」といふ点だけなのだ。
Forza2」に登場するクルマがどれだけのポリゴン数を費やしてモデリングされてゐるかは知らない。調べれば分るかもしれないが興味はない。これからするのは何ポリゴン使つてるかとは別次元の話だ。
体験版で遊んでゐて気付いたことがある。このゲーム、自分で走らせるクルマと自分以外のコース上の他車は同じ車種でも全く別のモデルが使はれてゐる。簡単にいつて、他車は一段階粗いモデルが使はれてゐる。たぶんさうすることによつて60fpsの描画、360fpsの内部演算処理を無理なく可能にしてゐるのだらうから、そのこと自体に文句は全くない。むしろ正しい判断だと思ふ。しかし、その「粗いモデル」の出来が悪いとなると話が別だ。
体験版をRX-8で走ると目の前にはフェアレディZが居る。斜め前にはBMWも居る。スタートすると彼らを追抜くことになる訣だが、目前に迫るZのテールはグニャグニャだしBMWの横ッ腹はまだクラッシュしてないのにボコボコなのだ。気になつて仕方ない。なんでこんなことになつてしまつたのか。
検証のために六角大王でザクザクモデリングしてからMayaに移してみた。世の中広しといへども六角大王のマンガモードでクルマをモデリングする奴はあまり居ないだらう。所要時間二十分てとこか。

某車のリアセクションのつもりで写真を見ながら作つてみた。似てないね、ああ似てないとも。許せ。「Forza2」のモデルは少なくともこれよりはよほど実車に似てるから安心すればよい。
で、これに質感を設定してライトを当ててレンダリングしたのがこれ。

case 00


これはひどい。ナンバープレートが入るあたりとかウインカーランプの周辺とか、ボコボコでどんな形をしてるのかすらよく分らない。断つておくが、事故車のモデルを作つた訣ではないぞ。
「いやいやこれはポリゴンが粗すぎるからだらう、手を抜かずにもつときちんと作れよ」といふ声が聞こえてきさうだが、これはポリゴン数の問題ではないのだ。
で、驚くべきなのは、「Forza2」で目の前を走るZのテール周りがまさにこの有様なのだ、悲しいことに。
ちなみにこれは、ちよつとした手当で解消できる。それが次。

case 01


ナンバー周りやウインカー周辺、そしてリアハッチのところのエッジを立ててやるだけで面の繋がりがきちんとしたのがわかるだらう。ポリゴンの頂点は一切弄つてゐないが、これだけで見かけのクオリティが向上する。
しかしこれでもまだ気になる点はある。側面の上半分、テールランプの下にあたる部分のパネルが妙に平らで、周囲の面と綺麗に繋がつてゐない様に見える。あと、ウインカーの上あたりの面に引き攣れが見える。
ここにもう少し手を入れてやらう。

case 02


どうだらう。手前のハイライトが出てゐる部分の面の繋がりがスムーズになつて、側面パネルが周囲と連続した曲面である様に見えるだらうか。
尚、これも形状自体は一切弄つてゐない。ワイヤーフレームで表示すれば最初に示したものと全く同じものになる。また、この三つの画像はライトの位置も全く動かしてゐない。具合よく見える様にライトを動かしてズルをしたわけではない。
何をしたかといふと、各頂点の法線ベクトルを調整したのである。数学的な法線の定義はさておいて、CGで法線といふと大雑把に行つて面の向きを決めるもので、具体的にはかういふものだ。

頂点の法線ベクトル(vertex normal)


このトゲトゲした線が、それぞれの頂点の向きを表してゐる。頂点が綺麗に並んでゐても、このベクトルが揃つてゐなければ滑らかな面には見えない。逆にいへば、幾何学的に面が繋がつてゐなくとも、法線の方向を揃へてやれば見かけ上滑らかな面にみせることができる。
所詮は平らな三角形の塊にすぎないポリゴンモデルが人の目に滑らかに見えるのは、偏にこの法線ベクトルあつてのことなのだ。

この様に、ハッチとサイドパネルの法線がそれぞれ違ふ方向に出てゐると、それぞれが全く明るさの違ふ面として表示されてしまふ。

そこでこの様に法線の向きを揃へてやると、それぞれの頂点の光の当り具合が同じになつて、離れてゐてもひと繋がりの面として表示される訣だ。
で、「Forza2」に話を戻すと、今時のゲームならばせめてcase 01として示した程度のことはしてゐて当然なのに、それすら為されてゐないモデルが堂々とプレイヤーの目の前を走つてゐるといふのは、いくらなんでもないだらうと思つたわけだ。
そして、粗い他車のモデルだけではなく、プレイヤー用のモデルにおいてすら、所々でcase 01レベルの投げつ放しな法線処理が為されてゐて、まあポリゴン数相応のモデルにしか見えないクオリティに留まつてゐるのも気にならないといへば嘘になる。折角のHDRレンダリングなのに、ハイライトが綺麗に繋がつてゐなくては台無しだらう。
法線を弄るのは、当然作業として手間のかかることではある。しかし一方で、ポリゴン数ひいてはマシンの演算負荷に一切影響がないのが法線処理によるクオリティアップの旨味でもある。
もちろん凝り始めたらキリがない領域の話であることは分つてゐるし、ただでさへ発売が一度延期されてもゐる訣だから、それなりに苦渋の選択を行つた結果であることは想像に難くない。あるいはこれがマイクロソフトならではの大雑把な割切りといふものなのかもしれない。しかしそれでもやつぱり、case 00みたいのはないよなあ、と思つてしまふのである。いくらなんでもちと割切りすぎではないか。
結局は見た目の話である。このことがゲームの価値を減ずるものだとはワシも思つてゐないさ。ただただ、ここだけはちやんとしてたら良かつたのに、あの詰らないリプレイカメラだつて我慢したのにといふ、その程度の、しかしワシにとつては気になつて仕方のない話。

この記事には続きがある。

蛇足だが念の為

ハードの性能がどうかういふ次元の話では全くないので、この話を機種間のスペック争ひの種に使つたらワシは怒るぞ。怒るといふか、あまりの頭の悪さに呆れるぞ。

  • 2007年05月15日 DocSeri CG なるほど……ポリゴン使わないベジェモデラなのでこの辺には思い至らなかった。
  • 2007年05月15日 mutronix