ゲーム機技術総合

興味を持ったことを書いていきます。

さよなら、Xbox One

 

 

 「次世代機はまだか...」

 

2005年に発売されたXbox360は世界で8000万台を売ったゲーム機として広く認知されている。

Xbox Liveなどのオンラインサービスで家庭用機で本格的なオンライン対戦を楽しめるようになったのもこの世代である。

Xbox Liveは初代Xboxから存在するが、360世代では今ではおなじみ”CoD”シリーズや本格的にCS参戦した”Battlefield”シリーズ、Xboxを代表する人気フランチャイズ”Halo”などのマルチ対戦が流行りに流行った。

文字通り、現在定番のFPS文化を築き上げられたのはXbox360PS3の時代であると断言しても過言ではないといえる。

 

f:id:tikutikutan:20211014210148j:plain

*上はBFBC2(2010)のパッケージアート

これを可能にしたのはXbox360PS3のハードウェア。

そう、この世代は前世代に比べ大きくハード性能が向上した世代でもある。

CPUでは360とPS3IBMPowerPCベースのマルチコアが採用されている。

現在ではなくてはならないマルチコアをゲーム機においてはこの世代で始めて導入したのである。(ただし、PS3はCellと呼ばれる特殊な形態のマルチコアが採用されている)

GPUは固定機能処理からプログラマルシェーダへと変貌を遂げた。

360はAMD製のカスタムGPU(当時としては最先端の統合型シェーダ採用!)

PS3Nvidia製のカスタムGPUを採用。

これによりPCベースの開発手法が本格的にCS機に導入された。

これによりグラフィック描写をプログラムで表現できるようになり、複雑なグラフィック処理を意のままにコントロールできるようになった。

f:id:tikutikutan:20211014213101j:plain

上はGoW3(2011)、下はGoW2(2008)。同世代機のゲームでありながら続編では全く異なる表現を可能にした。技術的にも表現的にも様々な可能性を示すことができるようになった世代だ。CS機に秘められた潜在能力は高く、年を経ていくごとにグラフィックス表現は増すばかりであった。

しかし、そんなCS機を尻目に一足先に”次世代”へと突入したゲームが表れた。

youtu.be

そう、Battlefield3である。

今作はPC版においては64人対戦(BFBC2のCS機版は24人対戦)、しかもテッセレーションやCompute Shaderに対応した最新APIのDirectX11に対応した。

実際はCS機版でも発売されたがグラフィックスはDX9世代、対戦人数は24人、解像度は704pというものであり、PC版に比べれば全くの別物と呼べる代物だった。

そのDirectX11で表現される恐ろしいほどのグラフィックス、途方もない対戦人数はPCユーザーを歓喜の渦へと誘ったが、同時にCS機ユーザーはそれに対して指を咥えてみてるしかなかった。

そして、このときよりCS機民の間で大いにささやかれるようになった。

「次世代機はまだかと...」

360から1へ

2013年2月、PS4のアナウンスと共に次世代機ムーブメントが到来した。

やはりハード性能もそうだが、見どころは次世代グラフィックスだ。

PSM2013で公表されたKillzoneは2011年のBattlefield3に匹敵、それどころかそれをも上回るクオリティを示した。

これによりCS機も新たな時代に突入することになった。

youtu.be

それから時が流れ、2013年秋、Xbox360の後継機が発売された。

それが"Xbox One"であり、今回の主題である。

前世代機が360であったのに今回は1を捩ったネーミングとなっている。

その由来は”The All in one entertainment system"である。

youtu.be

俺「ん...?ゲーム機のデモというよりキネクトのデモだけど関係あるの?」

MS「もちろんです。何と言っても、Xbox OneKinect標準装備です

俺「マジで!?Kinect使うならハード性能もそれなりにいるでしょ!」

MS「いえ、GPU性能はPS4以下メモリもDDR3を使います。おっと心配なさらずにESRMAという高速オンチップメモリを搭載してるので大丈夫です。」

俺「...PS4は399ドルらしいけど、御宅は..?」

MS「499ドル!!大丈夫!!PS4より高いのはKinect標準装備だから!!」

俺「PS4買うわ」

こうして次世代戦争は終わりを告げた。

 生まれるべきではなかった

Xbox Oneは問題点がとくに多いゲーム機だ。

ローンチの失敗はCS機あるあるの話しでとくに語ることはないが

Xbox Oneに関しては今でも尾ひれを引いている問題が一つある。

それは”性能”の問題だ。

下で述べてる以下のとおりだ。

  1. GPU性能はPS4以下
  2. メモリもDDR3を使います
  3. ESRMAという高速オンチップメモリを搭載してる

