banner

ブログ

Nov 19, 2023

ニスを剥がす: ディアブロ IV のグラフィック — ディアブロ IV — ブリザードニュース

Diablo IV は太平洋夏時間の 6 月 5 日午後 4 時に正式にリリースされ、勇敢な放浪者が横断できる新たな地獄の次元が開かれます。 サンクチュアリのあちこちでデーモンを殺している人たちは、ディアブロ IV の特徴である魅力的な闇にすぐに気づくでしょう。 この美学は、宇宙のルーツ、オリジナルのディアブロとディアブロ II で愛されたゴシック調を思い起こさせます。 これらのゲームの最初のゲームが登場したのはほぼ 27 年前であり、それ以来、ビデオ ゲームのビジュアル言語を確立するために使用されるテクノロジーは大幅に変化しました。

リード ソフトウェア エンジニアの Keven Cantin、プリンシパル ソフトウェア エンジニアの John Buckley と Kevin Todisco、リード テクニカル アーティストの Aaron Aikman、シニア ソフトウェア エンジニアの Samuel Delmont が、ディアブロ IV のグラフィックスに命を吹き込むためのチームのアプローチを説明し、開発中に使用されたテクノロジーの一部を紹介します。 、スケーラビリティへのアプローチを詳しく説明します。

哲学と指導原則

テクノロジーによる闇への回帰

Sanctuary のスケーラビリティ

起動時のコンソールのパフォーマンス

次は何ですか

Diablo IV グラフィックス チームの目標と哲学は、Blizzard の成功を推進するものと同じ価値観に根ざしています。 私たちはゲームプレイ第一の会社です。つまり、私たちが行うすべての決定は、プレイして楽しいゲームを作成するために行われる必要があります。 サンクチュアリの定命の領域を独自に反復するたびに、私たちはレンダリング テクノロジーの限界を押し広げてきました。 Diablo IV はダークなトーンを持っているため、私たちは「そのアイデアを具体的にサポートするために、グラフィックス チームとして何ができるだろうか?」と自問しました。 それに答えるために、私たちは少数のソリッド フィーチャを選択し、幅広いオプションよりも高度に洗練された結果を優先しました。

私たちの哲学の中心にはコラボレーションがあります。 私たちのグラフィック エンジニアとテクニカル アーティストのチームは、さまざまな Diablo IV アート チームと協力し、デザインと開発のプロセスで協力しました。 複数の専門分野にまたがるストライキ チームが特定の機能に取り組んでいることは、私たちにとってよくあることです。 私たちはアート チームだけでなく、ゲームに携わる全員の視点を非常に重視しています。

私たち全員にとって重要なもう 1 つの側面は、ゲームを幅広い視聴者が利用できるようにし、できるだけ多くのプレイヤーがゲームを十分に楽しめるようにすることです。 私たちは、プレイヤーがさまざまな機能を備えたさまざまなデバイスを使用している可能性があることを理解しており、全体的に高性能で視覚的に魅力的なエクスペリエンスを確実に提供したいと考えています。 当社のグラフィックス パイプラインは、ローエンド ハードウェアで効率的に実行されるように最適化されています。 ハイエンドのハードウェアをお使いの場合は、デバイスの追加機能を活用して視覚的な忠実度を高め、ゲームを新たな高みに引き上げます。

トップに戻る

Diablo の暗い外観は、ゲーム マテリアルにより現実的な外観を与える物理ベース レンダリング (PBR) によってサポートされています。 名前が示すように、現実世界と物理値を使用して、仮想ゲーム世界における光と物質の相互作用をモデル化します。 ビデオ ゲームでは、自分自身の現実をコーディングすることができ、それは確かにとても楽しいものです。 しかし、グラフィックスを現実から完全に切り離すと、非常に混乱する可能性があります。 私たちはテクノロジーを現実世界の物理学に基づいて構築し、ゲームに適していると思われる場合にのみ現実から逸脱することを選択しました。 たとえば、現実世界には「負の光源」などというものはありませんが、ゲームでは闇の魔法で世界から光を引き離したい場合があります。

