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


tool dds convert converter texture
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.

Purp_Mete 11/09/2019 - 11:37

Which output format I should use for changing DDS.FORMAT to PNG.FORMAT ?
This tool is awesome

bjoern 14/09/2019 - 11:55

It only converts to dds not vice versa, sorry.

ricaria 01/10/2020 - 10:06

hi, a really usefull tool indeed, but it hardly works for me, i try it at a couple of different computers, i tried it hundreds of times, it worked only a few times. Dont know how and why.

I am trying to convert a sequance of png with alpha to dds . as i said it worked a few times..

i tried using simple folder names and file names like C:\chips and to save the dds file to the same or a different folder again in C:

it just says done and nothing happens. help

aazard 07/10/2020 - 02:26

I love you for open ext support!

tgd 07/10/2020 - 10:26

@ricaria Using it heavily for a project right now with no issues on multiple machines. Just in case: you pay attention to the file mask dropdown menu and whether the filecount field says it found any files to convert?

u7angel 13/10/2020 - 16:07

... and maybe open source it ? or is it already ?

anonymous user login


~1d ago

joreg: absolutely. if it is for a repo that is public, just submit a pullrequest. otherwise please start a forum thread.

~1d ago

benjawmino: @joreg I ended up figuring out BezierSegment yesterday, so nevermind! Tell me, could a user submit a help patch? :)

~1d ago

joreg: @benjawmino please elaborate on this question a bit in a new forum thread. otherwise it is hard to answer..

~3d ago

benjawmino: so are there no splines/curves in gamma yet??

~6d ago

skyliner: wanna do drone shows or applications? then check this super cool project of our man e1n

~10d ago

NoseBleedIndustries: Thanks Joreg! The few minutes I was able to see, very good workshops!

~10d ago

joreg: @NoseBleedIndustries please give us some days, we'll have an announcement soon...

~10d ago

NoseBleedIndustries: I could not assist the Node20 (workshops ) Any Idea when we will have access to the links of the recordings?

~12d ago

bjoern: unity has c# bindings for usd, under apache license: https://github.com/Unity-Technologies/usd-unity-sdk