UE4工具集:我的开源项目介绍

工欲善其事必先利其器,本文主要介绍在我在使用UE的过程中开发的一些开源的工具和插件,能够方便地在项目中使用,提高开发效率。之前简单罗列在资源页面里,今天做一个详细的整理,对各个工具、插件做一些介绍。

Tools

本节主要介绍我开发和部署的UE的外部工具,可以方便开发流程。

UE4PROGRAM

ue4program是一个命令行工具,用于方便地创建UE的Standalone Application的工具(官方没有提供它的创建方法),可以使用UE来写一些独立程序而不依赖引擎启动的流程,也可以方便地测试引擎的功能而不用创建一个游戏项目。

详细介绍见我之前的文章:Create A Standalone Application in UE4

UE4Launcher

UE4Launcher是一个使用UE的Standalone Application的方式开发的独立程序,用来方便地切换引擎、启动项目、添加启动参数、保存配置,使用命令行通过配置启动,支持关联uproject文件。

主界面:

uproject的文件关联:

详细的用法和介绍可以看Create A Standalone Application in UE4

UE4_API_FOR_DASH

UE4_API_FOR_DASH是我制作的UE4 API的Dash文档源。可以方便地使用Dash或者Zeal来查询UE的C++ API,目前最新的文档源是生成UE4.25.3引擎版本,如果后续有新的引擎版本发布,我也会不定期更新。

文档源的下载和更新,见我之前的文章:抓取 UE4 API 并生成带索引的 Dash 文档

UE4 Console Help

UE提供了Console命令的帮助文档,我把它部署到了公网,可以方便在线查看和搜索。

地址:consolehelp.imzlp.me

UE4 Wiki Archive

UE4的官方wiki经历了很大改版,之前老Wiki中的内容都没了,很可惜,老wiki中有很多很棒的内容,所以我部署了UE4老wiki的站点,作为备份。地址:ue4wiki.imzlp.me

Plugins

本节介绍我业余开发的UE中的一些插件,简单介绍一下它们的功能和解决了什么问题。

HotPatcher

HotPatcher是我开发的用于UE4热更新资源的打包工具,用来管理热更新版本,进行资源的差异分析并打出pak,支持全平台。

详细的介绍见我之前的文章:UE4 资源热更打包工具 HotPatcher,Github地址:hxhb/HotPatcher
以及UE4热更新的思路:UE4 热更新:需求分析与方案设计

ExportNav

ue4-export-nav-data是我开发的用于从UE4导出Recast Navigation寻路数据的插件,可以用在非DS架构的服务器中用作地图同步以及寻路计算使用。该插件上架了虚幻商城,但是依然在Github上开源。
详细的文档介绍见我之前的文章:Export Recast Navigation Data from UE4

另外,针对外部服务器使用导出的Recast数据,我也抽出了UE所使用的recast-detour版本,可以用在外部服务器的寻路:ue4-recast-detour

ue4-zstd

ue4-zstd是我集成到UE的ZSTD压缩算法,使用ModularFeature的方式集成,可以替换引擎中默认的ZLib算法,也可以配合HotPatcher使用,替换pak的压缩算法。
详细的文档见我之前的文章:ModularFeature:为 UE4 集成 ZSTD 压缩算法

ue4-downloadtookit

ue4-downloadtookit是我基于HTTP封装了一个下载库,支持边下边存/边下边计算MD5,这样当文件下载完也已经存到本地了,并且还计算出了MD5值可以供校验用。还支持暂停/继续/分片下载,自己改一下也可以改成断点续传的。
开源在Github上:ue4-downloadtookit,支持IOS/Android/Windows/Mac四个平台。
在这个插件中我还封装了一个MD5Wrapper.hpp可以用来在其他地方的MD5计算,使用的是OpenSSL的库。

PlatformUtils

PlatformUtils是一个跨平台插件,用于在四个平台(Win/Mac/Android/iOS)获取硬件信息,主要是用作展示UE的跨平台写法,如何集成iOS的framework并使用、Android添加Java代码、使用JNI调用等特定平台的原生操作。

unreal-pb

unlua-pb是集成lua-ptorobufUnLua的Module,之前没有UnLua的版本,我做了集成。

debugable-unlua

debugable-unlua是Fork自Tencent的UnLua,我在其基础上修改,基础版本为106fa9c,目的是打造一个开箱即用的UnLua,可调试和一些基础lua库、编辑器优化。

ue4-git-controller

ue4-git-controller可以在UE中操作Git仓库,可以用来拓展UE的版本控制功能。

ue4-protobuf

ue4-protobuf是以源码方式集成的protobuf,版本为3.5.1。

ue4-jwt

ue4-jwt在UE中集成JWT的插件,可以用来跨域认证。

全文完,若有不足之处请评论指正。

扫描二维码,分享此文章

本文标题:UE4工具集:我的开源项目介绍
文章作者:查利鹏
发布时间:2020年10月11日 10时33分
本文字数:本文一共有2.2k字
原始链接:https://imzlp.me/posts/21696/
专栏链接:https://zhuanlan.zhihu.com/p/264786909
许可协议: CC BY-NC-SA 4.0
捐赠BTC:1CbUgUDkMdy6YRmjPJyq1hzfcpf2n36avm
转载请保留原文链接及作者信息,谢谢!
您的捐赠将鼓励我继续创作!