vault backup: 2025-06-10 17:02:58

This commit is contained in:
BlueRose 2025-06-10 17:02:58 +08:00
parent bf468d7634
commit b16e6624ee

View File

@ -57,14 +57,34 @@ MatDyn
- UpdateStaticDataFor
- ComputeHeight_Segmented_MapForClipMap似乎会设置
- UpdateCollisionMeshData
- InitializeReadBackDependencies
- InitiateMaterials
- [x] [[#InitializeReadBackDependencies]]
- [x] InitiateMaterials
### UpdateCollisionMeshData
Tick() -> CollisionManagement() -> CollisionGPU() -> UpdateCollisionMeshData()
### ComputeHeight_Segmented_MapForClipMap
### InitializeReadBackDependencies
BeginPlay() -> InitiateWorld() -> InitializeReadBackDependencies()
1. 初始化3个RTReadRequestLocation、ReadRequestLocationHeightmap、GeneratorDynamicForReadBack。
2. 会设置`TObjectPtr < UMaterialInstanceDynamic> GeneratorDynamicForReadBack`各种变量
```c++
GeneratorDynamicForReadBack->SetScalarParameterValue("HeightReadBack", 1.f);
GeneratorDynamicForReadBack->SetTextureParameterValue("SpecificLocationsRT", ReadRequestLocation);
GeneratorDynamicForReadBack->SetScalarParameterValue("NoMargin", 0.f);
GeneratorDynamicForReadBack->SetScalarParameterValue("N", N);
GeneratorDynamicForReadBack->SetScalarParameterValue("NormalMapSelect", 0.f);
GeneratorDynamicForReadBack->SetScalarParameterValue("HeightMapToggle", 1.f);
```
3. 设置随机种子相关Shader Parameter。
### InitiateMaterials
初始化`TArray<FClipMapMeshElement> Meshes;`的Material、`Producers`
BeginPlay() -> InitiateWorld() -> InitiateMaterials()
作用:初始化`TArray<FClipMapMeshElement> Meshes;`的Material、`Producers`
调用顺序BeginPlay() -> InitiateWorld() -> InitiateMaterials()
经过断点调试会设置WorldSettings里的Material地形Material的HeightMap与NormalMap。