📺 插件功能演示


🛠️ 技术栈

  • Engine: Unreal Engine (Cross-version support)
  • Language: C++ (Core Implementation)
  • External Libs: Google libwebp
  • Key Modules: AsyncTask, ThreadSafe, Memory Management, Image Decoders

📝 项目核心技术方案

本项目致力于解决虚幻引擎原生对 WebP 动画格式支持不足的问题,通过深度集成 Google 开源编解码库实现高性能的图片处理。

1. libwebp 库的底层集成

  • 原生接入:libwebp 编译为第三方静态库,并通过 C++ 接口封装了其核心编码与解码函数。
  • 格式支持: 实现了对静态 WebP 以及带有 Alpha 通道的动态 WebP 动画的完美解析与生成。

2. 异步多线程编解码流水线

  • AsyncTask 机制: 采用虚幻引擎的 AsyncTask 框架,将耗时的编解码任务从主线程(Game Thread)完全剥离。
  • 性能优化: 设计了生产者-消费者模式的缓冲区,确保视频帧或序列图在后台平滑解码,彻底解决了播放大尺寸动态 WebP 时的掉帧问题。

3. 内存与线程安全设计

  • 线程同步: 利用智能指针与原子变量(Atomics)确保跨线程访问图像原始数据时的安全性。
  • 内存回收: 针对大量帧数据的内存占用,实现了 LRU 缓存机制,自动清理不再显示的图像缓存。

📸 插件内部预览

全屏录制设置
选择录制屏幕范围设置
结束录制设置
加载录制设置