At the top level, there is the Engine directory as well as any game projects you have. The Engine directory contains the engine itself and all of the tools that come with it. Each game folder contains all of the files pertaining to that game. There is a much greater separation between the engine and game projects in UE4 than in previous versions of the engine.
Root Directory
- Engine - Contains all source code, content, etc. that makes up the engine.
- Templates - Collection of project templates available when creating new projects.
- GenerateProjectFiles.bat - Used to create the UE4 solution and project files necessary for working with the engine and your game(s) in Visual Studio. See Project Files for IDEs for details.
- UE4Games.uprojectdirs - Helper file that allows the engine to discover projects in subdirectories.
Common Directories
Some subdirectories are common amongst both the Engine and game project directories:
- Binaries - Contains executable files or other files created during compiling.
- Build - Holds files needed for building the engine or game, including files necessary for creating platform-specific builds.
- Config - Configuration files for setting values that control engine behavior. Values set in the game project Config files override the values set in the
Engine\Config
directory. - Content - Holds content for the engine or game, including asset packages and maps.
- DerivedDataCache - Contains derived data files generated on-load for referenced content. Not having cache files present for referenced content can increase load times dramatically.
- Intermediate - Contains temporary files generated during building the engine or game. In game directories, Shaders are stored in the Intermediate directory.
- Saved - Contains autosaves, configuration (
.ini
) files, and log files. Additionally, the Engine > Saved directory contains crash logs, hardware information, and Swarm options and data. - Source - Contains all of the source files for engine or game, including the engine source code, tools, gameplay classes, etc.
- Engine - Source files in the Engine directory are categorized into the following:
- Developer - Files used by both the editor and engine.
- Editor - Files used by just the editor.
- Programs - External tools used by the engine or editor.
- Runtime - Files used by just the engine.
- Game - Source files in a game project directory are organized by module; one directory per module. Each module contains the following:
- Classes - Contains all gameplay class header (
.h
) files. - Private - Contains all
.cpp
files including gameplay class implementation files and the module implementation file. - Public - Contains the module header file.
- Classes - Contains all gameplay class header (
- Engine - Source files in the Engine directory are categorized into the following:
Engine-specific Directories
Some subdirectories are specific to the Engine directory.
- Documentation - Contains the engine documentation, both source and published files.
- HTML - Published HTML documentation files.
- Source - Source markdown documentation files.
- Extras - Additional helper and utility files.
- Plugins - Contains plugins used in the engine.
- Programs - Contains configuration files and log files for projects stored in the UE4 root directory and other Unreal programs such as UnrealFrontend and UnrealHeaderTool.
- Shaders - Holds the shader source files (
.usf
) for the engine.
Game Project Directories
Directory | Description |
---|---|
Binaries | Contains executable files or other files created during compiling. |
Config | Default project settings for your game. |
Content | Contains content for the engine or game, including asset packages and maps. |
External dependencies | Displays the public engine header files (only visible in Visual Studio). |
Intermediate | Contains files that are generated by UnrealBuildTool such as Visual Studio project files. These files can be deleted and rebuilt. |
Saved | Contains files that are generated by the engine such as config files and logs. These files can be deleted and rebuilt. |
Source | Contains game module object class files. |
Solution Directories
Directory | Description |
---|---|
Classes | Contains game object class definitions (.h files). |
Config | Default project settings for your game. |
External dependencies | Displays the public engine header files (only visible in Visual Studio). |
Private | Contains private game object class implementation files (.cpp files). |
Public | Contains public game object class implementation files (.cpp files). |