ニュース
開発から配信、販売まですべてを網羅する新ゲームエンジン「Lumberyard」
ECの巨人は競争が激化するエンジンビジネスの覇者となり得るか
(2016/3/18 13:34)
GDC2日目の15日(現地時間)、AMAZONは同社の新ゲームエンジン「Lumberyard」を紹介するセッションを多数行なった。本稿ではそのなかでも、Hao Chan氏による「Lumberyard」の持つHDR映像出力機能の解説と、ネットワークゲームの製作時必要となる「Lumberyard」のサービス群をJames Clarendon氏による解説の2つのセッションを紹介する。加えて、16日から始まったEXPO会場のAMAZONブースでの「Lumberyard」展示の模様にも触れたい。
「CryEngine V」とは似て非なる「Lumberyard」
そもそもAMAZONの「Lumberyard」とは何なのか。それは、コアであり、3D描画とゲームロジックのドライブをつかさどる「Lunberyard」ゲームエンジンの名称であると同時に、それに加えて、ユーザー認証やサーバで処理すべきゲームロジック、ユーザーのプレイデータを格納するデータベース等、Amazon Web Services(AWS)が提供するゲームサービスを総称している。開発者が「Lumberyard」を導入すれば、AMAZONが提供する、開発から配信、販売までゲームのリリースに必要な一切を統合的に利用することができる。
先月2月9日のAMAZONの発表通り、「Lumberyard」のコアエンジン部分は、Crytekの「CryEngine」を“ベース”にしている。ところが、この“ベース”というのが妙で、実は、Crytekが15日にバージョン5のリリースと無料から開発が始められる“pay-what-you-want”モデルへの移行を発表した「CryEngine V」とは完全にブランチされており、それぞれ独自の変更が加えられた別物であることをCrytekから聞くことができた。
ルーツは同じであり、ブランチされてから、まだ1年に満たないと考えられるため、ある程度の相互可搬性はあると推測されるが、「CryEngine V」と「Lumberyard」とでは、それぞれ提供される機能も異なっており、その傾向はこれからますます拡大していくことになるだろう。開発者が「Lumberyard」を導入しても、それは現状の、そして今後の「CryEngine」を導入することにはならないのだ。ブランチされたバージョンや日時は正確にわからないものの「CryEngine」のライセンス許諾契約が決まったことをAMAZONが2015年の4月初旬に認めていることから、バージョン3.7.0前後だと推測される。
こうして誕生した「Lumberyard」コアゲームエンジンに対して、AMAZONは動画コミュニティサイト「Twitch」に対応するTwitch ChatPlay、Twitch JoinInのほか、オンラインマルチプレーヤー環境を構築するAmazon GameLift、Cloud Canvasといった“外堀”の拡張を中心に進めている。コアゲームエンジンそのものに対しては、やはりAWSのサービス群を意識したネットワークサブシステムGridMateを導入しているほか、「CryEngine」とのライセンスモデルの違いを吸収するためにWwiseの「Lumberyards」専用バージョン、Wwise LTXをインテグレートしている。
HDRディスプレイ対応は「Lumberyard」の独自拡張
Hao Chan氏が解説したHDRも「Lumberyard」の独自拡張の一環だ。実は“HDR”レンダリングと聞いて、ハイダイナミックレンジでのレンダリングに何か「Lumberyard」独自の特徴があるのかと期待して参加したのだが、本セッションの内容はそうではなかった。ここでのHDRは、「Lumberyard」のHDRレンダリング結果を、限りなくHDRを維持したまま、HDR対応ディスプレイに表示させるまでの一連のプロセスを指している。従来のダイナミックレンジ(LDR)を超えたダイナミックレンジまで、HDR対応ディスプレイに表示する技術や規格は、来たるべきモニタの4K、8K化に際して、導入が期待されているものだ。
現時点で、有力なHDR規格は、Windows 10が対応するHDR-10とDolbyが提唱するDolby Visionの2つで、どちらも対応するディスプレイ製品が販売され始めている。ただし、HDR対応ディスプレイにHDR画像や映像を表示するためには、ディスプレイのみがHDRに対応しているだけではダメで、映像ソースから実際にディスプレイに出力する過程すべてがHDRに対応している必要がある。
3Dゲームの場合、そもそもの映像ソースはレンダリング前のモデルということになり、この段階でテクスチャ自体にすでに色空間の制約を受けたものを使っていたり、絵作りのテイストやゲームデザイン上の要求を優先してしまい、純粋にHDRを追求できないこともある。次のレンダリングのステージも同様で、マテリアルやライティングの影響、計算精度や帯域幅といった制約を受けて減衰してしまう。仮にここまでの段階で色深度に劣化がなかったとしても、最終的にディスプレイに出力する段階で、先に触れたHDR対応ディスプレイでなければ、せっかくのHDR映像も画面に正しい色で表現できない。
氏の解説の通り、HDR10なりDolby VisionなりでHDR出力したとしても、人間の目が認識することができるすべての色を忠実に再現することはできない。ただし、たとえそうであったとしても、従来PCで使われてきたsRGBの色空間がL*u*v*表色系の33.2%のカバー率であったのに対して、REC2020 HDRでは57.2%と拡大しており、その結果、実際の表示色の階調も99.7%まで表示可能な色空間に収めることが可能になっている。つまり、従来のディスプレイでは近似色で代替して表示されてしまい、滑らかに表現できなかった色の中間階調が画面に表示できるようになるのだ。
この階調の変化には、ディスプレイに最も暗い色から最も明るい色への輝度の変化の度合いが大きい、つまりよりハイコントラストな出力が可能であることが求められる。従来のLDR TVでは、5,000:1程度だったコントラスト比がHDR TVでは200倍の1,000,000:1と大幅に改善していることから、ディスプレイに入力するソースの方も、この色深度の変化に対応したものが必要になる。ゲームの場合、それが4K時代のHDR対応ということになり、「Lumberyard」エンジンは、いち早くHDR出力に対応しているということなのだ。
ただ、モダンなゲームエンジンにとってHDRディスプレイへの対応は、実はそれほど難しいことではない。というのも、すでにHDRでレンダリングしているため、レンダリング結果を得るためのプロセスは従来とそう変わりないからだ。レンダリングプロセスから従来の露光調整やトーンカーブによる色調整といったLDR固有のステップを省略して、アンチエイリアスやカラーコレクションを行なう。その後、LDRの場合のリニアに対するガンマ補正による色空間のマッピング行なう代わりに、S-Curveによる色調整、リニアからPQカーブへの色空間のマッピングを行なう。その後に、Dolby方式の場合はメタデータを加え、HDR-10方式ではデバイスマップを行なってHDR対応ディスプレイに信号送出する。こうしたプロセスを経ることで、デモ映像のような「Lumberyard」エンジンが出力した豊かなHDR色表現を、実際に目にすることができるというわけだ。
ただし、今回のデモ映像は、HDR非対応の液晶プロジェクターで表示されていたため、ディスプレイ装置の制約でHDR出力できていないことになるだろう。また、たとえHDR対応のプロジェクタが用意できたとしても、JPEGという画像フォーマットのビット深度、読者の皆様のPCのディスプレイ環境といった要因でHDRのままお伝えすることができない。2Dのモニタでは3D立体視の魅力をお伝えできないのと同じで、既存ハードウェア性能の限界を超える要素の悩ましいところだ。
「Lumberyard」は、AWS利用コンテンツにとって最適解
AMAZONは従来よりクラウドサービスAWSを行なっており、AWSを利用してサービスするゲームコンテンツは枚挙にいとまがない。オンライン接続はプラットフォームを問わず、もはや欠かせない機能であり、「Lumberyard」もオンライン対応している。もっとも、これは、AMAZONがゲームエンジンビジネスに参入する最大の理由なのだから、至極当然のことではある。
James Clarendon氏のセッションは、ゲームに必要なネットワーク機能にフォーカスしたもので、AWSとCloud Canvasさえあれば、何も悩むことなくゲームのネットワーク対応に関する諸問題が一挙に解決するとしていた。
Cloud Canvasはいくつかの異なるサービスの総称で、ローカルストレージ代わりに使用して個々の開発者間でデータ共有を行なうのに最適なSimple Storage Service(S3)、強力で柔軟なデータベースのDynamoDB、専用のサーバなしにクラウドでサーバ側プログラムを実行するLambda、匿名での利用でもFacebookやGoogleと連携することでもユーザーのログイン認証を行ない、デバイス越えのユーザーセッションをも管理するCognitoで構成される。
S3は必須ではないが、昨今では開発者間のデータ共有を、簡単で日常的に意識することなく、たとえ遠隔であってもローカルにあるように、といった方向で洗練されてきているので、その流れを受けてということだろう。実際、開発用の統合環境にファイル共有やリビジョン管理がインテグレートされているものは手間がなく非常に便利だ。
その他のDynamoDB、Lambda、Cognitoの機能は、どれもネットワークを利用するゲームには必須の機能で、それぞれに定番のショリューションが存在し、組み合わせのスタンダードも確立している。「Lumberyard」の最大の特徴は、Clarendon氏の言う通り、コアゲームエンジンとともに、これらのゲームサービスに必須な機能が統合的に提供されることだ。特に、すでにAWSを利用してゲームサービスを行なっているゲーム会社に対しては、各サービスの親和性の良さに一定の期待が持てるため、大きく響くことだろう。開発者は、次期プロジェクトへの導入ために、すでにでも情報収集と評価を始めたいところだろう。
AMAZONの目論見が果たして成就するか、引き続き注目したい。
ブースでは開発用統合環境を展示
16日から始まったEXPOにおいて、ゲームエンジンビジネスのプレーヤーとしては初出展となるAMAZONは、ブランド名の「Lumberyard」の名を冠したブース展示を行なっていた。最初に触れたように、AMAZONの強みでもあり、注力する部分でもあるのは、ほとんどが“外堀”であるため、筆者が受講したセッションもすべて“外堀”であった。ここにきて、ようやくゲームエンジンの開発環境らしい絵が見られた。
統合環境は、他社ゲームエンジンと比較して大きな違いはないように思え、特段に奇をてらった変更が加えられていないのは安心できる材料だ。スクリプトもFlow GraphでのビジュアルスクリプティングとLuaによるテキストベースのスクリプティングを「CryEngine」から継承している。ゲームロジックの実装は、この2つのスクリプト言語に加え、C++やC#でも行なうことができる。
現状、統合環境のUIや、ドキュメント類もほぼ英語のものしかなく、なかなか日本人開発者にとってはハードルが高い。そのことに関してはAMAZONにも問題としての認識があるようで、ブース担当者によると、現在ローカライズ対応を進めている最中ということだった。
まだまだ情報が少なく、手探り状態で未開の地を開拓するように進まなければならない「Lumberyard」だが、すでに何れかのゲームエンジンを活用した開発経験のある開発者なら、そこまでとっつきが悪いものではない。AMAZONの各オンランサービスとの連携には期待が持てるため、開発者には気軽に評価していただきたい。AWSサービスを使うと別途費用が発生するものの、「Lumberyard」自体は商用非商用に関わらず無料で、開発環境は一式はAWSサイトのLumberyardセクションからダウンロードできる。