From 17a6fd1b1c0546376039b03ee27045db0c1703e2 Mon Sep 17 00:00:00 2001 From: Rich Geldreich Date: Wed, 25 Feb 2026 14:21:06 -0500 Subject: [PATCH 1/4] Update version from 2.0 to 2.1 in README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ea0924f..7034dc5 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ An LDR/HDR portable GPU supercompressed texture transcoding system. Intro ----- -Basis Universalâ„¢ v2.0 is an open source [supercompressed](http://gamma.cs.unc.edu/GST/gst.pdf) LDR/HDR GPU compressed texture interchange system from Binomial LLC that supports two intermediate file formats: the [.KTX2 open standard from the Khronos Group](https://registry.khronos.org/KTX/specs/2.0/ktxspec.v2.html), and our own ".basis" file format. These file formats support rapid transcoding to virtually any compressed [GPU texture format](https://en.wikipedia.org/wiki/Texture_compression) released over the past quarter century. +Basis Universalâ„¢ v2.1 is an open source [supercompressed](http://gamma.cs.unc.edu/GST/gst.pdf) LDR/HDR GPU compressed texture interchange system from Binomial LLC that supports two intermediate file formats: the [.KTX2 open standard from the Khronos Group](https://registry.khronos.org/KTX/specs/2.0/ktxspec.v2.html), and our own ".basis" file format. These file formats support rapid transcoding to virtually any compressed [GPU texture format](https://en.wikipedia.org/wiki/Texture_compression) released over the past quarter century. ## GPU Textures are Infrastructure From b2a5596dee2925769c249421ad1095cd88a1a286 Mon Sep 17 00:00:00 2001 From: Rich Geldreich Date: Thu, 26 Feb 2026 12:33:49 -0500 Subject: [PATCH 2/4] Update README with link to faster filter variant Added a link to a faster 5 tap filter variant for shader deblocking. --- shader_deblocking/README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/shader_deblocking/README.md b/shader_deblocking/README.md index 989b590..6b4aee3 100644 --- a/shader_deblocking/README.md +++ b/shader_deblocking/README.md @@ -46,6 +46,8 @@ The shader can be easily simplified to sample the texture less by using less tap Many variations and optimizations of this basic idea are possible. *Now shader engineers can directly impact memory consumption.* The better your deblocking shaders are tuned or your specific content, the bigger the ASTC block size you can ship. ASTC texture deblocking pixel shader engineering is now a memory optimization skill. +A simpler, [faster 5 tap filter variant is here](https://pastebin.com/jsF6nUZg). In practice, this usually looks just as good on most textures/images. + --- ## Performance From 3503e0b9e64d4aa059f2f2deff7980e21dadb756 Mon Sep 17 00:00:00 2001 From: Rich Geldreich Date: Thu, 26 Feb 2026 12:34:45 -0500 Subject: [PATCH 3/4] Update README with shader optimization details Added information about using textureQueryLod() and textureSize() for shader simplification. --- shader_deblocking/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shader_deblocking/README.md b/shader_deblocking/README.md index 6b4aee3..6026941 100644 --- a/shader_deblocking/README.md +++ b/shader_deblocking/README.md @@ -46,7 +46,7 @@ The shader can be easily simplified to sample the texture less by using less tap Many variations and optimizations of this basic idea are possible. *Now shader engineers can directly impact memory consumption.* The better your deblocking shaders are tuned or your specific content, the bigger the ASTC block size you can ship. ASTC texture deblocking pixel shader engineering is now a memory optimization skill. -A simpler, [faster 5 tap filter variant is here](https://pastebin.com/jsF6nUZg). In practice, this usually looks just as good on most textures/images. +A simpler, [faster 5 tap filter variant is here](https://pastebin.com/jsF6nUZg). In practice, this usually looks just as good on most textures/images. ` textureQueryLod()` and `textureSize()` could also be used (with some API's) to simplify the shader further. --- From be7d16f172110d547c80a8233e9fbdf8799ef84a Mon Sep 17 00:00:00 2001 From: Rich Geldreich Date: Thu, 26 Feb 2026 12:35:56 -0500 Subject: [PATCH 4/4] Clarify 5 tap filter variant compatibility in README Updated README to clarify compatibility of the 5 tap filter variant with the Python sample and its mipmap level limitation. --- shader_deblocking/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shader_deblocking/README.md b/shader_deblocking/README.md index 6026941..d7641c2 100644 --- a/shader_deblocking/README.md +++ b/shader_deblocking/README.md @@ -46,7 +46,7 @@ The shader can be easily simplified to sample the texture less by using less tap Many variations and optimizations of this basic idea are possible. *Now shader engineers can directly impact memory consumption.* The better your deblocking shaders are tuned or your specific content, the bigger the ASTC block size you can ship. ASTC texture deblocking pixel shader engineering is now a memory optimization skill. -A simpler, [faster 5 tap filter variant is here](https://pastebin.com/jsF6nUZg). In practice, this usually looks just as good on most textures/images. ` textureQueryLod()` and `textureSize()` could also be used (with some API's) to simplify the shader further. +A simpler, [faster 5 tap filter variant is here](https://pastebin.com/jsF6nUZg). (This shader isn't quite compatible with the currently checked in Python sample, as it uses a new `maxLod` uniform to limit the max fetched mipmap level.) In practice, this simple shader usually looks just as good on most textures/images. ` textureQueryLod()` and `textureSize()` could also be used (with some API's) to simplify the shader further. ---