1に関してはPS4Xbox One(以下XO)の性能差を決定づけたものであると断言できる。

PS4はCU数18基クロック数800MHz、XOは12基853MHzとなっており、クロック数はややXOがやや高いがそれでもPS4には敵わない。

Flopsで言えばPS4が1.8Tflops、XOが1.31Tflopsである。

またCU数の多さはテクスチャ処理、並列処理全般に影響する。

要するにグラフィックス処理においてPS4はXOよりも高かった。

これが絶対的に劣ってる時点でXOの完敗であったといえる。

 

2のメモリ周りに関してはゲーム機としては論外である。

MSは360においてGDDR3とeDRAMという構成で臨んでおり、メインメモリにGDDR3128bit接続を採用するなど帯域に気を配っていた。(ただしGDDR系メモリはDDR系よりもレイテンシが発生するためGPUのようなマルチスレッディングが効かないCPUではキャッシングを意識する点が重要である)

しかし、XOでは帯域幅の狭いDDR3 256bitバスをCPU、GPU共有メモリとして採用してしまう。

帯域幅は68GB/s。これでは帯域消費の激しいGPUが使うには非力すぎる。

AMDの同世代同規模GPUであるHD7790でもGDDR5 128bit接続を採用し、96GB/sの帯域をGPUが占有して使える点からみれば、XOのメモリ帯域幅は全く足りてないというのが適切だ。

MS「ちょっと待って!!XOにはESRAMがあるから帯域に問題ないよ!!」

俺「ほほう...」

 

3のESRAMは、XOのDDR3メモリの遅さを補うために用意されたオンチップスクラッチパッドメモリだ。

実は360でもeDRAMと呼ばれる特殊な高速メモリが採用されていたが、これはあくまでレンダーターゲット用のメモリである。360ではGDDR3をメインメモリに採用していたがCPUとGPUの共有メモリあるためお互いに帯域幅を食う問題があった。

そのためGPUが占有して使える専用のメモリを用意してこの問題を解決した。

eDRAMの容量は10MBしかないものの、720pのレンダリングにおいては余裕があった。

(しかし、MSAAを使えば10MBの容量を余裕で超えるため分割レンダリングが必要であったこと、その上、ハード末期に流行ったDeffered RederingではG buffer問題を抱えた)

では、360のeDRAMとXOのESRAMは何が違うのか?

一つは前者がGPUのメモリ付きコプロセッサ、後者が単なるオンチップスクラッチパッドメモリである点だ。

360のeDRAMは高速メモリであると同時に高速なピクセル処理が行える演算機が内包されていた。そのため、Z/ステンシル処理、α処理やMSAAなどの処理をeDRAM内で高速に行える点があった。eDRAMの容量に収まる範囲であればノーコストで演算処理が可能だった。

一方で、ESRAMはeDRAMのような固定機能はない。実のところ速いメモリだ。

容量は32MB、1024bitバス接続で帯域はリード時最高で204GB/s、最低時では109GB/s。

GPUは低速で大容量なDDR3か高速で低容量のESRAMのどれかに読み書きすることになる。

しかしDDR3ではGPUの性能をフルで利用できない。そのためESRAMを積極的に使う必要があるが、実のところこれが大きな問題である。

結論から言ってしまうと1080pで描画するとESRAMの容量が足りない。

Defferedレンダの場合、Z/ステンシルを含めた5枚のG bufferを生成するとしたら

4(ピクセルあたりのデータ量) x 1920(水平解像度) x 1080(垂直解像度)=8,294,000

およそG buffer1枚あたり8MBの容量が必要になる。

これが5枚分必要になると単純計算で40MBになる。これではESRAMには収まらない。

GPU性能的に問題がないとしてもこれでは話にならない。

そのためXOではネイティブで1080p出力のタイトルが限られている

解決策としては、ESARMに納めるなら720~900p程度で納めるか、もしくはG bufferの枚数を減らすしかない。

はたまたG bufferを使わないForward Renderingを採用してもいいが、Forwardの場合はDefferedに比べてライティングやシェーディングでGPUコアに負荷が掛かる。

そのためGPUの処理性能が問われる。ライバルに比べてGPU性能に心もとないXOがやるべき手法ではないのは明白だ。

これらの問題は現在でもXOタイトルで如実に見られる問題だ。

www.youtube.com

上の動画はDigital Foundryメンバーの座談会。XOのパフォーマンス問題と今後について

では、なぜこんなどうしようもないハードウェアとしてXOは生まれたのか?

答えはもちろんコイツにある。

 Kinect「またオレ何かやっちゃいました?」

f:id:tikutikutan:20220130035916j:plain

KinectXbox Oneの発表時に大々的に取り上げられたデバイスだ。

