squisher
is a program that takes a glTF or .glb file with PNG/JPG textures and produces a .glb file where the textures have been replaced with ASTC compressed KTX2 files, explicitly breaking the glTF spec: source.
If you want your assets to use optimised textures but don't want to pay the runtime transcoding cost of KHR_texture_basisu, this tool is for you.
Because hotham works best with compressed textures, and doing this stuff by hand is time consuming. It takes literal minutes. And we all know that a watched pot never boils.
Install squisher
with cargo install
:
cargo install --git https://github.com/leetvr/squisher.git
Running squisher
is easy:
squisher your_file.glb output.glb
Which will produce output.glb
, containing ASTC compressed KTX2 textures.
You can also use uncompressed RGBA8 textures:
squisher --format rgba8 your_file.glb output.glb
To compile squisher
, you need:
- Rust 1.67.1 or newer
To run squisher
you must have the following available on your system PATH:
- Khronos Texture Tools 4.1.0 or newer
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.