大家好,作为新手学UE4的我,在将官方ActionRPG进行二次创作的时候,遇到资源路径使用的问题,即,如何将物理路径 “Content/Maps/ActionRPG_P.umap” 转换为 “/Game/Maps/ActionRPG_P” ,使得能被GetWorld()->ServerTravel(FString)这个接口使用。我的笨拙方法如下,求更好的解决办法!!!
// .h文件里定义变量
protected:
UPROPERTY(EditAnywhere, meta=(FilePathFilter = "umap", RelativeToGameDir))
FFilePath LevelPath;
// .cpp文件里进行关卡切换,上面变量的值由蓝图里配置
LevelPath.FilePath = LevelPath.FilePath.LeftChop(5); // 去掉.umap
LevelPath.FilePath = LevelPath.FilePath.RightChop(7); // 去掉Content
LevelPath.FilePath = TEXT("/Game") + LevelPath.FilePath; // 将 /Game 和 /Maps/ActionRPG_P 拼接起来
GetWorld()->ServerTravel(LevelPath.FilePath);
求更好的解决办法!!!