vault backup: 2024-07-24 12:12:11
This commit is contained in:
parent
848e7807c5
commit
bb28cb45e3
@ -125,6 +125,11 @@ Build - Build Minimap
|
||||
### 使用蓝图或者c++控制DataLayer加载
|
||||
通过**UDataLayerSubsystem**的SetDataLayerState()来控制DataLayer的加载与卸载。
|
||||
|
||||
相关的Runtime加载控制可以参考:https://youtu.be/LI6TsZf5hh0?si=nwqz-S6DDR7MgSBT
|
||||
需要在世界设置的WorldPartitionSetup - RuntimeSettings - Grids中设置不同层级,一些场景中的Detail场景物体可以添加到Priority比较低,Cell Size与Loading Range比较小的Grid组中。
|
||||
|
||||
物体可以放到一个Actor中,再将Actor的GridName设置好即可。之后就可以通过蓝图的DataLayerSubsystem进行控制。
|
||||
|
||||
# 相关CommandLet
|
||||
- 烘焙WorldPartition:UnrealEditor.exe QAGame -run=cook -targetplatform=WindowsNoEditor -Unversioned -map=Playground
|
||||
- HLOD Build:`UnrealEditor.exe "C:\Users\user.name\Documents\Unreal Projects\MyProject\MyProject.uproject" "/Game/ThirdPersonBP/Maps/OpenWorldTest" -run=WorldPartitionBuilderCommandlet -AllowCommandletRendering -builder=WorldPartitionHLODsBuilder`
|
||||
@ -165,9 +170,19 @@ https://github.com/EpicGames/UnrealEngine/commit/51d38831de4da7df196eecaf13f3d4b
|
||||
## 最终结论
|
||||
1. Sequence不能控制DMX是因为大世界存在垃圾,需要使用上面的重新构建命令重新构建一下,问题就解决了。
|
||||
2. 舞台DMX可以考虑,加一个Runtime DataLayer,之后塞进LiveArea中。
|
||||
1. 这样可以保证看不到的Actor也会被加载。
|
||||
1. 有关DataLayer的Runtime设置可以参考:https://youtu.be/LI6TsZf5hh0?si=nwqz-S6DDR7MgSBT
|
||||
2. 这样可以保证看不到的Actor也会被加载。
|
||||
3. 在异世界地图中也用到了WorldPartitionRuntimeStateVolumn。BP_LiveArea_12_1
|
||||
4. AWorldPartitionRuntimeStateVolume是字节自己实现的。
|
||||
4. AWorldPartitionRuntimeStateVolume是字节自己实现的。Puerts与C++没有任何调用,不知道该如何使用。
|
||||
|
||||
### ASoul的做法
|
||||
1. 几个通用DataLayer:
|
||||
1. DL_AlwaysActive
|
||||
2. DL_DMXStageAll
|
||||
3. DL_EditorOnly
|
||||
4. DL_LiveArea
|
||||
2. 按照需要设置大世界专用DataLayer,主要面对的是***占用区域较大,需要全部加载的。***
|
||||
|
||||
|
||||
## 笔记
|
||||
1. 枝江地图,针对小房间、DMX、巨蛋DMX、舞蹈室以及舞台分别使用了DataLayer。
|
||||
|
Loading…
x
Reference in New Issue
Block a user