Language:
Page Info
Tags:
Engine Version:

NVIDIA Aftermath

Aftermath_Banner.png

速度が大幅に改善されているので、NVIDIA ドライバーは 382.53 以降にアップデートすることをお勧めします。

アンリアル エンジン 4.15.2 では、Windows 使用のデベロッパー向けに NVIDIA の Aftermath C++ ライブラリをサポートしています。これにより、クラッシュ発生後に NVIDIA GeForce-based GPUwhich からの追加データを提供します。 このデータにはクラッシュ時に GPU が何を行っていたかという重要な情報が含まれ、プロジェクトの GPU に起きている問題の追跡が可能になります。

Aftermath は、他のデバッグツールに比べてパフォーマンス使用料が控えめで負荷の少ないツールです。完成品のゲームと一緒に出荷して、 カスタマーのマシンから必要なデータの追加が可能なほど低負荷です。Aftermath は、プログラマーがクラッシュの主要因の追跡を支援するマーカーをコードに挿入できるようにします。Aftermath は現在アンリアル エンジン エディタにおいて、 問題の追跡し、レポートあるいは発見された問題を修正のために使用されています。

詳細およびプロジェクトでの使用方法に関しては、NVIDIA Aftermath に関するドキュメント をご覧ください。

NVIDIA Aftermath を有効にする

アンリアル エンジン 4.15.2 では、NVIDIA Aftermath が自動的に有効になります。以下のコンソール コマンドを使って、ConsoleVariables.ini コンフィギュレーション ファイルで設定ができます。

r.DX11NVAfterMathEnabled

アンリアル エンジン 4.16 以降では、NVIDIA Aftermath が自動的に無効になります。以下のコンソール コマンドを使って、ConsoleVariables.ini コンフィギュレーション ファイルで設定ができます。

r.GPUCrashDebugging=1

次の引数をコマンドラインにパスしても有効にすることができます。

-gpucrashdebugging

ログ

NVIDIA Aftermath を有効にすると、ログに以下の出力が表示されます。

LogD3D11RHI:[Aftermath] Aftermath を有効にして事前準備をする

アンリアル エンジン 4 でログにアクセスするには、[File Menu] > [Window] > [Developer Tools] > [Output Log] またはプロジェクト フォルダからログ テキスト ファイルを開きます。

クラッシュした場合、ログには以下のような表示がでます。

LogD3D11RHI:Error:Result failed at X:[Project Folder]\Engine\Source\Runtime\Windows\D3D11RHI\Private\D3D11Viewport.cpp:290 with error DXGI_ERROR_DEVICE_REMOVED DXGI_ERROR_DEVICE_HUNG
LogRHI:Error:[Aftermath] Status:Timeout
LogRHI:Error:[Aftermath] GPU Stack Dump
LogRHI:Error:[Aftermath] 0:Frame2769
LogRHI:Error:[Aftermath] 1:FRAME
LogRHI:Error:[Aftermath] 2:Scene
LogRHI:Error:[Aftermath] 3:ComputeLightGrid
LogRHI:Error:[Aftermath] 4:Compact
LogRHI:Error:[Aftermath] GPU Stack Dump

この例では、GPU がクラッシュし、[Aftermath] 処理による結果の行に問題のあるフレームのステータスと場所が表示されるので、 根本的原因を調査することができます。

考慮事項

約 200 から 300 マーカーの平均的なプロジェクトの場合、Aftermath の速度は十分ですが、 多数のオブジェクト単位のシャドウなど負荷を高くする要因があると速度が落ちます。この理由から、この機能はデフォルトでは有効にはなっていません。

Tags