用户项目文件
虚幻引擎(UE) 可识别两种不同类型的项目:原生和外部。
原生项目
原生项目 和用来创建此类项目的引擎处于同一个根目录中。因此,它们有以下目录结构:
.
└── ROOT/
├── Engine/
│ ├── Binaries/
│ ├── Build/
│ ├── Config/
│ └── ...
├── PROJECT1/
│ ├── Binaries/
│ ├── Build/
│ ├── Config/
│ ├── ...
│ └── PROJECT1.uproject
├── PROJECT2/
│ ├── Binaries/
│ ├── Build/
│ ├── Config/
│ ├── ...
│ └── PROJECT2.uproject
├── ...
├── Default.uprojectdirs
├── GenerateProjectFiles.bat
└── ...
在此结构中, PROJECT1 和 PROJECT2 都是原生项目。具有此目录结构的项目不需要额外配置就能确定要使用哪个编辑器,因为这些项目会自动检测根目录中构建的编辑器。无论你使用的UE是源代码版本还是二进制版本,都是如此。
项目可以放入根文件夹或者 Default.uprojectdirs中定义的子文件夹(例如 ROOT/Games )中。.uprojectdirs 文件是帮助文件,可指示引擎在 ROOT 的子目录中发现项目。你可以在相同 ROOT 目录中有多个 .uprojectdirs 文件。这些文件不需要命名为 Default.uprojectdirs ,它们可以是任意名称,只要文件扩展名是 .uprojectdirs 即可。
外部项目
外部项目 的项目目录在引擎目录所在根目录之外的某个位置。其示例如下所示:
├── UE/
│ ├── Engine/
│ │ ├── Binaries
│ │ ├── Build
│ │ ├── Config
│ │ └── ...
│ ├── ...
│ ├── Default.uprojectdirs
│ ├── GenerateProjectFiles.bat
│ └── ...
├── PROJECT1/
│ ├── Binaries
│ ├── Build
│ ├── Config
│ ├── ...
│ └── PROJECT1.uproject
├── PROJECT2/
│ ├── Binaries
│ ├── Build
│ ├── Config
│ ├── ...
│ └── PROJECT2.uproject
└── ...
若使用启动程序(二进制)版本创建外部项目,其 .uproject 文件中的 EngineAssociation 字段将设置为用于创建此项目的启动程序引擎的版本号。如果你使用源代码构建版虚幻编辑器创建了项目,项目将放入该编辑器的 全局唯一标识符(GUID) 中。首次启动源代码构建的编辑器时,系统会在你的计算机上自动生成并保存此GUID。它们在不同操作系统上的存储位置如下:
- Windows :
- 注册表:
Computer\HKEY_CURRENT_USER\SOFTWARE\Epic Games\Unreal Engine\Builds
- 注册表:
- Mac :
- 文件:
~Library/Application Support/Epic/UnrealEngine/Install.ini
- 文件:
- Linux :
- 文件: ` ~/.config/Epic/UnrealEngine/Install.ini`
例如,假设 PROJECT1 是使用源代码构建版虚幻编辑器创建,则 PROJECT1.uproject 文件包含如下格式的内容:
{
"FileVersion": 3,
"EngineAssociation": "{5FFE8984-EA6F-49EC-859E-6CB8C10FE54D}",
"Category": "",
"Description": "",
"Modules": [
...
],
"Plugins": [
...
],
"TargetPlatforms": [
...
]
}
其中 5FFE8984-EA6F-49EC-859E-6CB8C10FE54D 是与用于创建项目的源代码构建版虚幻编辑器关联的GUID。相反,假设 PROJECT2 是使用UE 5.1启动程序版虚幻编辑器创建,则 PROJECT2.uproject 文件包含:
{
"FileVersion": 3,
"EngineAssociation": "5.1",
"Category": "",
"Description": "",
"Modules": [
...
],
"Plugins": [
...
],
"TargetPlatforms": [
...
]
}
更改项目的虚幻引擎版本
要更改用于打开项目的虚幻引擎版本,你可以首先右键点击项目的 .uproject 文件,然后选择 切换虚幻引擎版本(Switch Unreal Engine version...)这将弹出对话框,你可以在其中的下拉菜单中选择用于打开此项目的UE版本。此对话框首次显示时,将显示当前设为打开此项目的虚幻引擎发行版。此下拉菜单中的启动程序版本标有版本号(例如4.27或5.0),源代码版本标记为 二进制版本(Binary build) 或 源代码版本(Source build) ,后跟该版本的目录。此目录是与 .uproject 文件中的 EngineAssociation 字段关联的GUID密钥相关联的值。要切换引擎版本,请从下拉菜单选择所需的虚幻引擎发行版。然后系统会重新生成项目文件,以实现此更改。
将代码添加到项目
C++类向导
C++类向导 提供了一种快速而简单的方法,可将本地C++代码类添加到项目中,以便用户对自有的功能进行延展。 这会将纯内容的项目转换为一个代码项目。你可以像这样访问C++类向导,然后参照下述步骤新建C++类:
开始前请确保已安装Windows桌面版Visual Studio 2019或更高版本。如使用的是Mac,则必须安装Xcode 9或更高版本。
-
在主编辑器中选择 工具(Tool) > 新建C++类(New C++ Class...)
-
C++类向导 将出现,并默认显示 常用类(Common Classes)。如果你没有找到所需的类,可以点击窗口右上角的 显示所有类 勾选框并查看所有类。
常用类 所有类 -
选择你要添加的类。在本文中,我们将选择新建 Actor 类。选择 Actor 类,然后点击 下一步(Next >)。
-
之后将弹出为新类输入 命名 的提示。执行此操作并点击 创建类(Create Class) 按钮。这将创建标头(
.h)和源(.cpp)文件。类命名只包含字母数字字符,不包含空格。域将通知是否输入了无效命名。
-
在虚幻引擎中,现在 Live Coding 会默认启用。新建类文件后,会显示Live Coding窗口并编译类文件。
-
代码将立即在Visual Studio中打开,可进行编辑。

