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.1

This release adds the following features:

  • 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.

Features

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 v4

Requirements

Supported GPUs

  • 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

  • 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.
  • 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

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.

Announcing Compressonator 3.2

The latest version of Compressonator is now available, featuring new BCn codec kernels, framework interfaces, cube maps, and more.

Our other tools

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 the Radeon GPU Analyzer (RGA). By installing this extension, it is possible to use RGA directly from within Visual Studio Code.

RGP

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.

RGA

Radeon GPU Analyzer is an offline compiler and performance analysis tool for DirectX®, Vulkan®, SPIR-V™, OpenGL® and OpenCL™.

Our other SDKs

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 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.