【Watch記事検索】
最新ニュース
【11月30日】
【11月29日】
【11月28日】
【11月27日】
【11月26日】

3DゲームファンのためのEverQuestIIエンジン講座
~未来からやってきた(?)EverQuestIIエンジン



今回、筆者のアポ無し取材を快く受けてくださったSOE EverQuest2のリードデザイナBill Trost氏。わざわざご自身に似たキャラクタをEQ2のキャラクタメイキングで作って頂いた

 目玉タイトルのはずの「EverQuestII(EQ2)」は、なぜかUbiSoftブースの端に隠すようにしてに展示されていた。それもそのはずで、ゲームは2004年に出すかどうかも目星が立っておらず、現在はひたすらゲームエンジンとコンセプト作りに励んでいるのだとか。

 実質的に、今回のECTSにおけるEQIIの展示はテクノロジデモンストレーションのためといっていい。とはいえ、その映像表現は、ゲームの作り込みがほとんど行なわれていないとはいえ、目を見張るものがあった。

 今回はSony Online Entertainment(SOE)の「EverQuestII(EQ2)」のリードデザイナBill Trost氏から特別に映像の撮影の許可を頂けたので、この映像を見ながらEQ2の先進テクノロジを見ていきたいと思う。なお、ムービー中の声と左から時々見える横顔は彼のもの。狭い場所での取材だったのでこのあたりはご容赦頂きたい。


■ EQ2における顔表現の見所

【c_mak.mpgはこちら】

 MMORPGにおける顔メイキングは、その後のゲーム世界におけるもっとも際だったアイデンティティとなるため、その重要性は極めて高い。

 c_mak.mpgを見て欲しい。EQ2ではこの顔作成におけるこだわりは尋常でなく、現在の自由度をこのまま製品版に持ち越すかもまだ未定というほどだ。

 鼻の形一つとっても、基本形状を選択後、最大頂点をどこに持ってくるか、鼻のふくらみの最大位置をどこに持ってくるかまでが設定できる。頬のふくらみも、肉付きのバランスが調整可能で、この自由度の高さはほとんど顔デザインソフト単体で販売できるほどだ。ヘアスタイル、体型等も同様の自由度でオリジナルデザインが可能になっている。

 もちろんこうしたメイキングが面倒というユーザーのためにキャラクタの外観をランダム作成するボタンも用意されている。グラフィック技術的な側面でこの顔表現を見ていくと、一見してわかるのがその立体感と肌の質感だ。

 当初、EQ2のキャラクタ表現には「スキンシェーダが採用されている」という噂が流れたことがあったが、これについて聞いてみたところ、「厳密にはスキンシェーダではない」との回答が得られた。肌の反射特性については最近ではBRDF(双方向反射関数)的なアプローチのシェーダプログラムを開発して再現しようとする試みもあるが、EQ2における表現はもっと単純で、光沢を表現するスペキュラマップを何層か活用することによって、肌上のみずみずしさを演出している。簡単に言えばこれはマルチテクスチャリングと大差ないコストで実現できるわけで、互換性も高い。実際に最近のいくつかのゲームでも使われている表現技法だ。

 EQ2における顔表現で目新しいところを挙げるとすれば2点。

 1つは顔のしわなどの凹凸をバンプマッピングで表現している点だ。これは顔に用いるテクスチャが、自身に対応する法線マップを持っているということであり、ビデオメモリが贅沢に活用できるPCグラフィックスシステムならではのアドバンテージといったところだろうか(Xbox用タイトルなどでも時々見られるが)。

 2つ目は顔の大きな凹凸。具体的には鼻、額の出っ張り(≒目元のくぼみ)などの遮蔽でセルフシャドウ(キャストシャドウという場合もあるが)が出ている点だ。

 影生成については後述するが、EQ2の影生成エンジンはステンシルシャドウボリューム技法を採用している。この技法で顔の上にキャストシャドウを出すと、顔モデルを構成している頂点が少ない場合などに、変な形で影が出たり、影が出る部分と出ない部分の境界が怪しかったりするものなのだが(E3で公開された『DOOMIII』ではこの現象が目に付いた)、EQ2エンジンは顔表現に際しては特別なカスタマイズが行なわれているのか、非常に自然な表現になっている。

