Halo Infinite のケーススタディ
Xbox では、ゲームが環境に与える影響を減らすことがプレイヤーと業界に対するコミットメントとしています。 ゲームのエネルギー コストとビデオ ゲームの環境への影響に関する認識が、プレイヤーの間で高まっています。 また、ゲームパブリッシャーの間でも、環境管理の強化に対する関心が高まっています。 私たちは、ゲーム体験に没頭しているゲーマーには気づかれないような方法で、ゲームにエネルギー効率の最適化が導入されている厳選された例を共有したいと思いました。 メニューやロビーから、タイトルがアイドル状態になった場合、または特定の条件下でゲームプレイ中に起こることまで、省エネルギーのアイデアをゲームに提供する無数の方法があります。
注意
ご存知でしたか...ゲームが平均 160W を消費し、1 年間毎日 3 時間プレイされる場合、約 175 kWh の電力を使用できます。 100k以上のデバイスを乗算し、13.5Mポンドの石炭燃焼による温室効果ガス排出量に相当する EPAの電卓 に従って乗算します。 エネルギー効率がわずか 10% 向上するだけで、環境への影響を大きく引き出すことができます。
Xbox のサステナビリティディレクターである Trista Patterson、Halo Producer Alex Le Boulicaut、シニア テクノロジー アーティストのスペンサー・コパッハが 343i のサステナビリティワーキング グループを設立し、Halo ゲームを実行するために必要な電力を見積もり、この情報を使用してスタジオ全体のコラボレーションを促進しました。 343 は、Xbox がゲーム開発に関連するエネルギー消費と二酸化炭素排出量を削減するための A/B 実験に取り組んだ最初のケースとなりました。 Power Monitor ツールを使用して、343i はベースラインを確立しました。4K/60FPS で実行されている Xbox Series X では、平均 GPU 使用率は約 92% であり、平均電力消費量は 67.5% に相当します。 さらなる実験を通じて、343i は、設定メニューを表示するためにゲームを一時停止してぼかした場合でも、プレイヤーが見えない背景に 4K 画像がまだ描画されていることを認識しました。 [一時停止] メニューの解像度を下げることで、343i はプレイヤーのエクスペリエンスに悪影響を与えることなく、エネルギー使用量を 15% 減らすことができました。 これらの分析情報を念頭に置いて、343i は現在、より大きな省電力の可能性を探っています。
Halo Infinite のチームは、ゲームプレイの忠実性に悪影響を与えることなく、メニューの消費電力を削減する方法をすぐに見つけました。 次のセクションでは、彼らが発見したパフォーマンスの改善点を簡単にまとめます。
ステージ 1/4: Halo Infinite のアーマー ホールでは、343 Industries が 4K と 60 FPS でこれらのメニューを出荷しました。
- 平均GPU: 96.2%
- 平均パワー: 67.5%
以下を見ると、4K/60FPS で実行されている Xbox Series X では、平均 GPU 使用率が約 92% であることがわかります。 これは、システム全体の平均消費電力が 67.5% に相当します。 この数には、GPU、CPU、およびコンソールのその他のコンポーネントが含まれます。
ステージ 2/4: 2 番目のステージでは、30 FPS に低下した場合の動作を示します。
- 平均GPU: 49.2%
- 平均パワー: 42.2%
- GPU の節約: 49.4%
- 省電力: 37.5%
消費電力は 67% から 42% に増加します。 これは、60 FPS から 30 FPS に低下すると、合計 37% の節約になります。 唯一の問題は、プレイしているモニターが可変リフレッシュ レートなどをサポートしていない場合、フレームレートの変化が非常に目立つ場合があり、望ましくない影響を引き起こす可能性があることです。 全体として、メニューの高い正確性を維持するためにフレームレートを低下させるには、より多くの開発時間が必要となり、これはチームにとって望ましくないことでした。 ご安心ください。 このため、代わりに解決に焦点を当てることにしました。
ステージ 3/4: 4K 画像から 1080p イメージに移動しても、60 FPS を維持すると、同様の結果が表示されます。
- 平均GPU: 34.7%
- 平均パワー: 43.5%
- GPU の節約: 64.3%
- 省電力: 33.6%
このソリューションを使用すると、ベースラインでの 67.5% の消費電力が 1080p での 43.5% に減少し、約 34% の電力節約になります。
プレーヤーが期待する画質に影響を与えることなく、解像度の変更を行うのが最も簡単だと思われたため、解像度の変更を検討することにしました。 秘訣は、ゲームプレイの一時停止メニューなど、プレーヤーから見えない場所でこれらの解像度の低下を隠すことでした。 これについては後ほど詳しく説明します。
読みやすさ、特にアクセシビリティの観点から UI の解像度を下げることはできませんが、Halo Infinite の消費電力はわずかに減少するため、アクセシビリティについては妥協したくありませんでした。
ステージ 4/4: 最後に、次の図は、解像度とフレームレートの両方を同時に下げる場合に達成できる節約の種類を示しています。
- 平均GPU: 27%
- 平均パワー: 30%
- GPU の節約: 72%
- 省電力: 55.6%
消費電力をベースラインの半分以上、つまり平均消費電力の 30% に対して 67.5% 削減できます。 将来的には、プレイヤーのエクスペリエンスに影響を与えることなく両方のパラメーターを減らす機会をさらに調査したいと考えています。 これは現在、私たちのサステナビリティチームが個人の能力開発の時間中にバックグラウンドで調査しているものです。
最終的に、Halo Infinite は、プレイヤー エクスペリエンスへのリスクや影響を最小限に抑えて実装するのが最も簡単だったため、解像度を下げることのみを選択しました。
私たちの調査中に、私たちのチームは、ゲームが一時停止され、設定を表示するために画面がぼやけているときに、プレーヤーがこれらのアセットを見ることさえできないにもかかわらず、バックグラウンドで 4K 画像をレンダリングしていることに気付きました。 そこで、プレーヤーのエクスペリエンスに影響を与えずに消費電力を削減するために、一時停止メニューの解像度を下げることにしました。
この作業は、当社のグラフィックス エンジニアの 1 人である Andrew Nolan によって実装されました。彼は、発売に向けて当社のプログレッシブ解像度システムも開発しました。
[一時停止] メニューの解像度を下げると GPU の負荷が大幅に軽減され、消費電力が 15% 減少しました。 もちろん、フレームレートを下げることによってさらに節約することもできます。
下の画像は、Xbox Series X で 4K / 60 FPS で実行されているキャンペーン ゲームプレイを示しています。 複数のデバイスで消費電力を測定し、合計消費電力が GPU + CPU 容量の 64%、つまり合計 AC 電力 185 ワットであることを確認しました。
以下の画像は、持続可能性機能の実際の利点を示しています。ゲームは同じ場所で一時停止されますが、解像度は自動的に 1080p に下げられます。 変更後は、GPU + CPU で 55% の消費電力、つまり合計 165 ワットの AC 電力を測定できました。
要約すると、プレーヤーのエクスペリエンスにまったく影響を与えることなく、消費電力を 15% 節約できます。 結果はプレイヤーには見えません。 機能上の変更を開発すると、協力して業務を遂行できることを証明し、経営陣の信頼を得ることができました。
この最初の小さなステップは、私たちのチームと私たちの足跡をたどる他のチームにとってのベンチマークを定義し、将来に向けてより大きな節電の機会について考え始める機会でもありました。
3Dメニューは、ゲーマーに優れたエクスペリエンスを提供しながら、高品質の基準を維持できることを証明しています。 このシステムは、多くのリソースと実行時間がある場合に適切に機能しますが、リソースの競合や急激なターンアラウンド時間がある場合、これはすぐにそれ自体に対して動作し始めることができます。 このシステムを改善し、小規模なチームでより迅速に反復できるようにし、品質基準も維持できるようにしました。 今回の見直しにより、これらの完全な 3D メニュー内の電力消費量を調査し、新しい 2.5D セットアップでより良い電力消費のために実装できる持続可能性側の改善があるかどうかを確認する機会も提供されました。
つまり、2.5D ゲームは両方の世界で最高のものをブレンドし、ゲームプレイのシンプルさを維持しながら奥行きを認識できます。 では、違いは何ですか?
3D デザイン:
- 環境: 3D ゲームでは、ゲームワールドは長さ、幅、深さの 3 つの次元で存在します。 プレイヤーは、この 3D 空間内のすべての方向に自由に移動できます。
- グラフィックス: 3D モデルは、文字、オブジェクト、環境を表すために使用されます。 これらのモデルは奥行き、ボリュームを持ち、異なる角度から見るために回転させることができます。
2.5D デザイン:
- 環境: 2.5D ゲームは、2D と 3D の両方の要素を組み合わせています。 2D 環境を描写しますが、3D ゲームプレイが組み込まれています。またはその逆も同様です。
- グラフィックス: キャラクター モデルは 3D で表示される場合があります。背景オブジェクトは、完全にモデル化された 3D オブジェクトではなく、2D スプライトを使用して表されることが多いです。
- パースペクティブ: ゲームでは等角パースペクティブを使用できます。これは、2D オブジェクトを、視野角が原因で 3D であるかのように表示します。
長所:
- 最小限のコンポーネント量
- アップグレードが簡単
- UGC 文字の完全なサポート
- 2D 背景画像は、任意の DCC ツール パッケージ (Unity、Faber、Unreal、Maya など) で作成できます。
- 背景画像は、社内で生成することも、アウトソーシングすることもできます
- 読み込み時間が大幅に向上する必要がある
- ゲーマーのデバイスの電力消費量とエネルギー料金を低くする必要がある
制限事項:
- 新しい 2D バックプレートに合わせて 3D アバターを点灯させる必要がある
- 背景でモーションをサポートできない
- UGC アバターでは DOF をサポートできませんが、DOF を背景画像にベイクできます
この消費電力の比較では、Xbox Series X 3D メニューと新しい 2.5D メニュー実装の比較を行いました。 ゲームの実際の小売版には動的解像度があるため、これらのメニューの解像度は GPU 使用量に基づいて動的にスケーリングされるため、パフォーマンスを最大化し、常に可能な限り最高の解像度を提供します。 ただし、内部プロファイル モードを使用して、解像度をロックしたままにして、PIX の電力使用量の数値を一貫性のあるものにすることができました。
変更を加える前に、GDK の PIX で Power Monitor を使用して、元の 3D グラフィックスに構成されたマルチプレイヤー画面の平均消費電力を測定しました。 変更が加えられた 前 の 3D メニューは、本体の電源予算の平均 64.8% として測定されました。 次の表は、2.5D..に変更 した後 の測定値を示しています。
内部解決 | フレームレート | 2.5Dパワー測定 | 注意 |
---|---|---|---|
2400 x 1800 | 60 FPS | 47.5% | アップスケールの前に内部解像度を削除し、フレーム レートを削除すると、ほとんどの節約が実現されます |
1920 x 1080 | 30 FPS | 26.3% | 2.5Dメニューを高解像度でロックしても大幅な節約が可能 |
1920 x 1080 | 60 FPS | 35.8% | アップスケールの前に内部解像度を削除すると、より多くの節約が実現されます |
解像度の上限をロックし、2.5D セットアップを実装すると、約 30% の節約になります。 これをさらにプッシュするには、解像度を下げてアップスケールする前にロックすると、さらに節約できます。
常緑のサポートに必要な 8 人を見積もります。これは、元の設定に対して 11 人から 17 人少ない人が必要です。 完了までの合計時間は3〜4週間でした。 時間コストの削減は、2 ~ 3 か月間節約されると推定されます。