Read dds images (DirectDrawSurface), an image format made by Microsoft for DirectX.
Currently targeting Java 21+.
- All UINT/UNORM/SRGB RGB(A) formats
- Block compressed formats
- BC1/DXT1
- BC2/DXT2/DXT3
- BC3/DXT4/DXT5
- BC7
DdsFile(ddsmodule, basic routines to load a dds file into memory)- Java
BufferedImage(ddsiiomodule, this is the one you want) - JavaFX
Image(ddsfxmodule, obsolete starting with JavaFX 24)
- contains the reading logic and api
- adds dds support to
ImageIOautomatically - this requires the
java.desktopmodule - also adds dds support for JavaFX
Imageautomatically, starting with JavaFX 24
Important
This module is no longer required as of JavaFX 24, one can use ddsiio instead!
JavaFX will plug into ImageIO and use those providers automatically.
- adds dds support for JavaFX
Image - one needs to call
io.github.ititus.ddsfx.DdsFx.setup()once to register the format - this requires the
java.desktopmodule (viaddsiio) and JavaFX - JavaFX needs to be included separately, there is no transitive dependency
- if you have problems with duplicate JavaFX dependencies see openjfx/javafx-gradle-plugin#65
- when including this in a modular build you will need to add the following compile and run options:
--add-export javafx.graphics/com.sun.javafx.iio=io.github.ititus.ddsfx--add-export javafx.graphics/com.sun.javafx.iio.common=io.github.ititus.ddsfx