第5期(1):UE4的奇怪Bug和解決方案匯總(03)
1. 在使用UE4編輯器(如UE4.19版本)過程中,經常出現「GPU has crashed」類型的編輯器崩潰的情況
情況1:查看編輯器日誌,發現崩潰的錯誤信息如下所示。
錯誤信息的關鍵字包括:「Aftermath」、「D3D11Query.cpp] [Line: 111] 」、「GPU has crashed」
分析:查看對應的代碼就會發現,崩潰的原因是「GDynamicRHI->CheckGpuHeartbeat()」返回了「False」。如下所示。
在執行「CheckGpuHeartbeat()」這個函數時,只有「GDX11NVAfterMathEnabled」為「True」,該函數才有可能返回「False」。
因此,為了避免這個「GPU has crashed」類型的編輯器崩潰的情況,可以直接考慮將「GDX11NVAfterMathEnabled」設置為「False」。
在UE4引擎底層源代碼中,「GDX11NVAfterMathEnabled」的申明如下:
從代碼中,可以看出,可以通過將「r.DX11NVAfterMathEnabled」設置為「False」,來將「GDX11NVAfterMathEnabled」設置為「False」
解決方法:
可以參考關於「AfterMath」的官方文檔,嘗試通過關閉「AfterMath」功能,來解決上面的編輯器崩潰問題。
NVIDIA Aftermath具體步驟如下:
1.找到對應版本UE4引擎(這裡是UE4.19.2)的「Config」文件夾,打開其中的「ConsoleVariables.ini」文件:
2. 在「ConsoleVariables.ini」文件中的「[Startup]」配置區段中添加如下的配置信息
r.DX11NVAfterMathEnabled=0
r.GPUCrashDebugging=0
3. 再重啟UE4編輯器即可。
推薦閱讀:
TAG:Bug | 虛幻4(遊戲引擎) | 圖形處理器(GPU) |