Unreal Engine にはシェーダー スタッターの問題に対する解決策があります。

Unreal Engine 5.2 では、シェーダーコンパイルによるスタッタリングを軽減するために、パイプラインステートオブジェクト(PSO)のプリロードシステムが導入されました。これにより、PCゲームで現在深刻な問題となっているシェーダースタッタリングが緩和されます。
シェーダコンパイルのスタッタリング(シェーダスタッタリングとも呼ばれる)は、ゲームがシェーダを表示する直前に準備しなければならない場合に発生します。このため、目に見える遅延が発生し、シェーダが目立つように出現します。 この遅延は、高レベルのシェーダコードをさまざまなグラフィックカードが理解できる機械語に変換することが複雑であるためです。
最新のグラフィックスAPIであるDirectX 12とVulkanは、パフォーマンスを向上させるためにPSOs(ピクセルシェーダーオブジェクト)を導入しました。PSOsはシェーダとレンダリング設定を組み合わせることで、事前に準備できるようになります。しかし、多くの異なる材質やレンダリングオプションを持つ複雑なゲームでは、可能なPSOの組み合わせの数があまりにも多すぎて圧倒される可能性があります。Unreal Engineの「Bundled PSO Cache」などの従来の方法では追いつくことができなかったため、このキャッシュはトラッキングと管理に多くのリソースを必要としたのです。
Unrealの新しいPSOプリキャッシングシステムにより、以前の問題が解決されます。読み込み時に、マテリアル、メッシュ、全体的な設定を調べ、必要なPSO(パイプラインステートオブジェクト)を予測します。これらは、ロード画面中にまたは必要になる直前に準備されます。後からオブジェクトが入ってきた場合、PSOの準備が整うまで待つか、基本的なマテリアルを使用できます。これにより、目に見える遅延を削減できます。
エンジンの開発者がこの問題を解決しようと取り組んでいるのは素晴らしいことです。興味深いのは、これが技術の進歩によって生じる問題であるということです。過去には、ゲームはプリコンパイルされたシェーダーコードが付属しており、グラフィックスドライバがゲーム実行中にこれを変換していました。これは単純なゲームではうまくいきましたが、シェーダーが複雑になり、グラフィックカードが進化するにつれてパフォーマンスの問題が発生しました。
素材の変化に対応することは現在進行中で、一部のシェーダーにのみ適用されていることを覚えておいてください。たとえば、モーションブラーなどの効果に使用されるグローバルシェーダーは処理が異なり、まだ問題が発生する可能性があります。しかし、将来的には改善される予定です。
それでも、Unrealがプレイヤーにとってこの問題を解決するリーダーシップをとっているように思えます。願わくば、恒久的な解決策はシェーダーのスタッタリングを過去のものにするでしょう。
カテゴリー
最新記事
- 静かなキーストロークと高い生産性の向上を実現する、STEALTH KEYBOARD SM3 メカニカルキーボードのレビュー。
- その古い電話が目の前で火事の原因になった。
- アップル招待とアップルカレンダーの違い:10個のポイント
- アップル @ ワーク:2025年にアップルがGoogle Workspaceに対抗する製品をリリースするのか?
- Apple は iPhone SE 4 を発表する特別なイベントを開催する可能性が低い。
- 今日の NYT Connections ヒントと解答 (2 月 8 日 #608)
- Ubuntu 20.04 LTS のサポートが終了します。
- 読み込みが間に合わない? AI に読んでもらいたいですか?
- これは私が愛用する聖杯 ブルーレイプレーヤーです。
- 来週、新しい Apple 製品の発表が予定されています。詳細は下記の通りです。