光源が正面に近いショットなのでわかりにくいが目のくぼみと鼻にキャストシャドウが出ている

衣服のシワ、鎧表面上の装飾などの突起も法線マップを用意してバンプマッピングを行なっている。光源位置が相対的に変われば立体的な陰影の変化を見せてくれる

写真では少々わかりにくいが、動物系のキャラクタでは毛穴のぶつぶつもバンプマッピングで表現されている


■ 全光源からのリアルタイム影生成が可能

【sha1.mpgはこちら】

 影表現は最新ゲームエンジンの表現能力における重要な評価ポイントとなりつつある。

 EQ2エンジンは影表現においても、汎用性と柔軟性を兼ね備えた設計になっており、屋内シーン、屋外シーン問わず、複雑なジオメトリ構造を配慮した形でリアルタイム影生成が行なえる。

 技法としては、「DOOMIII」などで採用されているステンシルシャドウボリューム技法を採用する。

 これは、光源から見て輪郭となる3Dモデル上の頂点を光源ベクトル方向に延長し、影領域(シャドウボリューム)を作成、これをシーン内のジオメトリ遮蔽関係を考慮した形でステンシルバッファにレンダリングし、画面内において影となるピクセル分布を作成。最終パスでこのステンシルバッファと通常レンダリングした映像を合成する。モデルの輪郭抽出は、頂点の法線の向きと光源ベクトルの向きをプログラマブル頂点シェーダで吟味する手法が使われる場合が多い。

 汎用性が高い技法なのだが、シーン内のジオメトリ構造が複雑になればなるほどパフォーマンスに影響しやすいという難点もある。

 EQ2ではこの技法を屋内シーン、屋外シーンの区別なく採用している。

 そこでsha1.mpgを見て頂きたい。見所は2点。

 顔のところでも少し振れたが、自分自身の影が自分自身に落ちるセルフシャドウだ。

 各キャラクタの腕に意識を集中して見てみるといい。腕を振り下ろしているキャラクタはその腕の影が体側面に落ちていることがわかるはずだ。また、首から頭の影が肩や胸元に落ちていたりするのもいわゆるセルフシャドウ表現といわれるものだ。

 EQ2エンジンは布シミュレーション物理も実装しており、ムービー中、白い裾の長い服を着た女性キャラクタが出てくるが、彼女がポーズを変えるとスカートも足にまとわりつく感じで変位する。その際、このスカートの遮蔽構造が変わるので、足に落ちるスカートの影がドラスティックな動きを見せる。服もキャラクタの従属物と考えればこれもセルフシャドウだ。注意深く観察してみよう。

 セルフシャドウという言葉が一人歩きしているせいもあり、何か特別なことのように思ってしまうひともいるかもしれないが、シーン内の遮蔽を一様に配慮して影生成を実行しているだけなので、結果としてたまたまセルフシャドウになっているだけだ。念のため。

 2つ目の見所も、セルフシャドウ同様、特別な処理が行なわれているわけではなく、正しく遮蔽を配慮した形で影生成が行なわれている証として見て頂きたい。それが相互投射影だ。

 ムービー中、プレーヤーキャラクタがNPCの周りにまとわりついているが、これがそれを見せるためのデモンストレーションとなっている。プレーヤーキャラクタの影がNPCの体に投射されたり、逆にNPCの影がプレーヤーキャラクタに投射される様が見て取れるだろう。これが相互投射影だ。

 影生成は非常に重い処理系のため、一般的な3Dゲームにおいては、パフォーマンスを稼ぐために、そのシーン内の代表光源だけで生成する場合が多い。EQ2でも基本的にはこの方針を取っているが、エンジン自体は複数光源からの影生成に対応している。

 ムービー中の代表光源は天空にある太陽になっているのだが、このエンジンの柔軟性を示すために、光源アイテム(懐中電灯)をNPCに向けるデモを行なってもらった。太陽を光源として生成された地面に落ちている影の他、プレイヤーキャラが向けた懐中電灯の影が岩壁方向にも投射されている点に着目して頂きたい。

 エンジンの設計上は、どの光源からも影が投射できるようになっているが、

  • 現行ビデオカード(GPU)では荷が重すぎる
  • ステンシルシャドウボリューム技法によるエッジの強い影が屋外シーンを埋め尽くすと逆に不自然に見える

 といった理由から、影生成は、シーンの複雑性と描画範囲、GPU性能等を考慮した形で調整を行なっている。