物理ベースのマテリアルを実現するために、アート チームは多くの新しいデータを作成して、光がその表面とどのように相互作用するかをグラフィック エンジンに指示しました。 たとえば、私たちのアート チームは、特定のゲーム内マテリアルから放射される光の波長、微細な細部がどの程度滑らかか粗いか、表面がどの程度金属的であるか、その他多くの側面を決定しました。

上の写真は、リリスのマテリアルの物理的特性を個別に分類したものです。

アートの方向性が早い段階で焦点になったため、Diablo IV のアートではより暗いトーンを表現する必要があることがはっきりとわかりました。 これは、非常に高いフレーム レートを維持しながら、ハードウェアからできるだけ多くの影を取り出すことを意味します。 常に変化するオープンワールド、ランダムに生成されるダンジョン、ダイナミックな天候、独自のキャラクターを組み込んだシネマティックスを備えているため、実装できる最適化トリックやショートカットはほとんどありません。 幸いなことに、今日のグラフィックス カードとコンソールは驚くほど高速で、1 秒あたり数兆回の数学的演算が可能です。これは、ほんの数十年前には考えられなかった驚異的な偉業です。 これらの何兆もの演算により、現実そのものの複雑な詳細を厳密にモデル化する複雑な照明と影の計算を実行できるようになります。

写真の複雑な形状の網は、Diablo IV ダンジョンの照明を表しています。

ここでの複雑さは、これらすべての個別の光源の影を計算する必要があることから生じます。 これらの計算を高速化するために、私たちは遅延レンダラーとして知られるものを実装することにしました。これは、異なる光源間で複雑なマテリアル計算を共有する「実証済みの」グラフィックス技術です。

遅延レンダラーの上には、ゼロから構築したシャドウの計算、保存、オーバーレイを行うための精巧なシステムが搭載されています。 ダンジョンはランダムに生成されます。 どのダンジョン構成が事前に出現するか正確にはわかりません。 幸いなことに、ダンジョンのすべての部分が生成後に変更されるわけではありません。 ダンジョン内を移動すると、照明システムがこれらの影の計算を管理およびスケジュールしようとするため、すべてが一度に完了するわけではありません。 シャドウ システムは、床や壁などの静的オブジェクトを利用するように構築されており、多くの場合、これらの計算を後で使用できるように保存し、これらの保存された計算の上にキャラクターなどの動的オブジェクトをオーバーレイします。

優れたマテリアルはゲーム アートの基礎を表しますが、そのアートに命を吹き込むには照明と影が必要です。 マテリアルと同様に、Diablo IV のライティングは現実世界の物理学に基づいています。 このような技術的な詳細は、芸術的なビジョンを表現しようとしているアート チームに過大な負担を与えやすいため、これらの詳細を素晴らしいアート ツールのセットの下に重ねて、このチームが専門分野に集中しやすくしました。 これを行うために、私たちは Diablo IV 用のまったく新しい強力なアート ツール セットを構築しました。 これらのツールの内部には、ルーメン、放射照度、カンデラなどの該当する用語を含む多くの物理学が含まれています。

開発中に予期せぬ驚きの 1 つは、間のスペースの重要性でした。 ザラザラとした現実的な世界でダークトーンを実現するには、ライトとオブジェクトの間にある塵や粒子をモデル化する必要がありました。 これはボリューム レンダリングと呼ばれ、Diablo IV のアートに命を吹き込む上で重要な役割を果たします。

以前は、パーティクル システム、長方形の上に写真を配置してこれらの効果を模倣し、カメラの前でこれらを重ねていました。 その結果、塵と煙のような錯覚が得られましたが、それは原始的でした。 現実の世界では、光は跳ね返り、壁などの硬くて密な構造と相互作用します。 しかし、それはまた、空気中の塵や粒子の地雷原を通過し、途中で物理的特性を変化させます。 Diablo IV では、空気中の粒子が光るように空気をモデル化しました。 光は、ゲーム世界の仮想カメラに向かって移動しながら、時には散乱し、時には吸収されながら、空ではない空間を移動します。 すべて現実世界の物理学を使用しています。 ステンドグラスの窓自体が空気中に光を放ちます。

