UE4大场景解决方案 ——Pak的打包与加载

一、实现步骤

1.cook Content烘焙uasset文件

2.UnrealPak打包Pak文件

3.FPakFile、FPakPlatformFile从Pak文件中遍历文件StaticLoadObject加载特定类型的UObject

4.SpawActor在世界中创建物体

二、打包过程

先将我们要打包的资源放在一起,如下:

需要打包pak的内容

如果希望共享网格贴图等资源,也可以单独导出Test_01这个BP。

但需要保证加载Test_01时,他的依赖资源路径正确。如下图:

Test_01的Mesh引用路径

Test_01的Mat引用路径

这些路径信息可以通过鼠标悬浮等方法查看。

保存后,选择界面的Cook按钮或者通过UAT命令行进行烘焙。

Cook按钮

Cook会将资源烘焙为对应平台的资源,请根据目标平台Cook。

Cook后资源所在目录

默认会将整个Content资源Cook,找到我们的目录。并找到打包工具UnrealPak

UnrealPak

注意不同的UE4版本请使用对应版本的UnrealPak,否则可能引起加载失败。

通过cmd命令,找到UnrealPak,也可以将该目录加入系统环境变量方便调用。

  • 默认调用方法

  • 文本调用方法

第一个路径为Cook路径,第二个路径为pak的Mount路径。注意要带/*,可以写多行

直接将创建路径改为该文本,即可按照文本配置批量打包

输入命令行后不出意外应该如下:

打包后提示内容

可以通过UnrealPak -list命令来查看包信息:

Pak的内容信息

也可以使用UnrealPakViewer来可视化查看:

FlyingTree:UnrealPakViewer可视化Pak分析工具

Pak常用加载命令:

三、挂载——Pak加载

加载主要是在根路径和包内容路径(挂载点)之间创建链接。 这是使资产之间的引用工作所必需的。 应称为安装后的pak。

如果不注册挂载点,引擎就不知道挂载插件的根路径。 ContentPath是pak文件的挂载点+你的“Content”文件夹的进一步部分。

例:

@RootPath:你的资源所在的顶级内容文件夹名称(例如:/TestDLC/)。

@ContentPath:在一个pak中,RootPath应该指向的路径。 (例如:

. . / . . / . . / TestProject /插件/ TestDLC /内容/)

参考自:

B站UE4 资源打包加载官方教程:虚幻引擎官方中文直播 第4期 | 打扮家UI框架/资源打包加载_哔哩哔哩_bilibili

专栏文章 UE4的Pak从打包到加载 - 知乎

  • 4
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值