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文件);
相关推荐
金融数据出海5 分钟前
日本股票市场渲染 KlineCharts K 线图
前端·后端
低客的黑调12 分钟前
为你的项目选择一个适合的[垃圾收集器]
java·jvm·算法
雨中飘荡的记忆20 分钟前
优惠券系统设计与实现
java
1***t82720 分钟前
将 vue3 项目打包后部署在 springboot 项目运行
java·spring boot·后端
芬加达25 分钟前
leetcode34
java·数据结构·算法
__万波__28 分钟前
二十三种设计模式(三)--抽象工厂模式
java·设计模式·抽象工厂模式
疯狂的程序猴33 分钟前
iOS 日志管理的工程化实践 构建从开发调试到系统日志分析的多工具协同体系
后端
申阳40 分钟前
Day 17:03. 基于 Tauri 2.0 开发后台管理系统-登录页面开发
前端·后端·程序员
疯狂的程序猴1 小时前
Transporter 在 iOS 上架流程中的角色变化 本地上传工具的定位、局限与多工具协作趋势分析
后端
better_liang1 小时前
每日Java面试场景题知识点之-线程池配置与优化
java·性能优化·面试题·线程池·并发编程