Diablo IV のハイライトの 1 つは、ストーリーがゲーム内シネマティクスを通じて語られることです。 カメラがキャラクターに近づくと、肌を正確に表現することが重要になります。 リリスの羽のように、光は皮膚を裏側から表側に透過します。 現実の世界でも、光は皮膚に入り、内部で反射し、別の場所から皮膚から出ます。 光は、それが通過する肉、血、骨によって変化します。 表面下散乱として知られる物理現象。 この複雑な光の相互作用をモデリングすると、キャラクターの顔に命が吹き込まれます。モデリングがなければ、顔はプラスチックのように見えてしまいます。

左の画像は、現実的な光の分布を持たないゲーム内のスキンを示し、右の画像は、肌全体に現実的に分布している光を示しています。

トップに戻る

暗闇への回帰をサポートするもう 1 つの新しいテクノロジーは、ハイ ダイナミック レンジ ディスプレイです。

HDR は、このテクノロジーをサポートするディスプレイが市場に増えているため、非常にホットなトピックになっています。 Diablo IV の HDR について詳しく説明する前に、HDR とは何なのか、そして過去数十年間に私たちが慣れ親しんできたディスプレイ テクノロジと比較した HDR の利点について詳しく話しておくとよいでしょう。

以前のディスプレイは、特定の範囲の明るさしかサポートできませんでした。 厳密に言うと、下限は約 0.1 ニトでした。ニトは平面上の明るさの単位で、1 ニトは 1 平方メートルの面積のろうそくの明るさです。 これらの古いディスプレイの上限は 80 nit で、それほど明るくありません。 ブラウン管テレビに慣れている人なら、おそらく 80 nit あたりがピークに達したでしょう。 圧倒的に見えてしまう傾向があります。 HDTV が市場に投入されると、ディスプレイ メーカーは自社製品の見た目を最高のものにしたいと考えました。 そこで彼らは、ディスプレイの輝度を 300 nit のような値まで上げ始めました。 また、ハント効果と呼ばれるものにより、明るい色はより彩度が高く見えます。 これにより、HD ディスプレイ上で色がより際立ち、画像がより鮮やかに表示されます。これらはすべて、ゲームをプレイ中に見たいものです。

HDR ディスプレイ規格は、その範囲を現在の最大 10,000 nit までさらに拡大し、OLED テクノロジーにより、画面の任意の部分で真の黒を実現できるようになりました。 これらの進歩は、ゲーム エンジンの HDR 内部レンダリングを、SDR 標準に必要な範囲圧縮なしでディスプレイに直接送信できることを意味します。 より明るい明るさを実現できるだけでなく、Diablo IV では最も暗い暗闇も実現できることがさらに重要です。

これがゲーム内でどのように活かされるのか見てみましょう。 このシーンでは、ディスプレイに出力される明るさの範囲を表示するために、疑似カラー ビジュアライザをオンにしています。 以下は、後続の 2 つの画像を解釈するための凡例です。

まず、Diablo IV を SDR ディスプレイに搭載しています。

次に、それを HDR ディスプレイ上の同じシーンと比較してください。

HDR のシーンが画面の一部で真の黒を実現しており、全体的にはかなり暗くなっていることに注目してください。 では、なぜ SDR のシーンは非常に明るく見えるのでしょうか? SDR ディスプレイの場合、画像をトーンマップして、最も暗い値を 0.1 nit の下限まで上げる必要があります。これは、最初のスクリーンショットの影で確認できます。 この範囲圧縮は、シーンの残りの部分の明るさを高めることも意味します。そうしないと、すべてが影になって見えてしまいます。 このような問題は「黒つぶれ」と呼ばれることが多く、SDR ディスプレイのトーンマッピングではこれを回避します。

対照的に、HDR では、このダンジョンの薄暗い照明をより忠実に再現でき、影の中に純粋な黒の領域も含めることができ、Diablo IV のダークでゴシックな雰囲気をさらに高めるのに非常に役立ちます。

