标签:资产管线
-
动画资产结构:USkeleton/AnimSequence 的数据布局
从 USkeleton 的骨骼树到 AnimSequence 的压缩轨道:动画资产在内存里长什么样、压缩格式怎么权衡、Additive 和 Root Motion 存在哪,源码基于 UE5.3。
-
-
Zen Server 详解:本地与远端部署
Zen 把 DDC 从"一个文件夹"变成"一个带 HTTP 接口的内容寻址存储":本地 store 怎么跑、远端共享怎么部署、oplog 凭什么撑起增量 Cook 和补丁 diff。
-
IoStore 与 Cook 管线:.utoc/.ucas 容器格式和 Zen Server 的协作
讲清 UE5 Cook 后资产怎么进 IoStore 容器、Zen Server 在其中扮演的角色,以及补丁 diff 的数据来源。
-
Cook 流程深潜:CookByTheBook 的依赖遍历与 EditorOnly 剥离
从 CookCommandlet 入口到 CookByTheBook 的队列消费:初始包集从哪来、依赖图怎么展开、保存阶段怎么分层并行、EditorOnly 数据在哪一步被物理剥掉。
-
Pak 与 Chunk:PrimaryAssetLabel 的分包规则
Cook 之后的资产怎么分进不同的 pak/容器:Chunk 分配规则从哪来、PrimaryAssetLabel 怎么写、运行时挂载优先级怎么决定覆盖关系,以及补丁体积为什么取决于 Chunk 划法。
-
DDC 派生数据缓存:GetDerivedData 的哈希键怎么构造
DDC 能成立的前提是什么、查询键由哪几段拼成、各级后端怎么串,以及为什么"配置也是键的一部分"——看懂这些才能解释缓存为什么命中或失效。
-
资产加载机制:FPackageIndex 与 Linker 的解析链路
一个软引用从字符串到 UObject* 的完整路径:Package 加载、Linker 建表、FPackageIndex 解析 Import/Export 的过程。
-
UAsset/UPackage 格式:从 Package Summary 到 Import/Export 表
拆开一个 .uasset 的二进制骨架:Package Summary、Names/Import/Export 三张表各存什么,FPackageIndex 怎么当全文件统一的指针用,EditorOnly 数据在 Cook 时怎么被剥掉。