Compressonator is a set of tools to allow artists and developers to more easily work with compressed assets and easily visualize the quality impact of various compression technologies.
It consists of a GUI application, a command line application, and an SDK for easy integration into a developer toolchain.
Download the latest version - v4.5
This release adds the following features:
- Improved compression ratios for most BCn textures using Brotli-G
- A new Brotli-G zip packaging feature
- ETC codec fixes
- Various build improvements and bug fixes
Features
- Fast compression speeds.
- Adjustable bit rates and quality settings.
- The GUI and CLI interacts with SDK for texture compression and bit format conversions.
- Process multiple compression, decompression and transcode of images with a single processing action.
- Allow multiple processing interactions for a single source image.
- Inspect visually and analytically compression results.
- Uses a single image viewer that supports a large number of compressed and uncompressed image formats.
The SDK provides a variety of block based codecs, palletized and grayscale encoders, and useful tools for generating mip-maps, comparing the quality of compressed and uncompressed images and batch-compressing large databases of images are included.
Developers and texture artists can optimize the level of quality and performance that best suites the requirements for their game assets and pipeline. Textures are compressed according to specific data streaming requirements, balancing both power and memory of the targeted devices while maintaining quality that users expect.
Explore more features of Compressonator
Introducing Compressonator v4.5 with up to 20% improvement in Brotli-G compression
Compressonator v4.5 introduces improved BC1-BC5 compression that reduces file sizes on average by 10%-15% using a new Brotli-G zip packaging feature, mipmap changes, ETC codec fixes, and more.
Introducing Compressonator v4.4 with AVX-512 support for BC1 Encoding
Compressonator v4.4 adds AVX-512, AVX2, and SSE4 variations of BC1 encoding in the Compressonator Core library, new CLI options, and more.
Introducing Compressonator v4.3 – Brotli-G, multi-texture mipmap generation, and more
Compressonator v4.3 is out now! v4.3 features Brotli-G lossless compression, multi-texture mipmap generation, and much more.
Compressonator 4.2 – Features update for BC1 and BC7 codecs, and more
Compressonator v4.2 brings improvements for BC1 and BC7 codecs, plus API, SDK, and CMake updates.
Compressonator 4.1 – SNORM support for BC4/BC5, MIP map filter support, and more
Compressonator v4.1 adds SNORM support for BC4 and BC5, MIP map filter support using either GPU or CPU, GPU-based compression and MIP map generation, and much more.
Compressonator 4.0 – Utilize the Power of GPU-based Encoding
The Windows version of Compressonator 4.0 supports GPU encoding with DirectX® Compute (DXC) or OpenCL™ (OCL) shaders.
Requirements
Supported GPUs
- Radeon™ RX 7000 series
- Radeon™ RX 6000 series
- Radeon™ RX 5500 series and RX 5300 series
- Radeon™ RX 5700 and RX 5700 XT
- Radeon™ VII
- Radeon™ RX Vega
- Ryzen™ 5 2400G and Ryzen 3 2200G Processors with Radeon™ Vega Graphics
- Radeon™ R9 Fury, Fury X and Fury Nano
- Radeon™ RX 400 and RX 500
- Tonga R9 285, R9 380
Supported graphics APIs
- DirectX® 12
- Vulkan®
- OpenCL™
Supported OSs
- Windows® 10
Version history
- Brotli-G (Lossless Compression Format)
- Compressed to Compressed Format Transcoding
- BC6H Codec Improvements
- Mesh Optimization
- Mipmap Updates
- RGBA1010102 Format Support
- Option to Use Original File Names when Compressing
- GUI Compression Consistency
- Linux Packaging
- Miscellaneous Changes/Improvements
- Brotli-G (Lossless Compression Format)
- Compressed to Compressed Format Transcoding
- BC6H Codec Improvements
- Mesh Optimization
- Mipmap Updates
- RGBA1010102 Format Support
- Option to Use Original File Names when Compressing
- GUI Compression Consistency
- Linux Packaging
- Miscellaneous Changes/Improvements
- BC1 performance and quality improvements.
- BC7 DXC quality improvements.
- Updated SDK features for BCn codecs.
- CMake build updates.
- SNORM support for BC4 and BC5.
- MIP map filter support using either GPU or CPU.
- GPU-based compression and MIP map generation.
- PSNR display feature for GUI image views.
- KTX2 file support.
- CSV file update to support automation.
- CMP_Core GPU encoding support
- Supports GPU-based encoding with OpenCL™ and DirectX® 11.
- Analysis Views
- (Beta Feature) Displays performance data for GPU and CPU based BC1 to BC7 encoders.
- CLI Analysis Log File
- The ”
process_results.txt
” logging includes GPU performance analysis data.csv
file format is also available.
- The ”
- Using Codec Quality Settings
- Quality settings are available for BC1, BC2 and BC3 encoders.
- Setting Global Quality Settings
- Users can override all individual destination compression settings, using a globally set value before processing.
- Make Compatible Feature
- Compressonator SDK performs auto conversions of float to byte and byte to float formats when encoding textures with GPU or CPU encoders.
- New Libraries
- Several new libraries are now provided with the SDK.
- Compressonator Core Provides block level API access to updated performance and quality driven BCn codecs.
- Compressonator Framework Includes Compressonator core with interfaces for multi-threading, mipmap generation, file access of images and HPC pipeline interfaces. (SPMD & GPU support is not enabled in this release).
- Compressonator SDK Has been updated to support Cube Maps, MIP Map generation. External link requirement for Open EXR has been removed.
- Cube Map Support
- This release previews cube map support for images that are limited to RGBA_8888 format and RGBA_F16. Support for other formats will be provided in the next major update.
- Analysis Views
- An analysis table view and results output are provided for users to view test analysis results for Performance, PSNR and SSIM analysis during and after processing of image textures.
Fresh New Installers.
- Texture Compression:
- BC6H.
- ETC2_RGBA and ETC2_RGBA1.
- CLI Options:
- Process Source and Destination Folders
- CLI Analysis Log File
- 3D Model
- Model Mesh Compression.
- Selectable 3D Model Viewers.
- 3D Model Image Diff Viewer, Auto and Manual View.
- Image Viewer
- Save View as.
- Save Block as.
- Copy to Windows Clipboard.
V3.0 release will expand Compressonator assets processing from 2D to 3D.
- 3D Mesh Optimization
- Optimize mesh (.obj model and .bin file from .glTF model) using vertex cache optimization, overdraw reduction and mesh simplification using level of details.
- Analyzing Mesh : Provide ACMR (Average Cache Miss Ratio) and ATVR (Average Transformed Vertices Ratio) statistic from mesh optimization to analyze mesh optimization only.
- 3D Mesh Compression
- Compress mesh (support only .obj model) using Draco library.
- Image View switch between Original and Processed.
- Original Image View and Processed Image View (Compressed Image View or Pixels Difference Image View).
- Linux and Mac support- build with cmake and shell script.
- Preview of 3D model viewer and asset compression
- Compress texture images within the glTF file.
- View 3D Models with DX12 using glTF v2.0 file format https://www.khronos.org/gltf.
- Compare compressed model textures with original.
- GUI updates include:
- Added support for HDR image view, a HDR properties window has been added to allow user adjust Exposure, Defog, Knee Low and Knee-High values.
- Added support for channel weight setting in destination setting window for compression codecs.
- Added support for alpha setting in destination setting window for BC1.
- Added option to select image view with GPU or CPU (decompress with GPU or CPU).
- GUI “Process” icon behavior has been changed for the convenience of the users:
- “Process” icon has been enabled all the time even when users do not add any compression setting to the original images.
- Allow user to drag and drop multiple images and click “Process” right away, in which GUI will set the compression setting chosen by the users to all original images.
- Codecs updates include:
- ASTC
- ETC2
- Improved BC6H Compression quality.
- Improved performance of ASTC compression.
- Performance adjusted according to quality settings.
- Fast multi-threaded implementation.
- Support MipMap generation in KTX files.
- Added TGA image plugin.
- Added Vulkan GPU based decompression and viewing of compressed image.
- 64-bit support added to Command Line and GUI applications.
- ETC2 codec for RGB textures
- Compatible with OpenGL’s GL_COMPRESSED_RGB8_ETC2 API
- ASTC compression & decompression of various block sizes from 4×4 to 12×12
- Supported through OpenGL APIs
- Requires GPU HW supports ASTC format
- Selectable GPU or CPU based compressed image views
- GPU rendering based on OpenGL or DirectX
- Channel weighting
- Enabled in Compression setting
- Alpha setting enabled for BC1 (DXT1)
Read about previous releases and related content
Pre-condition block compressed textures with Brotli-G
Brotli-G (v1.1 onwards) now supports pre-conditioning of block compressed textures. Take a look for a quick summary!
Introducing Compressonator v4.5 with up to 20% improvement in Brotli-G compression
Compressonator v4.5 introduces improved BC1-BC5 compression that reduces file sizes on average by 10%-15% using a new Brotli-G zip packaging feature, mipmap changes, ETC codec fixes, and more.
Introducing Compressonator v4.4 with AVX-512 support for BC1 Encoding
Compressonator v4.4 adds AVX-512, AVX2, and SSE4 variations of BC1 encoding in the Compressonator Core library, new CLI options, and more.
Introducing Compressonator v4.3 – Brotli-G, multi-texture mipmap generation, and more
Compressonator v4.3 is out now! v4.3 features Brotli-G lossless compression, multi-texture mipmap generation, and much more.
Compressonator 4.2 – Features update for BC1 and BC7 codecs, and more
Compressonator v4.2 brings improvements for BC1 and BC7 codecs, plus API, SDK, and CMake updates.
Compressonator 4.1 – SNORM support for BC4/BC5, MIP map filter support, and more
Compressonator v4.1 adds SNORM support for BC4 and BC5, MIP map filter support using either GPU or CPU, GPU-based compression and MIP map generation, and much more.
RenderDoc 1.8 has Compressonator support
When associated with DDS files, RenderDoc generates thumbnails for DDS formats and displays them in Windows Explorer. Compressonator Core provides functions for compressing and decompressing DDS files.
Compressonator 4.0 – Utilize the Power of GPU-based Encoding
The Windows version of Compressonator 4.0 supports GPU encoding with DirectX® Compute (DXC) or OpenCL™ (OCL) shaders.
Announcing Compressonator 3.2
The latest version of Compressonator is now available, featuring new BCn codec kernels, framework interfaces, cube maps, and more.
New Compressonator 3.1 SDK for seamless integration into asset toolchains – and more!
This version contains several new features and optimizations, including new installers for the SDK, CLI and GUI tool, new batch compress support, improvements to Compressonator’s BC6H and ETC2 support, a new glTF model previewer, and more.
Compressonator V3.0 release brings powerful new 3D model features
Compressonator is a set of tools that allows artists and developers to work easily with compressed assets and easily visualize the quality impact of various compression technologies.
Compressonator V2.7 Release adds cross platform support and 3D Model compression with glTF v2.0
Information about the new features and optimizations in Compressonator v2.7.
Our other tools
Frame Latency Meter measurement tool is a must-have for anyone who wants to measure the response time of their games with mouse events.
GPU Reshape is a powerful tool that leverages on-the-fly instrumentation of GPU operations with instruction level validation of potentially undefined behavior.
Radeon™ GPU Detective (RGD) is a tool for post-mortem analysis of GPU crashes. RGD can capture AMD GPU crash dumps from DirectX® 12 apps.
Radeon™ Raytracing Analyzer (RRA) is a tool which allows you to investigate the performance of your raytracing applications and highlight potential bottlenecks.
The RDP provides a communication channel with the Radeon™ Adrenalin driver. It generates event timing data used by the Radeon™ GPU Profiler (RGP), and the memory usage data used by the Radeon™ Memory Visualizer (RMV).
Radeon™ Memory Visualizer (RMV) is a tool to allow you to gain a deep understanding of how your application uses memory for graphics resources.
This is a Visual Studio® Code extension for Radeon GPU Analyzer (RGA) to allow you to use RGA directly from within VS Code.
RGP gives you unprecedented, in-depth access to a GPU. Easily analyze graphics, async compute usage, event timing, pipeline stalls, barriers, bottlenecks, and other performance inefficiencies.
If you want to know how well a game is performing on your machine in real-time with low overhead, OCAT has you covered.
Radeon GPU Analyzer is an offline compiler and performance analysis tool for DirectX®, Vulkan®, SPIR-V™, OpenGL® and OpenCL™.
Our other SDKs
Capsaicin is a Direct3D12 framework for real-time graphics research which implements the GI-1.0 technique and a reference path-tracer.
The Render Pipeline Shaders (RPS) SDK provides a framework for graphics engines to use Render Graphs with explicit APIs.
ADLX is a modern library designed to access features and functionality of AMD systems such as Display, 3D graphics, Performance Monitoring, GPU Tuning, and more.
Brotli-G is an open-source compression/decompression standard for digital assets (based on Brotli) that is compatible with GPU hardware.
HIP RT is a ray tracing library for HIP, making it easy to write ray tracing applications in HIP.
Orochi is a library which loads HIP and CUDA® APIs dynamically, allowing the user to switch APIs at runtime.
AMD Radeon™ ProRender is our fast, easy, and incredible physically-based rendering engine built on industry standards that enables accelerated rendering on virtually any GPU, any CPU, and any OS in over a dozen leading digital content creation and CAD applications.
Radeon™ Machine Learning (Radeon™ ML or RML) is an AMD SDK for high-performance deep learning inference on GPUs.
Harness the power of machine learning to enhance images with denoising, enabling your application to produce high quality images in a fraction of the time traditional denoising filters take.
The Advanced Media Framework SDK provides developers with optimal access to AMD GPUs for multimedia processing.
The D3D12 Memory Allocator (D3D12MA) is a C++ library that provides a simple and easy-to-integrate API to help you allocate memory for DirectX®12 buffers and textures.
The AMD Display Library (ADL) SDK is designed to access display driver functionality for AMD Radeon™ and AMD FirePro™ graphics cards.
The AMD GPU Services (AGS) library provides software developers with the ability to query AMD GPU software and hardware state information that is not normally available through standard operating systems or graphics APIs.
VMA is our single-header, MIT-licensed, C++ library for easily and efficiently managing memory allocation for your Vulkan® games and applications.
AMD TrueAudio Next is a software development kit for GPU accelerated and multi-core high-performance audio signal processing.
AMD Radeon™ ProRender SDK is a powerful physically-based path traced rendering engine that enables creative professionals to produce stunningly photorealistic images.
The lightweight accelerated ray intersection library for DirectX®12 and Vulkan®.
GPUPerfAPI provides access to GPU Performance Counters. It analyzes performance and execution characteristics of applications using a Radeon™ GPU.
LiquidVR™ provides a Direct3D 11 based interface for applications to get access to the following GPU features regardless of whether a VR device is installed on a system.