UE4对象系统_序列化和uasset文件格式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UE4对象系统_序列化和uasset文件格式相关的知识,希望对你有一定的参考价值。
参考技术A 虚幻的序列化这块是个人比较喜欢的技术点,个人在工作中也山寨了个简化版,UE4延续了UE3的序列化方案。它使用了访问者模式(Vistor Pattern),将序列化的存档接口抽象化,其中FArchive为访问者, 其它实现了void Serialize( FArchive& Ar )接口的类为被访问者。FArchive可以是磁盘文件访问, 内存统计,对象统计等功能。FArchive的类继承体系如下:
定义接口如下:
通过重载operater <<来实现对数据的访问。
下面为调试时的几张堆栈图:
UE中使用统一的格式存储资源(uasset, umap),每个uasset对应一个包(package),存储一个UPackage对象时,会将该包下的所有对象都存到uasset中。UE的uasset文件格式很像Windows下的DLL文件格式(PE格式),并且使用起来神似(下一节分析Linker)。
导入表条目FObjectImport
导出表的条目FObjectExport
以上是关于UE4对象系统_序列化和uasset文件格式的主要内容,如果未能解决你的问题,请参考以下文章
UE4 从外部 .FBX 文件创建 UStaticMesh 返回 NULL