オープン ベータ中に、ゲームの黒レベルが HDR ディスプレイ (特に OLED) が可能な暗値を超えて「持ち上げられている」ように見える問題がありました。 私たちのチームは、これはカラー ルックアップ テーブルでのサンプル分布を支援することを目的とした log() 関数によるものであると結論付けました。 log() 関数は、カラー キューブ全体にサンプルを適切に分散するのに優れた機能を果たしますが、数学マニアなら、20 は 1 であり、2 ~ 10 であっても 0.000976 であるため、0 に到達することはできないことに気づくでしょう。 実際、0.000976 は、バグによりゲームがフレームバッファに入れることができた最小のカラー値であるため、重要です。 ディスプレイ メーカーが SDR テレビに追加した画像処理のおかげで、これらの値を取得すると、ディスプレイには黒に近いものが表示されます。 ただし、HDR TV では、これらの値はより文字通りに解釈されます。 この値 0.000976 は、ディスプレイ上の約 0.07 nit の明るさに相当します。これは、OLED のゼロに近い最小値をはるかに上回っており、ゲーム内の暗いすべてのものを異常に明るくしているように見えます。 この問題を Server Slam に間に合うように修正できたことをうれしく思います。

オープン ベータとサーバー スラムの間に加えたもう 1 つの重要な変更は、HDR 専用の新しいトーンマッピング カーブの導入でした。 内部 HDR 値を取得してディスプレイに直接送信することは、カメラで写真を撮り、フィルターを追加せずに投稿するのと同様であると考えることができます。 少し「色あせた」ように見えたり、コントラストや鮮やかさが均一に欠けているように見える場合があります。 アート チームが厳選した新しいトーンマッピング カーブを導入することで、HDR で求めていたコントラストと彩度を実現しました。 これはおそらく、この砂漠のシーンで最もよく示されています。 まずはトーンマップされていない画像。

そして、HDR トーンマップを使用した同じシーンです。

非常に微妙ですが、これらの画像を行ったり来たりすると、トーンマップされた画像のコントラストが増し、砂が灰色ではなくなり、むしろ砂っぽくなっていることがわかります。

また、色の彩度にも微妙ですが重要な影響を与える可能性があります。 このシーンの 2 つの光源に注目してください。

画像の右側の光源は自然に見えますが、最も明るい部分のコントラストが不足しています。 次に、HDR トーンマッピングを使用して同じシーンと比較してください。

繰り返しますが、その効果は微妙ですが、非常に重要です。 左側の光源のオレンジ色の輝きは赤方偏移し、右側の照らされた領域はある程度の彩度を獲得しています。 これらの変更は、SDR と HDR の両方のディスプレイでゲームの同じ外観と操作性を維持するために非常に重要でした。

私たちは、Diablo IV の SDR および HDR バージョンをデフォルトで美しく見せるために熱心に取り組んできました。 ディスプレイや周囲の室内照明の違いを考慮するために利用できるキャリブレーション オプションもあります。 以下に示すのは HDR キャリブレーション画面です。ここで黒点、明るさ、白点を調整して、ゲームのビジュアルを好みに合わせて調整できます。

トップに戻る

グラフィックス テック アートは、シェーダーとプロシージャル アート生成の芸術性と、頂点と最終的にはピクセルを画面にもたらす低レベルのレンダリングの詳細を融合することで、エンジニアとアーティストの間のギャップを埋めるのに役立ちます。

シェーダー作業のほとんどはピクセル シェーダーで行われ、アルベド、ラフネス、法線、アルファ、エミッシブなどの物理ベースのマテリアルの値を出力します。 シェーダーの作成は、出力前にデータにアクセスして変更するための一連の手順を作成することに似ています。 データにアクセスするということは、多くの場合、エンジンの外部で作成されたテクスチャをサンプリングすることを意味しますが、興味深いのはそのデータが混合されるときです。

