Migration from .basis to .ktx

I use extremely small files with BasisTextureLoader, but I have this WARNING:

THREE.BasisTextureLoader: This loader is deprecated, and will be removed in a future release. Instead, use Basis Universal compression in KTX2 (.ktx2) files with THREE.KTX2Loader.

I have compiled KTX-Software (GitHub - KhronosGroup/KTX-Software: KTX (Khronos Texture) Library and Tools) and converted JPG to ktx using ‘toktx’ but it was produced from a 29Mb JPG 55Mb file. I guess I am doing something incorrectly (missing some options) but any idea what would be ideal workflow would help a lot.

If .basis and .ktx2 files are created from the same input file, with the same settings, they’ll have the same size. There’s no difference whatsoever in the underlying compression. If you’re getting different results from particular software, then you may need to share the commands you are running — they may have different settings and defaults. Note that the basisu CLI tool you probably used to create .basis files can also be used to create .ktx2 files in recent versions.

1 Like

I tried:

toktx --zcmp 20 --verbose output_file.ktx input_file.PNG

I think I missed something compiling KTX-Software on MacOS, tried to compile on Ubuntu and it’s even more complex. Your hint to use: basisu solved my problem. Thank you.

1 Like