RAD Game Tools’ Oodle—cross-platform data compression solutions

Good news! RAD Game Tools’ industry-leading compression technology Oodle is now available via the internal Unreal Engine development branch on GitHub, with binary support arriving in Unreal Engine 4.27 and Unreal Engine 5.

Oodle is a suite of cross-platform data compression solutions with incredible performance that makes games smaller to download, makes levels load faster, and compresses network packets for improved player experience. Oodle saves money on bandwidth and slashes the time from download to playing your game.

Here’s the TLDR on the Oodle family of tools:

  • Oodle Data Compression provides the fastest and highest ratio compressors for game data. There’s a perfect Oodle compressor for every need.
  • Oodle Texture dramatically reduces the size of block-compressed BC1-BC7 textures for GPUs. Oodle Texture RDO can reduce texture file sizes by up to 50%!
  • Oodle Network Compression can compress UDP or TCP packets like nothing else, saving bandwidth for players and servers.
  • Oodle Lossless Image Compression is an algorithm that achieves very high compression ratios with incredibly fast decompression, much smaller and faster to load than PNG.

https://lh3.googleusercontent.com/tRaQeRxEop7UfH0JdXLc5kJywufgvIC-KyKUQPp2s5D6buTX10bel6yOtXjCv9bg6ub8F-wxwSQTKuuSs-QVBd7pxWVp-UXfzUHo7on8mf2fMS7lVdpfyoVjsO153GtgonZM00HL

An early integration for Oodle Data, Network, and Texture Compression are now available, with additional Oodle solutions coming soon to Unreal Engine.

Share your feedback, questions, and comments on the Oodle family of tools below!

5 Likes

There is no 4.27 branch nor any commits mentioning “oodle” on any others.

Any chance we can look forward to increased quality of compressed lightmaps using Oodle texture compression?

I’ve just finished adding much better compression to the engine (Basis compression (Texture) / ZSTD (Network) / FLZMA (Data) and it almost seems like a waste now if Oodles claims are correct, I guess I won’t be selling those as a plugin…

I have a question for the devs, will zlib be getting replaced completely or are you leaving it in for legacy purposes? Will the source code for Oodle be provided, so that I can compile it to other platforms or are you planning on just releasing libraries for various platforms?

Edit: Looks like the source for the oodle tools are not provided, if that’s the case can you provide a WebAssembly build of the library?

The source code for oodle is included, but it seems to be incomplete. There are no project files for example, so building it would be difficult.

1 Like

Does Oodle is optimized for PixelStreaming?

Will these products still require paid licenses?

Finally! I was waiting for this

Could you point me to their location? I’m not seeing anything like that on the master branch, in either of the four commits by charles bloom. I’m specifically looking for the sources to oo2net_win64.lib and oo2core_win64.lib.

There are no source codes for libraries and I think there will not be, only headers for connection.
https://github.com/EpicGames/UnrealEngine/tree/8ddd21b75e6784e40498458b9de214d80797b59c/Engine/Plugins/Compression/OodleData

This is great news! But will there be any news about UE4.27 or UE5 any time soon? Just waiting without news is very tiring!
Because we don’t even have any roadmap for UE4.27 or UE5.

I’m having trouble finding the right branch

Oodle source is included in three zip files, located in

Engine/Plugins/Compression/OodleData/Sdks/2.9.0/src/oodle2_src_for_unreal_data_2.9.0.zip
Engine/Plugins/Developer/TextureFormatOodle/Sdks/2.9.0/src/oodle2_src_for_unreal_texture_2.9.0.zip
Engine/Plugins/Compression/OodleNetwork/Sdks/2.9.0/src/oodle2_src_for_unreal_network_2.9.0.zip

after cloning master branch and downloading dependencies.

But as mentioned previously, there are no project files, so you’d be on your own for how to turn that assortment of .h, .cpp, and even assembly source files into a library…

where is Unreal Engine 4.27 can’t find it

Would be more efficient to include them in main source instead of .zip files. Just wondering.

Sure would. Would also be nice if command line tools for creating oodle compressed files and project files for rebuilding them were included. Am just reporting my findings here.

awesome news, huge package sizes should be addressed with this i hope. Now sharing around small builds will be faster. Cannot wait to test out the oodle in 4.27. I will wait. If someone has it working, did someone do build size comparisons yet?

Guess this is only a dev-core branch thing. One thing to note: it seems that the wording is wrong actually. RAD tools/Oodle won’t be free, just integrated. To use it, I guess, there’ll need to be a license purchased?

What is the Weissman score for Oodle’s compression algorithm? :wink:

I’m guessing Oodle Data Compression has the same problems with delta patching (Steam) as everything else.