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文件);
相关推荐
Victor3567 小时前
Redis(109)Redis的Pipeline如何使用?
后端
NPE~7 小时前
[手写系列]Go手写db — — 第七版(实现Disk存储引擎、Docker化支持)
数据库·后端·docker·golang·教程·手写数据库
Victor3567 小时前
Redis(108)Redis的事务机制如何实现?
后端
JaguarJack7 小时前
PHP 开发中 你可能不知道的非常好用 PhpStorm 插件
后端·php
9ilk7 小时前
【基于one-loop-per-thread的高并发服务器】--- 前置技术
运维·服务器·c++·笔记·后端·中间件
编程火箭车7 小时前
【Java SE 基础学习打卡】02 计算机硬件与软件
java·电脑选购·计算机基础·编程入门·计算机硬件·软件系统·编程学习路线
Felix_XXXXL8 小时前
IDEA + Spring Boot 的三种热加载方案
java·后端
程序员爱钓鱼8 小时前
Python编程实战:面向对象与进阶语法——上下文管理器(with语句)
后端·python·ipython
我命由我123458 小时前
IDEA - IDEA 快速回到页面首尾、页面快速滑动、快速定位到指定行
java·运维·ide·后端·java-ee·intellij-idea·intellij idea