![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
深入理解Unreal引擎
文章平均质量分 95
NNNNNxs
tencent游戏客户端开发
展开
-
Unreal LevelSequence功能扩展
Track、Section、EvalTemplate、EvaluationData和ExecutionToken就是我们在扩展轨道时需要接触的几个概念,我们不仅可以显示对话文本,如果我们有对话选项等系统的话也可以按照相同的方式与Sequence结合起来,更好的将Sequence融入到游戏中关于更加详细的源码分析可以参考其他大佬的文章UE4 LevelSequence源码剖析(一)UE4 LevelSequence源码剖析(二)UE4 LevelSequence源码剖析(三)原创 2024-03-08 14:18:49 · 719 阅读 · 0 评论 -
Unreal ACL动画压缩库解析
ACL是一个由社区开发的动画压缩插件,包含了多种压缩算法,在UE5.3中被官方纳入为引擎自带插件,并设置为默认动画压缩方案。相比于此前UE的提供的各种单独动画压缩算法(移除线性帧、重复帧等),ACL支持了一些新的动画压缩技术(可变压缩率、分段压缩等)并且一次性可以使用多种压缩算法。ACL支持无损和有损压缩,并且支持指定最大误差等参数。ACL是目前游戏动画压缩一流的库,能够大幅降低动画在游戏内存中的占用并保证视觉正确性,支持多种引擎和语言。原创 2024-03-05 15:54:18 · 1235 阅读 · 0 评论 -
从源码深入理解Unreal动画系统
整理了一下引擎是如何从SkeletalMeshComponent一步一步执行到每一个动画蓝图节点的,分析以源码主要流程为重,像RootMotion等附加功能后续遇到问题再来补充。原创 2023-11-21 11:37:49 · 359 阅读 · 0 评论 -
从源码深入理解Unreal中UObject的构造流程
在Unreal中创建一个UObject可以大致分为三步,前两步和传统的c++一样分别为分配内存和构造初始化,分配内存部分会判断是否已有旧对象并对可能会对旧对象做回收操作,构造初始化本质上就是直接调用我们写的构造函数只不过多了几步通过模板和宏的转发。第三步是Unreal独有的属性初始化,会通过CDO和Config等来初始化新建对象的UPROPERTY属性。这里其实还有很多内容,包括这些过程中的很多判断我都没有分析是为什么,以及一大堆的Flag,此外还有Archetype与CDO有什么不同?原创 2023-10-06 22:17:28 · 462 阅读 · 0 评论 -
Unreal蓝图进阶
所有蓝图节点类型都直接或间接派生自UK2Node,更进一步的说是派生自,所有编辑器节点(行为树节点、状态机节点等)的基类,每个节点上的输入输出都是一个,Pin可以分为Input和Output分为两类,也可以按照数据类型分为若干中甚至包括容器等。在对这些有了基础的了解后,我们可以开始定制一些自己的蓝图节点,虽然UK2Node中提供了大量的虚函数可以重载,但这样做未免太复杂了,实际上有大量的节点类型我们可以去参考甚至直接使用。这里以比较常见的需求即怎么创建一个有ExecPin类型输出的节点为例,分析一下和。原创 2023-09-03 19:02:31 · 280 阅读 · 0 评论 -
如何正确在Unreal中创建Component
显然方案二是最差的,除非有特殊情况否则应该尽量不使用方案二去创建Component在一些确定的情况下,比如DialogueComponent以来于音频组件,但每个Character拥有音频组件是很合理常见的,那么可以使用方案三去创建依赖的Component,这点Unreal应该向Unity学习,提供一些支持依赖的宏来在编辑器界面提示这个组件需要哪些组件,就像Unity支持在Attribute中设置RequiredComponent来自动添加需要的组件方案一。原创 2023-09-01 20:26:49 · 439 阅读 · 0 评论 -
从源码深入理解Unreal的AI寻路系统
Unreal为AI寻路提供了非常完善的支持系统(NavigationSystem、PathFollowingComponent等),并且和AIController、MovementComponent以及AITask等其他模块间有密切的调用关系,很多参数都支持定制化,但学习成本较高,本文旨在结合源码以浅显易懂的方式分析一次AI寻路流程中涉及的各个模块和数据类型。原创 2023-08-07 18:52:04 · 821 阅读 · 0 评论 -
DLSS和FSR超分辨率技术解析
本文主要从引擎源码的角度分析DLSS、FSR这样的超分辨率技术是如何接入到游戏的渲染管线中以及如何使用渲染管线中的资源完成超分算法,而不过多深入超分算法以及Shader代码本身,对于超分原理部分DLSS和FSR官方都有很详细的文档,全文是建立在对DLSS、FSR在Unreal引擎中的插件代码分析上完成的,由于DLSS的源码大多不开源,所以主体分析以FSR2为主原创 2023-06-16 20:55:46 · 2544 阅读 · 0 评论 -
从源码深入理解Unreal渲染管线
最近在搞超分相关的工作,发现自己对Unreal渲染管线的理解还是太浅,于是边工作边整理了此文,整篇文章比较长,建议边打开Unreal源码边阅读,跟随文中的顺序能够将Unreal渲染管线错综复杂的源码模块化串联起来,以后有新的发现也会持续更新此文,如果对文章内容有疑问欢迎指正。原创 2023-06-16 12:05:45 · 2746 阅读 · 3 评论