Unreal Engine4 C++ 动态加载Level(关卡)
今天研究了下如何使用代码来加载编辑好的关卡,现在已知的是以下两种方式:
- 使用OpenLevel方法
UGameplayStatics::OpenLevel(GWorld, "YourLevel", false, "");
OpenLevel会调用SetClientTravel,会断开所有连接的客户端并像客户端一样行动,会丢弃所有的状态信息。
- 使用ServerTravel方法
GetWorld()->ServerTravel(FString("/Game/Maps/YourLevel"));
使用ServerTravel时,将保留所有PlayerController,PlayerState,GameMode和GameState实例。
ServerTravel将首先将每个人加载到一个“转换关卡”,默认是空的,然后它将所有人都加载到目标关卡。
本文主要介绍的方法为OpenLevel