Skip to main content
gamedev.net
🔒 Locked

[Release] DXT Compressor

Started by L. Spiro 4 replies 2.4k views
Original Post
L. Spiro
L. Spiro
I posted my algorithm in the past for creating DXT-compressed images.

I have finally finished my tool for DXT compression.
You can read about it and find the download link here.
There are many options already supported and many more to come. I made the commands mostly compatible with those of nVidia’s tool to make it easier for those using it.


Feedback is welcome.
The algorithm is posted here:
DXT Compression Revisited


L. Spiro
I restore Nintendo 64 video-game OST’s into HD! https://www.youtube.com/channel/UCCtX_wedtZ5BoyQBXEhnVZw/playlists?view=1&sort=lad&flow=grid
Ashaman73
Ashaman73
Great work spiro, tough I have one question.

How does it affect channels ? In other words, how good is it when used with more technically textures (normal maps with only two channesl, alpha channel etc.) ?
L. Spiro
L. Spiro
You have full control. The -weight switch allows you to customize the weights of each channel.
For DXT5 compressions, the alpha is always “maximal” compressed. That is it is encoded with the provably most optimal key colors, so it works well with the standard way of storing normal maps with only the green and alpha channels used.

For anything else, the weights of each channel are in your hands.
It also has the option to normalize mipmaps.


L. Spiro
I restore Nintendo 64 video-game OST’s into HD! https://www.youtube.com/channel/UCCtX_wedtZ5BoyQBXEhnVZw/playlists?view=1&sort=lad&flow=grid
Lightness1024
Lightness1024
ah maybe a suggestion if you don't have it already (not seeing it in the option list), you have a swap R and B, which is great. But you should also have "redirect luminance into alpha" and a totally free swizzle system. Like in your weight option, you could make a little grammar where the weights are followed by a literal (optional) indicating the source channel.
so 0.5G 1R 1B 1A would go the grba swizzle.
Ashaman73
Ashaman73

ah maybe a suggestion if you don't have it already (not seeing it in the option list), you have a swap R and B, which is great. But you should also have "redirect luminance into alpha" and a totally free swizzle system. Like in your weight option, you could make a little grammar where the weights are followed by a literal (optional) indicating the source channel.
so 0.5G 1R 1B 1A would go the grba swizzle.

If you could combine your channels from different files would be really cool ph34r.png ph34r.png ph34r.png
L. Spiro
L. Spiro
Those are both options I could possibly add in the future.


L. Spiro
I restore Nintendo 64 video-game OST’s into HD! https://www.youtube.com/channel/UCCtX_wedtZ5BoyQBXEhnVZw/playlists?view=1&sort=lad&flow=grid

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.