【sha2.mpgはこちら】

 デフォルトでは、屋外において、遠くの建物の影は省略するような設定になっていたが、これを無理矢理有効にしてもらったのがsha2.mpgだ。木の影や建物の自己遮蔽などを考慮した描画になるのだが、フレームレートが極端に低下する。「技術デモなのにかっこわるいと様にならない」と言うことで、すぐに無効にされてしまったのでこのムービーは非常に短い。

 Trost氏によれば、「次世代GeForceやRADEONではこれを常に有効にできるかもしれない」とのことだ。

【battle.mpgはこちら】

 さて、続くbattle.mpgは、EQ2の影生成エンジンが非常に優秀かつ効果的なビジュアルを作り出せることをアピールしている映像だ。プレーヤーの背後にある振り子のように揺れるランプが光源がとなっている部屋で、骸骨モンスターとの一対一の戦闘が行なわれる。見所自体は最初のムービーとさほど変わらない。プレーヤーキャラクタの影と敵の影が相互に投射する様や、建物の柱の影、机や椅子の影、分解した骸骨の骨の一本一本にも影が落ちている様を確認して欲しい。

 さて、強力なEQ2エンジンの影生成だが、弱点もある。具体的に解説しよう。

 三角形2枚からなる四角形ポリゴンに「葉っぱ」の形のテクスチャが貼り付けられているとする。このポリゴンの影は、EQ2エンジンでは四角形として出てしまうのだ。本来ならば「葉っぱ」の形の影が出なければおかしい。これはシャドウボリュームの作成が頂点単位で行なわれ、テクスチャの形状が吟味されないことが原因だ。

 テクスチャの透過性についてまで配慮した影生成技法としてはシャドウマッピング(シャドウバッファ)技法があるが、こちらはこちらで別の弱点を持つ(ここでは省略)。製品版EQ2でこうした弱点が克服されるかどうかについては未定。期待して待っていたい。

下からあおるようにして光が当てられているシーン。向かって右川の足の影が内股に投射されていたり、ふくらんだ胸の影が肩方向に投射されている。顔も画像を拡大してもらえれば分かるが、向かって左側の鼻の影はこの光源からのキャストシャドウだ

EQ2エンジンの影生成にも弱点はある。左の椰子の木の影に注目。葉の形の影でなく、葉のテクスチャが貼られているポリゴンの形の影が出てしまっている


■ EQ2エンジンは天空シミュレーションにも対応する