代码将立即在Xcode中打开,可进行编辑。

开发环境
代码文件可通过 Visual Studio 创建并通过 解决方案浏览器 按常规方式添加到游戏项目。也可以将代码文件添加到Visual Studio之外的正确文件夹并自动重编译解决方案和项目文件。这样一来便能通过操作系统UI快速添加大量文件,并使团队工作更为简便,因为解决方案和项目文件不需要在团队成员之间同步。每个开发人员可在本地同步代码文件并重编译项目文件。
代码文件可通过 Xcode 创建并通过 解决方案导航器 按常规方式添加到游戏项目。也可将代码文件添加到Xcode之外的正确文件夹,并自动重编译项目文件。这样一来便能通过操作系统UI快速添加大量文件,并使团队工作更为简便,因为解决方案和项目文件不需要在团队成员之间同步。每个开发人员可在本地同步代码文件并重编译项目文件。
在开发环境中打开项目
如项目已在 虚幻编辑器 中打开,则可在 文件(File) 菜单中选择 打开Visual Studio(Open Visual Studio) ,轻松将其在Visual Studio中打开。
可通过Windows浏览器或Visual Studio的 文件(File) > 打开(Open) > 项目/解决方案(Project/Solution) 。
如项目处于UE根目录中:
- 打开UE根目录中的
UE5.slnVisual Studio解决方案。
如项目处于UE根目录之外:
- 打开项目根目录中的
PROJECT_NAME.slnVisual Studio解决方案。
如项目已在编辑器中打开,则可在 文件(File) 菜单中选择 在Xcode中打开(Open in Xcode) ,轻松将其在Xcode中打开。
也可通过查找器或Xcode的 文件(File) > 打开(Open) 在Xcode中打开项目。
- 打开项目根目录中的
PROJECT_NAME.xcodeprojXcode项目。
生成项目文件
项目文件被视为中间文件,放置于 PROJECT_DIRECTORY\Intermediate\ProjectFiles 中。这意味着如果删除 Intermediate 文件夹,则必须重新生成项目文件。
.uproject文件
如项目处于UE根目录之外:
-
在Windows浏览器中导航到
PROJECT_NAME.uproject的路径。 -
左键点击
PROJECT_NAME.uproject,确保该文件处于高亮状态。在PROJECT_NAME.uproject文件上 点击右键 并选择 生成Visual Studio文件(Generate Visual Studio Files) 。
- UnrealBuildTool 更新项目文件和解决方案,包括生成Intellisense数据。
- 打开项目根目录中的
PROJECT_NAME.slnVisual Studio解决方案,在Visual Studio中查看游戏项目。
-
在查找器中导航到
PROJECT_NAME.uproject的路径。 -
在
PROJECT_NAME.uproject文件上 点击右键 并选择生成Xcode文件(Generate Xcode Files)。
- UnrealBuildTool更新项目
- 打开项目根目录中的
PROJECT_NAME.uprojectXcode项目,在Xcode中查看游戏项目。