vault backup: 2025-10-27 12:14:24
This commit is contained in:
@@ -32,8 +32,25 @@ rating: ⭐
|
|||||||
1. 可选:使用快捷方式 -clearPSODriverCache,清空PSO。
|
1. 可选:使用快捷方式 -clearPSODriverCache,清空PSO。
|
||||||
2. 添加上述配置。
|
2. 添加上述配置。
|
||||||
3. 执行Launch打包并且启动项目。
|
3. 执行Launch打包并且启动项目。
|
||||||
4. 完成后可以在Saved/Metadata/PipelineCaches/找到打包的PSO文件,将其复制出来。
|
4. 收集打包PSO:完成后可以在Saved/Metadata/PipelineCaches/找到打包的PSO文件,将其复制出来。
|
||||||
|
5. 收集RuntimePSO:运行打包后的项目,跑测后在Saved/CollectedPSOs可以找到Runtime PSO文件,将其复制出来。
|
||||||
|
6. 将所有收集的PSO放到一个制定的文件夹里,比如项目目录下PSOCollection,进行CommandLet`ShaderPipelineCacheTools`,之后会生成制定名称的spc文件。
|
||||||
|
7. 回到打包后的项目在指定平台的目录文件夹(在项目的Build文件夹下的Windows、Android)中新建文件夹PipelineCaches,并将spc文件放入。
|
||||||
|
8. 重新使用Launch打包,完成后可以在log中知道spc文件中 pso数量。
|
||||||
|
|
||||||
|
## 将收集的PSO打包进Pak中
|
||||||
|
```bash
|
||||||
|
Engine\Binaries\Win64\UnrealEditor-Cmd.exe -run=ShaderPipelineCacheTools expand #Run ShaderPipelineCacheTools with expand optionl
|
||||||
|
Project\PSOCollection\*.rec.upipelinecache #Use all .rec.upipelinecache files
|
||||||
|
Project\PSOCollection\*.shk #Use all .shk files
|
||||||
|
Project\PSOCollection\PSO_SKGZombies_PCD3D_SM6.spc # Output PSO to be bundled
|
||||||
|
|
||||||
|
cmd /k #保证CMD开启
|
||||||
|
```
|
||||||
|
|
||||||
|
```bash
|
||||||
|
"D:\UnrealEngine\UE_5.6\Engine\Binaries\Win64\UnrealEditor-Cmd.exe" -run=ShaderPipelineCacheTools expand "D:\Project\Demo\PSOCollection\*.rec.upipelinecache" "D:\Project\Demo\PSOCollection\*.shk" "D:\Project\Demo\PSOCollection\PSO_Demo_PCD3D_SM6.spc"
|
||||||
|
```
|
||||||
# 执行链
|
# 执行链
|
||||||
- FGraphEventArray UPrimitiveComponent::PrecachePSOs()
|
- FGraphEventArray UPrimitiveComponent::PrecachePSOs()
|
||||||
- void UMaterialInterface::InitDefaultMaterials()
|
- void UMaterialInterface::InitDefaultMaterials()
|
||||||
|
|||||||
Reference in New Issue
Block a user