Product Details
OAT is a texture super-compression solution designed to amplify games and graphics intensive applications. Compared to direct use of block compressed textures (BC1-7), OAT achieves a 4X reduction in both disk size and load times while maintaining high visual fidelity.
How OAT Works
OAT takes lossless source textures (i.e., PNG) and produces super-compressed texture files that can be decompressed into intended block texture formats, BC1-7. BC7 textures super-compressed using OAT are typically reduced to 25% of their BC7 sizes (a 4X reduction), and are meant to be stored on disk (or transferred over network) in their super-compressed form. OAT offers incredible performance (200+ GB/s on an RTX 3080) to enable on-demand decompression during texture loads. Once a texture is decompressed onto VRAM, it can be used like any other block compressed texture.
OAT Amplifies Disk Space and Read Throughput
OAT enables developers to pack 4X more content within the same disk size (or network bandwidth) budgets.
Random read throughput and congestion are significant threats to maintaining performance when streaming textures. With OAT, games need to read only 25% of the amount of texture data. Decompression is fast enough to reduce load times by a factor of compression ratio.
GPU/CPU Decompression
OAT offers unprecedented decompression performance through GPU compute shaders, as well as state-of-the-art pure CPU decompressors, providing developers the flexibility to decide at runtime, to achieve optimum performance based on resource constraints of the target devices.
GPU decompression is especially impactful for CPU constrained applications, such as simulation and physics heavy games (e.g., flight simulators, city-building games…).
OAT does GPU decompression using single pass HLSL compute shaders that run on any compute-capable platform.
Detail Preservation
OAT targets a high-quality, near-lossless range for BC7. It preserves luminance and contrast, prevents hue shifts and protects flat regions and gradients.
Benchmark and Evaluation
Our public benchmark data set consists of 32 pristine, lossless 4K color textures from ASWF Digital Production Example Library, super-compressed with OAT BC7 using a near-lossless preset, and decoded to PNG.
We evaluate the fidelity of the output using SSIMULACRA2, a respected perceptual fidelity metric that shows very high correlation with scores obtained through human visual inspection. A score above 85 means excellent visual quality: no distortion is perceptible to the human eye from normal viewing distances.
Size at Disk | Mean Fidelity Score (SSIMULACRA2) | CPU Decompression Speed (with Ryzen Z1 15W) | GPU Decompression Speed (with RTX 3080) | |
---|---|---|---|---|
Uncompressed BC7 | 512 MB | 94.6 | N/A | N/A |
OAT's Advanced Texture | 133 MB | 89.1 | 4,129 MB/s | 208 GB/s |
OAT's Advanced Texture | 165 MB | 89.1 | 5,885 MB/s | 208 GB/s |
Oodle Texture + Kraken | 173 MB | 89.1 | 2,169 MB/s | N/A |
See our examples page for a comparison of lossless sources against the output of OAT-BC7.
OAT vs Oodle Texture + Oodle Kraken
OAT is a direct, drop-in replacement for the Oodle Texture + Oodle Kraken pipeline, providing superior compression ratios and GPU-driven decompression capabilities.
OAT enables 25% more content within the same size and fidelity constraints as Oodle, beating its CPU decompression speed at a significantly higher compression ratio and uniquely offering pure GPU-driven decompression (which can be decided at runtime).
OAT as VRAM multiplier
GPU-driven decompression unlocks an emerging capability: OAT can act as a VRAM multiplier, enabling developers to store 4X the amount of textures in VRAM super-compressed, in an intermediate pool. These super-compressed textures would then be decompressed when needed just-in-time, using negligible GPU compute and in a negligible time span. With the incredible decompression throughput (102 GB/s on RTX 3060, 208 GB/s on RTX 3080), OAT is capable of decompressing several high-resolution textures every frame.