集成UE至原生Xcode iOS项目
将UE集成至原生Xcode iOS项目中,由原生Xcode工程来按需驱动引擎,并且可以进行双端通信,在一个普通的App中实现启动虚幻引擎、运行游戏。
演示视频:
该方案已经过验证可行,Xcode端可以脱离对引擎源码的依赖。
UE中人体姿态追踪
基于普通的摄像头在UE中实现面部、体态、手部追踪:
可以直接在UE中访问追踪数据,可以用来开发体感游戏。
基于字典的Shader压缩方案
不同压缩算法对Shader的压缩数据:
Category/kb | NoCompress | LZ4(Default) | zstd+dict |
---|---|---|---|
Global | 20151 | 5304 | 1997 |
StarterContent | 16972 | 6353 | 1443 |
Dict | 501 | ||
Total | 37123 | 11657 | 3941 |
使用ZSTD+字典的方式进行Shader压缩,相比引擎默认的LZ4提升了约66%的压缩率。
运行时的解压耗时:
具体的实现思路详见:基于 ZSTD 字典的 Shader 压缩方案
Pak的运行时重组热更方案
基于客户端的版本检测和更新方案,Pak的运行时重组。
优点:
- 降低发布端的管理成本
- 不同版本的Client共用同一发布版本
- 最大限度地复用本地资源
- 本地合并Pak,降低Pak过多的开销