【blo.mpgはこちら】

 「TRON2.0」、「SplinterCell」をはじめ、最近のPCゲームでも流行となりつつあるハイダイナミックレンジ(HDR:High Dynamic Range)レンダリング表現だが、EQ2もこの流れに乗り、随所でHDR表現を見ることができる。

 blo.mpg冒頭で、バンプマッピング表現された金色のレリーフに近寄るシーンがある。

 これで背景物のテクスチャの多くがバンプマッピング表現されていることがわかるわけだが、もう1つ、太陽光とレリーフの位置関係によって非常に強く輝いて見える瞬間があることに気が付くだろう。

 太陽光が鏡面反射に近い形で反射し、その光が視線に届き、あまりにもその周囲の輝度対比が大きい場合、本来ならば明るくなるはずのないところまでが明るく見えてしまう。こうした表現をLight Bleeding(ライトブリーディング)とか、Light Blooming(ライトブリーミング)、あるいはGlare(グレア)効果といい、最近多くのPCゲームで用いられ始めているものだ。

 EQ2では直接光だけでなく、キャラクタが着ている鎧などの金属材質に対してのライティングにおいてもグレアを起こすようになっている。

 これは、強く輝く領域の輝度情報をテクスチャやレンダリング結果のアルファチャンネルに入れ込み、プログラマブルピクセルシェーダで画像処理を行なうことで作り出している。一種のマルチパスレンダリングなので決して軽い処理系ではないのだが、EQ2エンジンではリアルタイム光源処理系にこの機構が組み込まれている。

 ムービー後半には昼間の曇り空の表現が見て取れる。ここでも、空から光があふれ出し、建物の上部に前出同様のグレア効果が現れているのが見て取れる。EQ2における天空表現は、光散乱をシミュレートしたLight Scattering(ライトスキャッタリング)的なアプローチなのかを聞いてみたが、デザイナーであるTrost氏は把握していなかった。

 EQ2ではゲーム内時間が朝昼夜という三段階ではなく、現実世界同様に無段階に時間が進行し、昼夜が移り変わり、天候も変化する。そして「空はプロシージャル生成されていると聞いている」(Trost氏)といっているので、おそらくは光散乱シミュレーションによるものだと思われる(簡易的なものかもしれないが)。

 光散乱シミュレーションについては本連載で近々取りあげる別のゲームタイトルにおいて詳しく解説する予定だが、ここでも簡単に説明しておこう。

 たとえば現実世界で昼間の晴天の空が青いのは、直上付近から降り注ぐ太陽光の青色が散乱し天空を覆うからだ。一方、明け方や日暮れの空が赤いのは、低い位置にある太陽光が、昼よりも大気中を長く通らなければならず、これにより、散乱しがちな青系よりも、散乱しにくい赤が強く観測者に届くためだ。 なにやら難しい話に思えるかもしれないが、天空における太陽や月の位置、その光強度、光の収束率、大気中の光の散乱度などパラメータ化した散乱現象モデルを実装することで、そうした朝昼晩、晴天、曇りといった天空表現は算術的に行なえるのである。

 ちなみに、前出の影生成のデモを行なってもらったムービーは正午12時、天候は晴れの設定だ。ここで見てもらっているシーンは同じ正午12時だが、曇り空となっている。ややオーバーな感じもあるにはあるが、確かに昼間の薄曇り空はこんな感じに見えるという実感はある。

 EQ2は、グラフィックスの直接的なリアリティだけでなく、天候や時間変化といった環境表現のリアリズムにまで挑戦しているのだ。

左のレリーフの輝きがあふれ出している表現がグレア効果。最近お馴染みになってきた感もあるが

EQ2では天候のシミュレーションも実装。ムービー中では昼間の曇り空表現を見ることができる


■ 遙か遠くまでを見渡せる地形表現

