UEC++ API——常用路径获取方法

Unreal Engine 提供了多种获取路径的方法,用于访问引擎资源、用户数据、项目内容以及插件目录等。了解这些路径的获取方式对于在项目中正确加载资源、保存配置和访问文件系统至关重要。以下是几个常用的路径获取函数及其实际应用场景。

1. 组合多个路径片段

将多个路径片段组合成一个完整的路径,可以使用 FPaths::Combine() 方法。

FString CombinedPath = FPaths::Combine(FPaths::ProjectConfigDir(), TEXT("aa/dd/ff/gg"), TEXT("xx"), TEXT("ok.cp"));
// 返回: F:/UnrealEngine-5.1/MyProject/Config/aa/dd/ff/gg/xx/ok.cp

2. 项目路径获取

  • 项目配置目录路径
  FString ProjectConfigPath = FPaths::ProjectConfigDir();
  // 返回: F:/UnrealEngine-5.1/MyProject/Config/
  • 项目内容目录路径
  FString ContentPath = FPaths::ProjectContentDir();
  // 返回: F:/UnrealEngine-5.1/MyProject/Content/
  • 项目根目录路径
  FString RootPath = FPaths::RootDir();
  // 返回: F:/UnrealEngine-5.1/MyProject/
  • 项目保存目录路径
  FString SavedPath = FPaths::ProjectSavedDir();
  // 返回: F:/UnrealEngine-5.1/MyProject/Saved/

3. 引擎路径获取

  • 引擎配置目录路径
  FString EngineConfigPath = FPaths::EngineConfigDir();
  // 返回: F:/UnrealEngine-5.1/Engine/Config/
  • 引擎内容目录路径
  FString EngineContentPath = FPaths::EngineContentDir();
  // 返回: F:/UnrealEngine-5.1/Engine/Content/
  • 引擎插件目录路径
  FString EnginePluginsPath = FPaths::EnginePluginsDir();
  // 返回: F:/UnrealEngine-5.1/Engine/Plugins/
  • 引擎中间目录路径 (用于编译中间文件)
  FString EngineIntermediatePath = FPaths::EngineIntermediateDir();
  // 返回: F:/UnrealEngine-5.1/Engine/Intermediate/
  • 引擎源码目录路径
  FString EngineSourcePath = FPaths::EngineSourceDir();
  // 返回: F:/UnrealEngine-5.1/Engine/Source/

4. 文件相关路径操作

  • 获取文件扩展名
  FString FileExtension = FPaths::GetExtension(CombinedPath);
  // 返回: cp
  • 获取包含点号的文件扩展名
  FileExtension = FPaths::GetExtension(CombinedPath, true);
  // 返回: .cp
  • 获取文件名
  FString FileName = FPaths::GetCleanFilename(CombinedPath);
  // 返回: ok.cp

5. 自动化测试路径

  • 获取自动化测试目录路径
  FString AutomationPath = FPaths::AutomationDir();
  // 返回: F:/UnrealEngine-5.1/MyProject/Saved/Automation/
  • 获取自动化测试临时目录路径
  AutomationPath = FPaths::AutomationTransientDir();
  // 返回: F:/UnrealEngine-5.1/MyProject/Saved/Automation/Transient/
  • 获取自动化测试日志目录路径
  AutomationPath = FPaths::AutomationLogDir();
  // 返回: F:/UnrealEngine-5.1/MyProject/Saved/Automation/Logs/

6. 其他常用路径

  • 企业目录路径
  FString EnterprisePath = FPaths::EnterpriseDir();
  // 返回: F:/Program Files/Epic Games/Enterprise/
  • 项目插件目录路径
  FString ProjectPluginsPath = FPaths::ProjectPluginsDir();
  // 返回: F:/UnrealEngine-5.1/MyProject/Plugins/
  • 项目MODS目录路径
  FString ModsPath = FPaths::ProjectModsDir();
  // 返回: F:/UnrealEngine-5.1/MyProject/Mods/
  • 项目日志目录路径
  FString LogPath = FPaths::ProjectLogDir() / TEXT("log.txt");
  // 返回: F:/UnrealEngine-5.1/MyProject/Saved/Logs/log.txt

7. 检查与判断函数

  • 是否保存到用户目录
  bool bShouldSaveToUserDir = FPaths::ShouldSaveToUserDir();
  // 返回: true
  • 引擎是否安装在系统上
  bool bIsEngineInstalled = FApp::IsEngineInstalled();
  // 返回: true

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注