v76.0
HotPatcher v76.0版本更新
- 支持World Composition
- 修复跨引擎版本的兼容性问题
- 默认开启
bCookPatcherAssets
- 优化代码、修复4.27中的编译问题
- 支持非侵入式给HotPatcher开发模块
在HotPatcher/Mods
下,可以基于HotPatcher二次开发新的打包和资源管理模式,充分利用HotPatcher的框架功能,能够拓展更多的功能:
- 资源分析
- 打包
- 资源扫描、管理、审计
- 多进程Cook
- 不同形式的热更新方式
等等,根据业务的实际需求实现真正的定制化。
模块扩展示例
uplugin中添加HotPatcher的插件依赖:
"Plugins": [
{
"Name": "HotPatcher",
"Enabled": true
}
]
在build.cs中添加模块依赖:
PublicDependencyModuleNames.AddRange(new string[]{
"HotPatcherRuntime",
"HotPatcherCore",
"HotPatcherEditor"
});
在模块的StartupModule
中即可注册到HotPatcher中:
THotPatcherTemplateHelper::AppendEnumeraters<EHotPatcherCookActionMode>(TArray<FString>{TEXT("ByMultiProcess")});
FHotPatcherAction MultiCookerAction
(
TEXT("Cooker"),
LOCTEXT("ByMultiProcess", "ByMultiProcess"),
LOCTEXT("MultiCookerActionHint", "Use multi-process Cook Content"),
FSlateIcon(),
nullptr,
CREATE_ACTION_WIDGET_LAMBDA(SMultiCookerPage,TEXT("ByMultiProcess"))
);
FHotPatcherActionManager::Get().RegisteHotPatcherAction(TEXT("Cooker"),TEXT("ByMultiProcess"),MultiCookerAction);
基于HotPatcher的核心功能,可以根据需求定制化界面、拓展新功能。