December 13th, 2022

DirectStorage GDeflate Reference Implementation Now Available

The GDeflate reference implementation is now available from the DirectStorage repo on GitHub. Developers can use this to easily integrate GDeflate into their asset compression tool chains and build compatible compressors. The compression and decompression algorithms are open sourced under the Apache 2.0 license.

How to Build:

The GDeflate directory contains the codec source and sample code. The repo uses submodules, so be sure to pass --recurse --submodules to the git clone command. If you already cloned this repo, then you can run git submodule update --init.

Once cloned:

  1. Install Visual Studio 2019 or higher.
  2. Launch a Developer Command Prompt
  3. Navigate into the GDeflate subdirectory
  4. Configure CMake using the command line, VSCode, or Visual Studio

Note: This code can be built using Linux as long as you have CMake 3.19 and ninja-build installed.

Command line

cmake --preset Debug

cmake --build --preset Debug

VSCode

Launch VSCode in the GDeflate directory root. CMake generation will happen automatically.

Visual Studio

Launch Visual Studio and choose ‘Open a local folder’ and select the GDeflate directory root.

 

Details on DirectStorage and GDeflate:

All instructions and description of the bitstream format are in the README.md file – see here for more details on how to best leverage the compression tooling.

For more details about DirectStorage and GDeflate, please check out our previous blog posts:

DirectStorage 1.1 Coming Soon – DirectX Developer Blog (microsoft.com)

DirectStorage 1.1 Now Available – DirectX Developer Blog (microsoft.com)

 

Need help?

Questions on development? Have a DirectStorage implementation you want feedback on? Reach out to askwindstorage@microsoft.com.

Looking for community engagement? Check out the DX12 Discord Server.

 

Category
DirectX

Author

Cassie Hoef
Principal Program Manager

Developer lead on the DirectStorage for Windows team

0 comments

Discussion are closed.