Hearts of Iron IV 開発者日記 第275回目を紹介。
今回はゲームの技術的なお話です。HoI4の起動環境が変更になるとのこと。
[記事内の画像はパラドフォーラムより引用]
Hearts of Iron IV 開発者日記 2022年9月14日分(第275回)
冒頭の挨拶
皆さんこんにちは、皆さんの友のTech Leadが再び登場しました!
昨年、Barbarossaパッチのリリースに至る最後の数週間に、私は皆さんに手紙を書きました。
そして現在、Avalancheパッチの本番運用が近づいています。
そこでここで再び登場しました。
古いプラットフォームの廃止計画
未来と同じくテクノロジーというものは常に動いています。
新しいプラットフォームが登場すると、古いものは納屋の後ろに連れて行かれ置かれる必要があります。
ご心配なく。私たちはWindows 7について話しているのではありません(まだ今のところは)。
Windows 11がリリースされたにもかかわらず、私たちはWindows 10への移行を選択しませんでした。
なぜならMicrosoftの古いリリースに対する新しい技術のサポートは、まだかなり良好だからです。
残念ながらMacとLinuxについては同じことは言えません。
そのためこれらについては新しいVer1.12.0リリースから、最小OSバージョンはMac OS 10.14(Mojave)とUbuntu 20.04 LTS(Focal Fossa)になります。
以前のブランチにロールバックすることで、古いバージョンのHoIを古いオペレーティングシステムでプレイすることはできますが、Avalanche版は起動を拒否します。
これらの更新は(HoIだけでなく)、私たちのゲームに新しい技術を導入しスタジオ内の同じインフラですべてが構築できるようにするために行われます。
新しい規定
昨年、私たちはゲームを由緒あるDirectX9ではなく、DirectX11で実行するオプションを導入しました。
長い観察期間を経て、ほとんど問題が観察されなかったため、これをデフォルトとすることにしました。
Avalanche適用後Paradox Launcherを初めて起動すると、ゲームはDirectX9からDirectX11への設定の1回限りのアップグレードを実行します。
新規にインストールされた場合もデフォルトでDirectX11になります。
この変更によって何らかの問題が発生した場合は、まずバグレポートを作成し、その後、設定ページでレンダラーをDirectX9に戻してください。
見た目はまったく同じに見えるはずですが、内部的にはDirectX 11に付属のツールが、Avalancheで修正されるいくつかのグラフィックバグを見つけるのに役立っています。
それはたとえば戦車モデルの側面に表示される奇妙な白い四角形などです。
パフォーマンスの改善
ほとんどの人が「新しいパッチを適用すると、以前のバージョンよりもゲームが速く動作するようになるのだろうか?」というおなじみの疑問を待っていることでしょう。嬉しいことに答えはイエスです。
最大の改善点は、マップアイコンのレンダリングです(ユニットカウンター、工場、供給ハブなど)。
マップ上に表示される可能性のあるアイコンの数は、6年前にHoIがリリースされて以来、大幅に増加しており、従来のアルゴリズムではもはやそれに対応できなくなりました。
例えば、私の仕事用デスクトップマシン上のAvalancheのFPSとフレームレートは以下のようになっています(i 7700、NVIDIA GTX 1060、vsyncオフ、150fps上限設定)。
Avalancheのフルズームアウト時:
そして速度5におけるフルズームイン状態:
(昨年の開発日記を忘れた場合は、デバッグコンソールでimgui show profilerと入力して、ゲーム内プロファイラーをポップアップ表示できます。)。
これらの数値を現在のライブビルド(Barbarossa 1.11.13)のものと比較してください:
Barbarossaはレンダリング性能をフレームタイムではなくレンダリングタイムで示していますが、AvalancheはCPUとGPUの両方のレンダリングタイムをカウントしているため、数値が異なって見えることに注意してください。
HoI(4)世代のParadoxスタジオのゲームはレンダリングとゲームシミュレーションを連携させるため、これはより速いティック速度に変換されます(シミュレーション自体に追加されたいくつかの小さなパフォーマンス最適化に加えて)。
ただし、レンダリングの高速化は、ゲームスピードの高速化に完全につながるわけではありません。
レンダリングの高速化は、ゲームスピードに完全に反映されるわけではありませんが、プレイ中(特にスピード4~5で一時停止していない状態)のより滑らかな体験と、ゲームシミュレーションのスピード改善を意味します。
そういえばこの数カ月間、HoIのパフォーマンスに関する多くの「ガイド記事」を読んだり、目にしたりして、ゲーム速度を向上させるためのヒントやコツを共有してきたので、私なりの方法をお伝えします。
高リフレッシュレートのモニタを持っていない限り、グラフィックス設定で垂直同期(VSync)を無効にすることを検討してください。
ゲームシミュレーションはレンダリングが完了するのを待つため、リフレッシュレートが低いと、CPUがモニターのVSyncを待つために貴重な時間を費やしてしまうことがあり、これは理想的ではありません。
この問題の根本はHoI4では特にDirectX9では対処するのが難しいのですが、今後DirectX11がデフォルトになりますので、将来的に対処できる方法があるかどうかを確認します。ただし約束はできませんが。
最終的な考え
昨年はフランスのコンテンツを追加で紹介しましたが、今回のパッチでは少し時間が足りず、より多くのものをお届けすることはできませんでした。
もしあなたが技術や歴史が好きなら、私は最近Marian Rejewskiの作品を世に出すことに焦点を当てて、現代のコンピュータでEnigmaを解読する方法に関する技術的なプレゼンテーションを書きました(彼とポーランドの暗号局は、多くの物語でAlan TuringやBletchley Parkを差し置いて語られる傾向がありますので)。
まだ録画はありませんが、今年中にあと2回技術会議で話す予定なので、いずれはYoutubeにアップされるでしょう。
ポーランドといえば、Barbarossaで私の秘密のイベントはもう見つけましたか?
今日はここまでですが、技術的なことでもそれ以外のことでも、皆さんの質問に喜んでお答えします!
以上
振り返り感想
HoI4開発者日記 第275回でした。
HoI4がDirectX11が標準化になり、それに伴いパフォーマンスの向上+今後の展望も期待できる(かもしれない)という内容でした。
今回の日記でHoI4のパフォーマンス向上に対してとても大事な事が書かれていたので、今一度書いておきたいと思います。
リフレッシュレートの高いモニターを使っていない場合はゲーム設定で垂直同期(VSync)を無効にする
だそうです。実際の開発者から伝えられるこういう情報はありがたいですね。
私のモニターのリフレッシュレートは144Hzなんですが、GPUは未だにGTX1060(6G)なのでこの場合、垂直同期OFFにしないほうが良いんでしょうか?
どうもGPUの性能で描画の足を引っ張っているような気もするけど😅
PCゲームはお手持ちの環境で色々異なりますので、まずは垂直同期のON/OFF等を試して自分なりの設定を色々探ってみても良さそうですね。
正確を期すよう努めていますが詳細はパラドックスサイトの原文をお読みください。