UE基础 —— 目录结构

目录

[Root Directory](#Root Directory)

[Common Directories](#Common Directories)

[Modules and Plugins](#Modules and Plugins)

[Engine-specific Directories](#Engine-specific Directories)

[Game Project Directories](#Game Project Directories)

[Solution Directories](#Solution Directories)


在最高一级目录中,是引擎目录及所有游戏项目目录;引擎目录包含包含引擎自身及其随附工具;每个游戏目录都包含与该游戏有关的所有文件;

Root Directory

  • Engine,包含构成引擎的所有源代码、内容等;
  • Templates,创建新项目时可用的项目模板;
  • GenerateProjectFiles.bat,用于创建在VS中使用引擎和游戏所需的UE解决方案和项目文件;
  • Default.uprojectdirs,辅助文件,帮助引擎找到子目录中的项目;

Common Directories

通用目录是在引擎和游戏目录中都存在的一些子目录:

  • Binaries,包含可执行文件或编译间创建的其他文件;
  • Build,包含编译引擎或游戏所需的文件,包括为某些平台创建项目版本时所需的文件;
  • Config,配置文件,可控制引擎的行为,覆盖在Engine\Config目录下的值设置;
  • Content,保存引擎或游戏的内容,如资产包、地图;
  • DerivedDataCache,包含派生数据文件(被引用内容加载时生成的),如被引用内容未生成缓存文件,将显著增加加载时间;
  • Intermediate,包含编译引擎或游戏时生成的临时文件;在游戏目录中,Shaders也存储在此目录;
  • Saved,包含自动保存文件,配置(.ini)文件和日志文件;
  • Source,包含引擎或游戏的所有源文件,包括引擎源代码、工具和游戏类等;
    • Engine:
      Developer:编辑器和引擎共同使用的文件;
      Editor:仅编辑器使用的文件;
      Programs:引擎和编辑器使用的外部工具;
      Runtime:仅引擎使用的文件;
    • Game:按模块分组
      Classes:包含所有的头.h文件;
      Private:包含所有.cpp文件;
      Public:包含模块的头文件;

Modules and Plugins

UE的功能被组织成许多模块和插件,模块和插件之间的主要区别之一是模块只包含代码;如,当在引擎中创建项目时,项目源代码会被组织到一个带*的模块中***.Build.cs** 文件;插件包含自己的源文件、二进制文件和**.ulugin**文件;插件也可以包含资产,而模块则不能;因此,可以重新分发插件,以便在其他UE项目中使用它;

Engine-specific Directories

一些子目录对引擎目录是特定的:

  • Documentation,包含引擎文档,包括源文件和发布的文件;
    • HTML,发布的HTML文档文件;
    • Source,源markdown文档文件;
  • Extras:其他辅助和工具文件;
  • Programs:包含根目录中各个项目及其他虚幻程序的配置文件和日志文件;
  • Shaders:保存引擎的着色器源文件(.usf);

Game Project Directories

  • Binaries,包含可执行文件或编译间创建的其他文件;
  • Config,默认项目设置;
  • Content,包含引擎或游戏的内容,如资产包、地图;
  • External dependencies,显示公共引擎头文件(仅在Visual Studio中可见);
  • Intermediate,包含引擎构建工具生成的文件,如VS项目文件,这些文件可被删除和重建;
  • Saved,包含引擎生成的文件,如配置和日志文件,这些文件可被删除和重建;
  • Source,包含游戏模块对象类文件;

Solution Directories

  • Classes,包含游戏对象类定义(.h文件);
  • Config,默认项目设置;
  • External dependencies,显示公共引擎头文件(仅在Visual Studio中可见);
  • Private,包含私有游戏对象类实现文件(.cpp文件);
  • Public,包含公共游戏对象类实现文件(.cpp文件);
相关推荐
极光雨雨2 分钟前
Spring Bean 控制销毁顺序的方法总结
java·spring
念九_ysl20 分钟前
Java 使用 OpenHTMLToPDF + Batik 将含 SVG 遮罩的 HTML 转为 PDF 的完整实践
java·开发语言·pdf
yaoxin52112330 分钟前
124. Java 泛型 - 有界类型参数
java·开发语言
Spirit_NKlaus32 分钟前
解决HttpServletRequest无法获取@RequestBody修饰的参数
java·spring boot·spring
不死的精灵39 分钟前
【Java21】在spring boot中使用ScopedValue
java·spring boot·后端
勤奋的知更鸟1 小时前
Java 编程之模板方法模式
java·开发语言·模板方法模式
M1A11 小时前
TCP/IP协议精解:IP协议——互联网世界的邮政编码系统
后端·网络协议·tcp/ip
逸风尊者1 小时前
开发易掌握的知识:GeoHash查找附近空闲车辆
java·后端
碎叶城李白2 小时前
若依学习笔记1-validated
java·笔记·学习·validated
都叫我大帅哥2 小时前
🌊 Redis Stream深度探险:从秒杀系统到面试通关
java·redis