視覚効果の場合、これは、フレームごとのテクスチャを作成することなく、漂う霧、燃えるような地獄、または有毒なプールを作成する方法でタイリング ノイズ テクスチャを組み合わせることを意味します。 また、2D 方向情報を持つテクスチャを使用して、ノイズ テクスチャを歪めてさらに変化させることもできます。

キャラクターは、単純なシェーダー要素とシェーダー機能の興味深い組み合わせを表し、炎上、毒、ステルスなどのステータス効果を伝えます。 環境とのよりダイナミックなインタラクションを追加するために、キャラクターは雨に濡れ、室内で乾きます。 激しい戦いの中で、プレイヤーは使用するスキルによっては血まみれになる可能性があります。 また、プレイヤーの近くでの高忠実度をサポートするために、キャラクタ シェーダはクローズアップ中に高詳細テクスチャを統合します。

環境シェーダでは、方向ブレンディング、適応テクスチャ スケーリング、ディゾルブなどのさまざまなテクニックも適用されます。 ディレクショナル シェーダを使用すると、雪に覆われた岩のように、表面が向いている方向に基づいてさまざまなテクスチャをブレンドできます。 曲率データを使用して、環境アセットのエッジとキャビティの色と粗さの値を変更できます。 プロップ シェーダは発光要素を使用して光り、インタラクティブなオブジェクトに注意を引きます。 地形シェーダは、タイル化可能な多くのテクスチャを複雑にブレンドして、自然な感触の地面を作成します。 シェーダの複雑さを制限するために、レンダリングするフレームごとに複数のテクスチャをブレンドするのではなく、複数のテクスチャを 1 回だけ組み合わせる仮想テクスチャを作成しました。

水シェーダは、いくつかのピクセル シェーダ技術を利用して現実をエミュレートします。 アーティストは、ノイズ テクスチャのレイヤーのマスクをペイントし、時間の経過とともに変形させることができます。 水面下のシミュレートされた光が屈折して歪み効果を生み出し、色は水深に応じて変化します。 さらに、キャラクターは水と対話することができます。 プレイヤーとモンスターが水の中を通過すると、航跡が発生し、泡が巻き上げられます。 頂点シェーダー要素を使用すると、サーフェスの頂点の位置を変位できます。 これは、海の波が海岸に押し寄せたり、スキルが爆発を引き起こしたりするときに特に顕著です。

頂点シェーダーと言えば、多くの環境アセットは数学を使用して、静的メッシュとなるものを動かします。 キャラクターやスキルが対話すると木の葉が動き、風の波が草の中を転がり、肉の成長がうねり、血の塊や手足がうごめきますが、これらはすべてシェーダーでデータと数学を使用することによって行われます。

トップに戻る

Diablo IV は、Windows PC および 2 世代のコンソールで実行できるように構築されています。 これをサポートするために、可能な限り最高のゲームプレイ エクスペリエンスを提供するために各デバイスに必要なフレームレートを尊重しながら、エンジンをスケーラブルにして品質を維持できるようにするための複数のシステムが実装されています。

メモリの制約や CPU および GPU のプロセッサ能力など、PC やコンソールの機能を考慮すると、Diablo IV は、それを実行しているデバイスに最適なレベルでパフォーマンスを発揮します。 たとえば、メッシュやテクスチャなどのアセットをより低い詳細レベルでロードでき、同じ処理をシェーダ、視覚効果、ポストエフェクト、その他のシステムに適用できます。これらの各設定を微調整することで、画質を優先することができます。パフォーマンスを超えたり、その逆も同様です。

Diablo IV のエンジンは、PC のハードウェアに最も互換性のあるグラフィック設定を自動的に選択します。 低、中、高、超の 4 つのプリセットから選択できます。また、別のプリセットを選択して、好みに合わせて品質とフレームレートを微調整するオプションもあります。 ただし、さまざまな設定がメモリ使用量や処理コストなどの制約に与える影響を理解することが重要です。

パフォーマンスの主な要素の 1 つは、ゲームがレンダリングされる解像度です。 PC でプレイする場合、世界は解像度パーセンテージ スライダーに基づいて低いまたは高い解像度でレンダリングされ、プレーヤーが使用しているモニターまたはウィンドウの最終解像度に合わせて再スケールされます。

