DDS to JPG Converter
DDS is a texture format used by games and graphics tools, and normal image viewers often cannot show it. This converter reads the main image of a DDS file in your browser and saves it as a JPG. It handles uncompressed files and the common DXT1, DXT3 and DXT5 compressions, and it uses only the first, largest level.
How to convert DDS to JPG
- Add your DDS files by dropping them, clicking the drop zone or pasting.
- The output format is already set to JPG. Adjust quality or size if you need to.
- Press Convert and compare the original and new size for each file.
- Download each file or all of them as a ZIP.
When to convert, and when not to
- You want to see a texture, icon or sprite from a game or tool as a normal picture.
- You need a quick preview for a forum post, bug report or document.
- You will keep the DDS for use in the engine.
- Do not use the JPG as a game texture; it is lossy and has no alpha channel.
What changes
- Uncompressed DDS and DXT1, DXT3 and DXT5 (BC1, BC2, BC3) are read. Other compressions such as BC6, BC7 and YUV are not supported and give a clear message.
- Only the first mip level, the full-size image, is converted. Smaller levels are ignored.
- Alpha is lost: JPG fills see-through areas with the background colour you choose.
- BC4 and BC5 reading exists but has seen little use, so check the result on your own file.
- The JPG is lossy, so the quality slider balances size and detail.
Why DDS files are hard to open
DDS stores textures in block-compressed forms that graphics cards read directly. Ordinary photo viewers do not expect them, and many do not show an alpha channel. This converter decodes the block formats itself and draws the result on a canvas, which is why it can show you the picture without a game or a graphics program.
Mipmaps and what gets converted
A DDS file often contains a chain of smaller copies of the same texture, called mip levels. The converter reads only the first one, which is the largest. If your file holds several faces or layers, do not expect all of them in the result.
Alpha channels and transparency
Textures for foliage, glass and decals often carry alpha. JPG cannot store it, so those areas are filled with your chosen colour. If you need the see-through areas kept, choose PNG as the output instead.
Colour accuracy and special textures
Block compression slightly changes colours when a texture is created, and decoding follows the standard formulas. Normal maps and other data textures store directions rather than colours, so they look purple or blue. That is expected; convert them only to look at them.
Reading an unusual DDS
Tools that write DDS use many settings, and the same texture can be saved in several ways. If the converter reports an unsupported compression, the file uses a block format outside DXT1, DXT3 and DXT5, such as BC7. Re-exporting from your texture tool in DXT or uncompressed form is the usual workaround. If a picture appears but looks wrong, check whether it is a data texture, such as a normal or roughness map, before you assume the decoding failed.
Previewing many textures
Artists often need to skim through dozens of textures to find one. Add the whole set, convert to JPG with the resize option set to a small maximum size, and you get a folder of light previews in one ZIP, ready to browse in any file manager or gallery.
Privacy: your files stay on your device
- The tool decodes, resizes and encodes your pictures with your browser. The files are never sent to a server.
- To check it yourself: open the browser developer tools (F12), open the Network tab, convert a file, and look for any request that carries your image. You will see none.
Frequently asked questions
Why does my normal map look blue and purple?
Normal maps store surface directions in the colour channels, not a picture. The colours are meant for a shader, not for the eye.
Which DDS types are supported?
Uncompressed files and DXT1, DXT3 and DXT5. BC6, BC7 and YUV files are not supported.
Why do I get only one image from my DDS?
Only the first, largest mip level is converted. Smaller levels in the file are not exported.
Is the JPG suitable for use in a game?
No. It is lossy and has no alpha channel, so keep the DDS for the engine.
What if I see an unsupported compression message?
The file uses a format this converter cannot decode. Export it from your texture tool as DXT or uncompressed, then try again.