环境
UE4 版本:4.26.2
Windows
Pak的制作
打开cmd,cd到引擎所在目录下,我这里是H:\Program Files\Epic Games\UE_4.26\Engine\Binaries\Win64, 在该目录中可以看到UnrealPak.exe, 执行以下指令:
".\UnrealPak.exe" "自定义pak路径\YourPak.pak" -create="期望打包pak的目录"
生成成功之后,可以用-list指令查看内容
UnrealPak.exe "Path To Your Pak\YourPak.pak" -list
如下是一个例子,可以看到里面的文件以及Mount Point等信息。
LogPakFile: Display: Using command line for crypto configuration
LogPakFile: Display: Mount point H:/UnrealProjects/MountTest/Content/MyActor/StarterContent/Blueprints/
LogPakFile: Display: "MyMountTest.uasset" offset: 0, size: 141106 bytes, sha1: 534DAFCAB2288787671F4C0CAB3DEEB7A8ABD385, compression: None.
LogPakFile: Display: "NewBlueprint.uasset" offset: 141159, size: 97302 bytes, sha1: 6B7762743192F24C30E00075F035B7476B96E8E4, compression: None.
LogPakFile: Display: 2 files (238408 bytes), (0 filtered bytes).
LogPakFile: Display: Unreal pak executed in 0.000548 seconds
Pak制作的其他指令
-compress 压缩
-Verify 检查pak正确性和完整性
-Info
-Extract 解压pak
-Dest 更改Mount Point
UnrealPak <PakFilename> -Repack [-Output=Path] [-ExcludeDeleted] [Options] 重新打包
UnrealPak <PakFilename1> <PakFilename2> -diff 对比两个pak
-AuditFiles 显示更详细的信息,审核pak中的资源内容
-encrypt 加密
-encryptindex (encrypt the pak file index, making it unusable in unrealpak without supplying the key) 加密索引,不提供key无法解密。可以在Project Setting -> Packaging - > Encrypt the pak index....配置
-encryptionini (specify ini base name to gather encryption settings from) 单独加密ini文件,可以在Project Setting -> Packaging - > Encrypt ini files inside pak files配置
-encryptionkeyoverrideguid (override the encryption key guid used for encrypting data in this pak file)
-sign (generate a signature (.sig) file alongside the pak) RSA签名:0x<私钥指数>+0x<私钥系数>+0x<公钥指数> 或者指定<KeyFileName>
-aes 32位密钥
-extracttomountpoint 提取到指定Mount Point
-compressionformat[s]=<Format[,format2,...]> 设置压缩格式
-fallbackOrderForNonUasse