――確かに御社ならではの事情かもしれませんね。
松原:たぶんアメリカの最近のFPSと比べると相当ターゲットが異なると思います。しかしノートPCで遊べること、具体的には標準的な統合型チップセットで動くことが大命題でした。その上で専用グラフィックチップで動作すること。それもハイエンドからローエンドまで幅広く対応するように、チューニングする必要がありました。そこでオプション設定でグラフィックを3段階にわけて表示できるようにしています。
――そこで第2部ということですね。
松原:ええ。開発事例としては、「大航海時代 Online」で特徴的な、海の表現を例にして説明する予定です。もともと「大航海時代
Online」は、この洋上表現から始まったプロジェクトでした。特に波や船影をどのように表現するかがポイントになります。街や陸地は波打ったりしませんからね。
――そうですね。
松原:具体的には3種類の海の表現を用意しており、お客様のPCスペックをプログラム側で収集して、デフォルトの設定が決まるようになっています。もちろんお客様の側で個別に設定を調整することも可能です。一番上のレベルでは、SIGGRAPH等で発表された論文のシミュレーションを、シェーダーレベルで実装しました。逆に一番下のレベルでは、固定の頂点パイプライン処理ですべてを表現しています。このようにグラフィックの上限と下限を決めておいてから、その中間のレベルのグラフィックを作りました。
――同じ海の表現といっても、3つのやり方で作られたわけですね。
松原:このへんはPCゲームならではですね。講演では統合型チップセット、専用グラフィックチップの双方において、具体的にどのような手法で開発を行ったか。またその上でどのような最適化のテクニックを用いて高速化を行ったか、について説明したいと思います。
――限られたリソースの中で、どのように表現上の工夫を行うかというのは、ゲーム開発において永遠のテーマですからね。
松原:特に下限については、かなり古典的な手法も総動員しています。具体的にはテクスチャーをできるだけたくさん用意したり、オフラインの段階でできるだけグラフィックデータを用意したり。コンソールなら一種類のテクスチャーを作ればいいところを、普通のテクスチャー、解像度を2倍にしたテクスチャー、圧縮テクスチャーというように、段階をわけて用意したものもあります。「大航海時代
Online」が、オンラインゲームとしてもかなり大きい1.5GBのファイルをダウンロードして頂くことになってしまったのも、こうした事情がありました。
――まさにPCゲームならではの苦労ですね。
松原:ええ。他に動作環境については、みなさん専用グラフィックチップに注目されますが、PCゲームは統合環境が重要なので、専用グラフィックチップだけ良くても意味がありません。いくつか事例もお見せできると思いますが、中には最新のグラフィックボードを使われていても、AGPx2搭載のマザーボードなどを使われていて、遅く感じられたお客様もいました。またMMORPGなので動作の裏側での読み込みが頻繁に行われるということがあります。そのためハードディスクの読み込み速度も意外と影響します。こうしたお話もしたいと思います。