解像度パーセンテージを下げると、ゲームの内部解像度が低下し、画像がぼやけますが、フレームレートは向上します。 一方、解像度パーセンテージを増やすと内部解像度が上がり、より多くのピクセルがレンダリングされるためパフォーマンスが低下し、より多くのメモリが必要になります。 こうすることで、エイリアシングも低減されながら、品質が向上し、より詳細な画像が得られます。

デフォルトのアップスケール方法の代替として、NVIDIA DLSS 3 を含むいくつかのアップスケーリング オプションが PC で利用可能で、最終画像の高解像度を達成しながら、世界を最小限の品質損失で低解像度でレンダリングします。 一方、コンソールでは、アップスケーリングと動的解像度管理を組み合わせて、常に高いフレーム レートとビジュアル品質を維持します。

テクスチャ品質オプションは、メモリ使用量とシームレスなゲームプレイに最も大きな影響を与える設定の 1 つです。 合計 4 つの品質オプションから選択できますが、ここでは Ultra と High の 2 つに焦点を当てます。 最高品質の Ultra では、Battle.net 内のインストール オプション メニューから高解像度アセットを選択する必要があり、システムに少なくとも 32 GB のメモリがインストールされている必要があります。 Ultra 品質は 4K モニターでプレイするときに最適に使用されますが、その場合、ゲームはより多くのメモリを使用します。 高オプションは、1440p および 1080p 解像度のディスプレイに適しています。 テクスチャの品質を下げると、ゲームは低解像度のテクスチャを読み込むようになり、パフォーマンスが向上しますが、テクスチャが柔らかくなる代わりにゲームで使用されるメモリが削減されます。

シャドウの品質もメモリ使用量に大きな影響を与えます。 この設定を下げると、メモリ使用量が減り、パフォーマンスが向上しますが、太陽とローカル ライトの影の両方で影の鮮明さが低下します。

メモリが懸念される場合は、テクスチャ品質とシャドウ品質の両方を下げることをお勧めします。 他の設定の一部はメモリに関連する影響を及ぼしますが (ジオメトリの複雑さなど)、ほとんどの設定は影響をほとんどまたはまったく与えません。 個々のオプションの詳細については、設定メニューを参照してください。

トップに戻る

Diablo IV は複数のコンソールでリリースされる予定です。 最高の品質を得るために、各コンソールに最適な値を個人的に選択しました。 以下にリストされている解像度とフレーム レートは、Xbox コンソールおよび同様のハードウェアでのパフォーマンスを表しています。

Xbox:

トップに戻る

私たちのグラフィカルな野望はここで終わりません。 リリース後、チームは新機能の導入と既存の機能の強化と最適化を継続します。 皆様からのフィードバックを歓迎し、Diablo IV フォーラムに関するご意見をお聞かせください。 しかし今のところは、『Diablo IV』を芸術的に不気味なものにしているグラフィックスについての深い掘り下げにご参加いただきありがとうございます。

サンクチュアリでお会いしましょう! - Diablo IV チーム

前述したように、NVIDIA DLSS 3 は、PC 上の Diablo IV で利用できるアップスケーリング オプションの 1 つです。 NVIDIA DLSS 3 を使用すると、GeForce RTX 40 シリーズ グラフィックス カードのフレーム レートを倍増して、Burning Hells の炎をより明るく燃やすことができます。 DLSS 3 を有効にする場合は、ここにアクセスしてページの一番下までスクロールしてください。

NVIDIA の Diablo IV GeForce Game Ready ドライバーは、GeForce Experience の [ドライバー] タブまたは GeForce Web サイトからダウンロードできるようになりました。

トップに戻る

哲学と指導原則 テクノロジーを通じた暗闇への回帰 「ディアブロ IV」の HDR テクニカル アートとのギャップを埋める サンクチュアリのスケーラビリティ ローンチに向けたコンソールのパフォーマンス 次に何が起こるか
共有