初代KinectXbox360時代に登場し、画期的なモーションセンサーとして取り上げられ、ダンスセントラルなどの体感ゲームからKinect操作を独自に取り入れたゲームも登場した。(SkyrimKinect操作は割と有名)

しかし、この画期的なデバイスXbox Oneのその後を大きく左右してしまう。

要点を抜き出せば以下に収まる。

  1. 499ドルという価格はKinectが招いた
  2. Kinect用に割かれる演算リソース
  3. Kinectの需要

まず499ドルという価格はKinectが招いた件について

これは当初、MSが行っていたXbox OneKinectを組み合わせたプロモーションの通り、Xbox OneのUIはKinectを使ったもの前提であったという話から連想されるものである。

つまり、Xbox OneKinectは別のデバイスとして設定されたものではなく、

Xbox Oneという製品そのもにKinectが組み込まれていたことを表している。

このことから生産コストの観点から見てもXbox One本体だけではなく、Kinectも大きな割合を示してる可能が高い。

これが実際のXbox Oneの生産コストの内訳である。

japan.cnet.com

f:id:tikutikutan:20211015011534j:plain

Kinectが75ドルもかかるという結果になっている。

見ての通りKinectが本体コストにおいてメインチップの次に 高い結果となっている。

つまりXOの499ドルという価格は、Kinectによって定められたものであるといえる。

次にKinect用に割かれる演算リソースに関してについてだ。

これはXboxヘッドのフィルスペンサーがXOでのKinect強制対応を緩和したときに、EurogamerがMSの担当者に詳細を確認したときに発覚した内容で明らかになっている。

 

www.eurogamer.net

"Yes, the additional resources allow access to up to 10 per cent additional GPU performance. We're committed to giving developers new tools and flexibility to make their Xbox One games even better by giving them the option to use the GPU reserve in whatever way is best for them and their games."

この時、初めてKinectの処理がGPU全体の1割程度に割かれているという事実が判明した。

PS4に比べて絶対的なGPU性能で劣っている上、Kinect強制によって貴重な演算リソースを取られている現実は開発者からみればあまりにも面白くない。

 

最後にKinectの需要についてだ。

正直、ここから先は書くのが面倒くさいため簡潔にいうと「初代Kinectは北米を中心に大ヒットしたけど、そもそもXboxユーザー自体はKinectを望んでいたのか?」

結果は皆さん、御存知のとおり。

結論から言えば

PS4よりも高い価格設定でなおかつPS4以下の性能。

ゲーマーからは受け入れられないKinect強制。

こうして、Xboxはゲーマーからの支持を失ったのである。

(ほかにもDRM問題はあったが、現在はダウンロード販売が主流なためDRMがごく当たり前の環境になってる。パッケージ版が根強かった当時からみれば異常な事態だが今思えば大した問題ではなかったと個人的に思う。)

嫌われ一子(Xbox One)の一生

過酷な運命を背負わされたXbox Oneに待ち受けていたのは残酷な現実だ。

御存知のとおり、360で培われたXboxのシェアはPS4に奪われ今ではMSもCS業界三番手に落ち着いてしまった。

しかし、Xbox One自体はハードウェアとして二度の大きなアップデートが行われたこともあり、ハードウェア面ではPS4、PS4Proにも劣るどころか最終的には健闘したといってもいい。

そして、次世代機であるXbox Seriesも登場し、One時代の中期に登場したXbox Game Passは今ではMSの中核事業として続いてる。

とくにXbox Game Passは会員数2500万を超えるほどのドル箱サービスといってもいいだろう。

Xbox Oneはダメなところをこれでもかと詰め込んだコンソールだったが、One以降はMSのハードウェア設計は大幅に見直され、サービス面ではCSだけでなくPC、クラウドと幅広い展開ができるようにもなった点も大きい。これはCSのみに注力していた360、One初期のころに比べれば大きな進化といってもいい。PCゲーム市場はこれからも成長が期待される分野であり、PC Game Passはその足掛かりとなる存在だ。

ファーストスタジオも、18年からの連続買収に続き、21年のBethesda買収、23年買収完了予定のActivision Blizzardと、かつてのMSとは言えないような様になっている。

 

かなりバイアスが掛かった見方かもしれないが、今のMSゲーム事業の発展はまさにXbox Oneの失敗なくして語れないほどである。

惜しくもMSは2020年内にXbox One全モデルの生産を終了し、21年にはHalo InfiniteをもってOneへのファーストタイトル供給を終了させた。

gigazine.net

もちろんサポートは継続されるだろうし、サードタイトルもしばらくは出る見通しだ。

ただ、私から今言える言葉があるとすれば「8年間、お疲れ様。安らかに眠れ」