【long.mpgはこちら】

 続いては、EQ2エンジンの動的なLOD(Level Of Detail)機能による描画境界無しの地形表現のデモンストレーション(long.mpg)だ。「地形だけだとつまらないので象や熊を便宜上出しておく。水面についてはまだ簡易シェーダなのでこれがファイナルではない」(Trost氏)。

 まずこの映像を見て驚かされるのは、遙か遠方までが描かれているという点と、そしてリアリティあふれる空気遠近表現だ。EQ2エンジンではFar、Nearパラメータによる伝統的フォグで描画境界をぼかすことによる空気遠近表現は使っていない。

 遠方の地形の山々が霞んで見えつつも、しっかりと3Dグラフィックスとして描かれており、遠くにあるものも、近づいて行くにつれて彩度が増してくる……というリアルな情景は、前述の光散乱シミュレーションの効果によるものだろう。

 さて、視点からの距離に応じて、表示キャラクタは数段階のディテールで用意されたLODモデルへと切り替えが行なわれるが、その際にポッピングが発生していることに気が付くかもしれない。また、一部のモンスターはまだLOD用のローディテールモデルが用意されていないので、全く違ったモデルが表示されてしまっている時がある。

 Trost氏によれば、まだ、動的LODのチューニングは始まったばかりとのことなので、温かい目で見守って頂きたい。そうした開発初期時点の荒削り部分があるとはいえ、広大なオープンフィールドがエピックスケールで描画される様は見ていて感動的だ。ランドマークとなりうる大きな岩石や木々以外の、小振りな草木は、これも最近流行のパラメトリックに自動生成された植物たちだ。

 こうした草木は、「どんな種類のもの」を「どんな密度で」、「どの範囲に」、「どんなパターンで生やすか」……といった形で指定され管理されている。1本1本が植え込まれているのではないので、地形データ量的にはきわめて少ない。その割には完全にランダムで生えているのではなく、同じ場所に戻ってくれば同じ植物が生えていることに気が付く。

 ところで、影生成解説のところでステンシルシャドウボリューム技法の弱点について述べたが、ああした弱点がある関係で、テクスチャベースで表現されているEQ2の草木は影が表示されない。このあたりも最終バージョンでどうなるか気になるところだ。

「どこまでも見える」のに「空気遠近」を感じるEQ2エンジンの地形表現


■ 現行ビデオカードで動かすつもりのないEQ2エンジン

今回のデモで使用したマシンはNVIDIA GeForce FX5900 Ultraを搭載したものであった(CPU不明)。これでもEQ2エンジンを動かすには不十分?

 さて、EQ2の気になる発売時期だが、聞いてみると「2004年中の予定だが確証はない」との返答。それも余裕の表情で。現行「EverQuest」が今も順調なので、ゆっくりといいものを作っていきたいということのようだ。

 今回のECTSレポートでは本稿以外でもEQ2関連の情報をお伝えしているが、現時点では「いつ発売されるか分からないEQ2の様子を今回運良く垣間見られた」……という程度の感覚で捉えておいた方が良さそうだ。

 「非常にハイスペックなマシンが必要になるのか」という問いに対しては「ああ、なるだろうね。なにしろ現行マシンで快適に動作することは考えていないから」とのお答え。さらにTrost氏は「DirectX8世代のGPUでは動作保証をしない」といい、「“最低でも”DirectX 9世代のGPUが必要になる」と続けた。

 EQ2エンジンは、次期WindowsのLonghorn同様、DirectX9世代GPUを足切りラインとして設定しているのだ。もちろん反論もあるだろうが、これはなかなか勇気のある決断として個人的には好意的に受け止めたい。EQ2だけで3Dゲームグラフィックス世代が変わるわけではないとはいえ、その転機もしくは足がかりとなることに期待したいからだ。

 この年末、再びNVIDIAとATIが動くといわれている。来年はPCI EXPRESSがやってくるので、このタイミングでもこの2社は動くはずだ。EQフリークはビデオカードの買い換えのために今から少しずつ貯金をしておいたほうがいいかもしれない。

□ECTSのホームページ
http://www.ects.com/
□Nova Logicのホームページ
http://www.novalogic.com/
□「Joint Operations」のホームページ
http://www.novalogic.com/games.asp?GameKey=JO

(2003年8月31日)

[Reported by トライゼット西川善司]


Q&A、ゲームの攻略などに関する質問はお受けしておりません
また、弊誌に掲載された写真、文章の無許諾での転載、使用に関しましては一切お断わりいたします

ウォッチ編集部内GAME Watch担当game-watch@impress.co.jp

Copyright (c) 2003 Impress Corporation All rights reserved.