モバイルからハイエンドまで幅広い対応
ゲームエンジンと一口に言っても様々で、大規模プロジェクト用のもの、特定のハードやゲームジャンルのみを対象としたものなどがある。では OROCHI とは、どこを狙ったゲームエンジンなのだろうか。前述の ALCHEMY もゲームエンジンに似たミドルウェアで「どちらを選ぶべきか」と思うゲームスタジオもあるだろう。
新井氏:OROCHI が掲げている大きなコンセプトとして「ハイエンドゲームを開発できること」というものがあります。つまり PS3 や Xbox 360、Windows(アーケード)といったハイエンドプラットフォームでの開発に必要とされる機能が揃っているゲームエンジンということです。一方の ALCHEMY は異機種間での移植性に強みのあるミドルウェアで、比較的ライトなゲームのマルチプラットフォームプロジェクトを狙った製品です。
とすると OROCHI はハイエンド機での大規模・大作ゲーム専用エンジンで、モバイルプラットフォームには対応しないのだろうか。
新井氏:いえ、スマートフォンや PS Vita のようなモバイルゲームプラットフォームへも対応します。大規模・大作タイトルの開発に対応できるエンジン、ということであって、モバイルゲームプラットフォームをターゲットにしないということではありません。開発した大規模タイトルをモバイルゲームプラットフォームへ展開するための道筋を提供できることも OROCHI の強みです。
また、今後はハイエンド版とモバイル版とでエンジンを切り分けて設計していく方針をとるという。モバイル機(特にスマートフォン)は機能進化ペースが早く、特殊機能(加速度センサ、ジャイロ、GPS、タッチ入力など)も多いため、これらを分けた方が効率よく開発できると判断されたためだ。実際カプコンの MT FRAMEWORK などでも近年のバージョンでは同様の設計方針に切り換えている。なお、エンジン自体がハイエンドとモバイル向けとで切り分けられてもライセンシーは両方利用ができるとのことだ。
(左)PS Vita、(右)Windows
PS Vita 対応は既に完了しており、取材時点(2011 年 10 月)では、Windows 上で開発した 30fps ベースのテクニカルデモが、PS Vita 上でもほぼ同等のクオリティかつ 30fps で動作しているという
OROCHI 機能紹介
OROCHI のコンセプトや概要が分かったところで、続いて機能面について見ていきたい。
グラフィックス
グラフィックスライブラリは、いわゆる Deferred 系のレンダリングパイプライン(Light Pre-Pass レンダリング)になっている。PS3、Xbox 360 いずれにおいても、素材やマテリアルなどをプラットフォームごとに合わせるといった作業は不要で、各ハードの特質を活かした形でライブラリを実装しているとのこと。なお従来の Forward 系のレンダリングパイプラインも利用可能で、開発するプラットフォームの仕様によってどちらかを選択できる。PS Vita に関しては、Forward 系レンダリングパイプラインとの相性が良いとのこと。
シェーダ
OROCHI にはシェーダツールも内蔵されている。アーティストは内蔵されている多様なシェーダ群に対してパラメータ調整を行うことで任意の質感を作り出せる。また独自設計のシェーダを追加することも可能。プログラマーは各プラットフォームへの最適化をあまり意識せずに OROCHI 向けのシェーダを書けばよく、モデル編集ツールで作成したマテリアルは全プラットフォームで同一の質感が再現されるという。
(左)複数のライティング、(右)モデル編集ツール
フィルター、エフェクト
被写界深度表現などのポストエフェクトや、炎や煙といったエフェクトグラフィックスの作成ツールとしては、シリコンスタジオから単体のミドルウェアとしてリリースされている「YEBIS」と「BISHAMON」のフルスペック版が搭載されている。これらは業界でも広く利用されているミドルウェアのため使用経験のある開発者も多い。そのためアーティストはすぐにこれらをフル活用でき、既に過去のプロジェクトで築き上げてきた YEBIS ベースや BISHAMON ベースのリソース群も迅速に流用可能だ。
モーション
モーション作成ツールや管理ツールも一通りのものが揃っており、2つのモーションをブレンドできるツール、モーション同士を滑らかに繋いて補間するツール、複数のモーションを繋いだ連続アクションを作成するツールなども用意されている。さらに、モーションのブレンド方法をビジュアル的に設定できるモーションツリーエディタも用意されている。エンジンランタイムは IK(Inverse Kinematics)にも対応。
(左)YEBISを利用した水中表現、(右)モーション編集ツール
AI
経路探索、群集制御などの実現手法を提供するだけでなく、プレイヤーや NPC を設計するための基本的なライブラリを内蔵している。特に力が入っているのは AI 作成のビジュアルツールだ。これはプランナーやゲームデザイナーなどプログラマーでなくてもフローチャート的に AI を作成できるツールで、デバッグもブレークポイントの設定もツール上で可能。基本的な関数はプリセットされているが独自関数の追加も可能なので、特定のゲームに特化したロジックもツール上で作成できる。
物理
衝突処理関連には Bullet、その他の応用物理シミュレーションに関しては PhysX が採用されている。物理関連ツールとしては衝突形状を設定できるユニットコリジョンツール、物理パラメータを設定できるクロスシミュレーションツールやラグドールツールなどが用意されている。なお既に自社で物理シミュレーション部分を構築している場合は、そちらを利用することも可能だ。
(左)フローチャートAIツール、(右)ラグドール編集ツール