» TexConvGUI
This site relies heavily on Javascript. You should enable it if you want the full experience. Learn more.


tool dds convert converter batch texture bc7 compression
Credits: MS Texconv, OpenEXR, zlib, Meso, u7angel, woei


Simple GUI for MS Texconv.
Obviously inspired by u7angel's DDS Converter.

Needed BC7 compression which unfortunately is not supported by Nvidia Texture Tools.
Intel's Texture Works Plugin is nice but batches in Photoshop take ages.

Initial version was made while waiting for client feedback, so thanks to meso for sponsoring.



u7angel 08/09/2017 - 16:24

nice !

antokhio 10/09/2017 - 12:34

hmmph doesn't work for me for some reason....
just says done and nothing converted

bjoern 10/09/2017 - 15:21

Ah maybe try a path without spaces. Might have forgotten to quote.

antokhio 10/09/2017 - 17:08

Now it works, but i can't view any of BC7_UNORM dds lol
just hangs vvvv hmmm.... also seems other types of compression also don't work

update: nop BC7 worked like charm, just not with filetex pooled
update 2: even more weird now everything works like charm for whatever reason....
seems like first time it did something wrong.

Also is it necessary to put resolution in "Resizing" or it takes source?

bjoern 10/09/2017 - 20:01

If you leave both at 0 it will take the original size. There are tooltips for every option, just hover over the fields with your mouse. I had "frozen" filetextures too when trying bc7. With the player node everything works fine.
Also with bc7 try Min Compress and see if it makes any difference qualitywise, it's a lot faster.

rSyndrome 26/02/2019 - 16:50

Hi there,

Thanks for this useful tool!

As far as I know texConv is the most convenient conversion tool atm to take advantage of the last BC formats, because :

  • as you say nvtt still has no support of BC6H and BC7 formats
  • Compressonator is unusable on my machine (Win7 with Windows kit 10 installed), as versions 3.0+ require DX12 and Vulkan, and v2.5/2.6 crash at the end of textures' generation...

Could you share the code of this tool, or add a few improvements to it? The first one I see would be to automatically choose the right number of mipmaps if this number is set (by default) to 0. Indeed the generator fails to convert files if you set a higher number than it's possible to generate, which is quite annoying when you want to convert textures with various resolutions in the same folder.

bjoern 27/02/2019 - 21:04
rSyndrome said
The first one I see would be to automatically choose the right number of mipmaps if this number is set (by default) to 0.

If by "right amount" you mean all mipmaps you can do this already. Just set Mip Map Level to 0.

Microsoft said
  • -m number: Number of mipmap levels to generate in the output texture. This setting only applies to DDS output, which defaults to 0 which is generate all mipmaps. Use -m 1 to remove mipmaps.

I chose 1 as default because I use the thing to convert highres videos that are displayed 1:1 – it also decreases encoding time and filesize.

rSyndrome 28/02/2019 - 11:48

Ah, great :) The -m option wasn't explained in detail in the cmd line.

mrboni 04/05/2019 - 10:58

Have people had much luck with BC6 and BC7 formats from this? The BC6 variants crash v4 as soon as the texture is in the render pipeline (filetexture will load it initially, but the crash occurs if you try to render it)

A half HD BC7Unorm image takes around 20s to load.

BC7Typeless crashes texconvgui on conversion

I'm using not the most recent alpha 38.2 x64 with most recent dx11 pack

bjoern 04/05/2019 - 16:16

Sorry, I only use bc7 in conjunction with woei's player which works nicely. FileTexture works for me when set to Load in Background, vvvv won't crash and the texture(s) will load eventually, it takes ages though. As to why you'll have to ask vux. Maybe create an issue at github and provide some example textures for him to debug.

mrboni 04/05/2019 - 17:51

bjoern, thank you - BC6 working great with player!

mrboni 05/05/2019 - 16:07

@bjoern - another question. Does exr work for you? I get the following error - FAILED (88982f50)

bjoern 05/05/2019 - 17:02

Never tried with exr and/or have encountered that particular error.
However it seems to be caused by a missing codec/decoder.

OpenEXR support isn't enabled by default.

Microsoft said
Support for OpenEXR (EXR) can be added to the texconv utility. Uncomment #define USE_OPENEXR in the source, and add the DirectXTex auxiliary module to the project. See Adding OpenEXR for more details including building the OpenEXR library.

Source &

mrboni 05/05/2019 - 20:37

Thanks. I'm using a workaround for now but if I get a chance I'll try that out

bjoern 06/05/2019 - 11:49

@mrboni added exr support. Only tested it with some sample images. Maybe you could try and report back...

mrboni 06/05/2019 - 13:06

Wow thank you Bjoern.

I actually just had to ditch my workaround for various reasons so was about to try to make this work. You saved me loads of time.

It works perfectly, and creates a better pipeline from Resolve / Fusion in to vvvv. I've only tested with 4 channel 128bpp exrs > R16G16F dds. (I had to ditch BC6H as the Player plugin wasn't happy with dynamically changing quantity of visible textures). I don't know how texconv will deal with exrs that have extra channels. If I test I'll let you know

Much appreciated

thedi4bl0 11/08/2019 - 02:14

Hi! thanks for the app, is very fast, but I have a problem xD I don't know that parametres need check for only compress .DDS file to format BC6, I can convert, but bad, is deformed.

Using the app for BC6 UF16
bjoern 21/08/2019 - 16:45

Sorry I don't get your question, please rephrase.

anonymous user login


~23h ago

joreg: But first: This Friday in Berlin: Join our full day "Getting started with Generative Design Algorithms" workshop https://nodeforum.org/announcements/workshop-getting-started-with-generative-design/

~1d ago

joreg: In #Linz for #ArsElectronica? Join us for a free 2 days #vvvv workshop sponsored by businesses/responsive-spaces-gmbh Apply here: 2-day-gamma-vvvvorkshop-at-responsive-spaces-in-linz

~3d ago

joreg: Need your custom dose of #vvvv training? Join us at our studio in #berlin: vvvv-training-at-the-source

~8d ago

~13d ago

~13d ago

domj: Dev stream: Painting with light with a Vive controller, developing using VL and Schéma. Start at 17:00 https://www.twitch.tv/dominikjancik

~14d ago

joreg: July as it happened: vvvvhat-happened-in-july-2019 #vvvv

~15d ago

levi: @mrboni thanks mrboner. solved it by turning all the lights to strobe mode so framerate drops were actually a relief :P . love

~16d ago

joreg: reminder: this thursday, just before the patching circle, there is a free 2h intro to #vvvv gamma: free-vvvv-intro-workshops-this-summer-in-berlin