虚幻4引擎源码学习笔记(一):整体文件结构

时间:2024-01-21 14:48:48

首先根据目录文件夹整体看一下结构,版本4.2
Binaries

里面是一些配置文件和第三方的配置文件,全部是xml,从这可以看到虚幻4都用了什么第三方工具,有各个平台的图形库,还有声音库,物理库(PhysX3),VR,图形显卡,Mono,,等等
Build

各个平台编译需要的,有一些批处理和xml文件等等

有安卓,IOS,TVOS,HTML5等等
Config

各个平台的参数设置
Documentation

文档
Extras

额外的第三方工具

有Maya动画Ragging工具,VSDebug等等
Plugins

插件,每个插件都有一个.uplugin文件来表示版本号和信息

2D(Paper2D):虚幻的基于Sprite的系统

https://docs.unrealengine.com/en-us/Engine/Paper2D

AI:我们可以在AISupportModule类中看到有哪些类是AI模块,包括导航系统等等

PublicDependencyModuleNames.AddRange(
new string[] {
  "Core",
  "CoreUObject",
  "Engine",
  "NavigationSystem",
  "AIModule"
}
);

Animation(LiveLink):LiveLink是能够在外部建模软件(比如maya)修改动画,然后在Unreal中能够实时显示修改后的动画的功能

https://docs.unrealengine.com/en-us/Engine/Animation/Live-Link-Plugin

Blendable(Light Propagation Volume):是一种实时GI方法(格子和球谐)

https://wiki.unrealengine.com/Light_Propagation_Volumes_GI

https://docs.unrealengine.com/en-us/Engine/Rendering/LightingAndShadows/LightPropagationVolumes

Compositiong:Composure插件,将游戏与现实中影像混合的插件,

https://docs.unrealengine.com/en-us/Engine/Composure

lens distortion插件,镜头畸变,内部还有shader代码,本质都是变换uv

openCV lens distortion插件

Developer:Blank Plugin一个空白的插件,可以提供给开发者开发插件参考

CLion 插件

codelite插件

Git源码管理插件

https://wiki.unrealengine.com/Git_source_control_(Tutorial)

KDevelop插件

OneSky本地化服务插件

Perforce版本控制插件

https://api.unrealengine.com/CHN/Engine/Basics/SourceControl/Perforce/index.html

RenderDoc着色器调试器

源码:https://github.com/Temaran/UE4RenderDocPlugin

https://wiki.unrealengine.com/RenderDoc_plugin

https://forums.unrealengine.com/development-discussion/rendering/17347-new-plugin-shader-debugging-made-easy-with-renderdoc-for-ue4

等等还有一些VS、Xcode等编译器插件

Editor:一些编辑器编辑器插件

资源管理、蓝图材质贴图节点、面部动画编辑器,Gameplay Tags编辑器,mesh编辑器、Mobile Launcher Profile Wizard,SpeedTree导入插件,等等

Experimental:

Alembic文件导入插件(.abc插件)

https://docs.unrealengine.com/en-us/Engine/Content/AlembicImporter

苹果图片工具、苹果视觉插件、蓝图统计插件、角色AI插件、代码浏览等等插件

FX:特效相关插件

Houdini Niagara插件

Media:媒体相关插件

Messaging:网络相关插件,TCP、UDP

Performance:Performance Monitor性能监控器

RunTime:

Google AR Core、Apple AR Kit、Apple Movie Player、Android Moview Player、Oculus VR等等
Programs

一些工具的参数,内部全是.ini文件

打补丁工具,shader编译,等等
Shaders

所有着色器,分为private,public,standalone
Source

真正源码所在

Developer开发部分

Editor编辑器部分

Programs程序部分

Runtime核心部分

ThirdParty第三方


------by wolf96 2018.9.9

欢迎访问个人网站:点击链接