[UE5.3] 渲染編譯加速 (Shader Compile speed up)

 摘要:
此方法適用於UE5,透過修改BaseEngine.ini的參數,來增加渲染編譯的執行程序數量(ShaderCompileWorker.exe),達到加速渲染編譯的效果。

以UE5.3為例BaseEngine.ini路徑為:
C:\Program Files\Epic Games\UE_5.3\Engine\Config\BaseEngine.ini

修改「DevOptions.Shaders」分類裡的「PercentageUnusedShaderCompilingThreads」,預設值為50,意思是將保留50%的CPU資源剩下的來做渲染編譯,以32T的CPU來說,做渲染編譯時可以發現在工作管理員裡會有16個ShaderCompileWorker.exe執行程序,為提升資源充分利用可以將值修改為10或20,也就是將會使用90%或是80%的CPU資源,修改完後編譯執行程序將會提升到28個。
PercentageUnusedShaderCompilingThreads=10

若你發現修改此值沒有變化,要額外再修改「ShaderCompilerCoreCountThreshold」,預設值為12,意思是當你的CPU執行緒數量有12以上才會套用「PercentageUnusedShaderCompilingThreads」的效果,否則會以「NumUnusedShaderCompilingThreads」為主。

(可選)驗證方法:
由於UE會把編譯過的物件儲存快取(DDC, DerivedDataCache),所以測試方法為刪除DDC然後重啟專案,注意此步驟視電腦效能與專案規模有可能需要花費很多時間重建編譯。

UE預設DDC儲存路徑:
C:\Users\User\AppData\Local\UnrealEngine\Common\DerivedDataCache

#UE5.3
#ShaderCompileWorker
#PercentageUnusedShaderCompilingThreads

這個網誌中的熱門文章

Windows10 版本1607後可啟用支援長路徑檔名 (Maximum Path Length Limitation)

標準使用者如何執行需系統管理者權限的程式