Hey UE developers! A certain vr project of mine needed the ability to peek into archives and extract them efficiently and I couldn’t find any good zip solution for UE4 so I decided to port 7zip, update it for VS2015 and make it easy to use. I hope this will be useful to some of you :). If you can improve it, please make pull requests!
An event-driven, multi-threaded, C++ & blueprint accessible 7zip archiver and file manipulation plugin for Unreal Engine 4. Built on 7zip-cpp modernization of the SevenZip++.
Supports the following compression algorithms: Zip, 7-Zip, GZip, BZip2, RAR(decompress only), TAR, ISO, CAB, LZMA, LZMA86.
Plugin works in Windows only.
Download
Stable
https://img.shields.io/github/release/getnamo/ziputility-ue4.svg
Unstable
Master Branch
Documentation and Resources
Github Repository
Quick Install & Setup
- Download
- Create new or choose project.
- Browse to your project folder (typically found at Documents/Unreal Project/{Your Project Root})
- Copy Plugins folder into your Project root.
- Restart the Editor and open your project again. Plugin is now ready to use.
Basic Usage - Blueprint
After the quick setup, you will have new functions available to you in blueprint
if you wish to receive callback events add ZipUtilityInterface to your blueprint class and pass a reference to self into your function calls
which exposes these events
so to e.g. Unzip a file you simply do
Note that the event callbacks are optional and are called asynchronously on your game thread allowing you to easily show a progress indicator. The plugin can handle Zipping, Unzipping, Listing contents, Making Folders and Moving/Renaming Files.
For more documentation, read the github repo readme, the main source of documentation.
Changelist
0.3.1
-Fixes for packaging
0.3.0
-Compile fixes for 4.15
-Added scaffold for status return on ZipUtility actions
-misc internal changes from 0.2.2 to 0.2.6
0.2.2
-Thanks to #4](Allow concurrent usage of zip library for list, zip and unzip operations by error454 · Pull Request #4 · getnamo/ZipUtility-ue4 · GitHub) (@hyperdr1ve](error454 (Zachary Burke) · GitHub)) the plugin now supports multiple simultaneous operations working independently on their own threads with proper callbacks.
-Added windows listing folder content function with FileListInterface expected to receive the content data
0.2.0
-Windows API functions split into WindowsFileUtility module
-Added a folder watcher interface (IFolderWatchInterface) and bp library function which will allow you to watch a folder for file changes and respond to such events e.g. directory changed or file changed
-ZipUtility trimmed to only zipping/archive functions
-Thanks to #1](Master by Deams51 · Pull Request #1 · getnamo/ZipUtility-ue4 · GitHub) (@deams51](Deams51 (Mickaël) · GitHub)) now supports extracting a single file
-Unreal engine 4.14 compile fixes
0.1.1
-Added delete file/folder functions
-Added UnzipTo
-Merged UnzipWithFormat with Unzip. Compression set to unknown will auto-detect compression.
-All callbacks now return with the archive path, allowing you to distinguish between simultaneous actions.
-Fixed callback consistency, unzip and zip will emit all progress updates and list callback will return with OnDone when listing has completed.
-Update to 7z-cpp bind to v0.2.0
-Added macro definitions for C++ integration
0.1.0
-First public commit for UE4.10