Tools/Image
Contents
Free and libre image editors
There is plenty of open-source image and photo editing applications that fits the need, to name a few:
Bitmap image editors
- GIMP — Fully-featured raster graphics image editor available for Linux, Windows, and macOS. With version 2.8, the user interface may be used in single-window mode, hardware-acceleration is being added, and in future releases, higher bit-depth support will be added.
✅️ Recommended; - Krita — Originally intended for photo-editing, Krita is now intended much more as a painting tool, although it is still suitable for both. Has support for high bit depths.
Vector image editors
- Inkscape — Fully-featured vector image editor available for Linux, Windows, and macOS.
✅️ Recommended.
Free and libre image converters
Note
When contributing to Unvanquished, the contributor is asked to provide lossless images if possible, conversion to optimized formats are expected to only be done at build time, in an automated manner. The Urcheon tool knows how to do the conversions. It's very unlikely an Unvanquished contributor will have to produce CRN, DDS or lossless WebP files. A modder not using Urcheon may use those tools though.
Tools to convert to CRN or DDS
While most graphics application that is worth using can export natively to PNG, JPEG, and TGA, most applications currently cannot export directly to DDS. Converters and plug-ins are available, however:
- Crunch (Unity/Dæmon variant) for creating CRN or DDS files, ✅️ Recommended;
- Nvidia's DDS tools;
- ATi/AMD's Compressonator for creating DDS images on Windows only;
- The GIMP DDS Plug-in for creating DDS images with GIMP version 2.8.
Tutorial
The recommended way to convert non-normalmap images to CRN with crunch
is to do:
crunch -quality 255 -noNormalDetection -file file.tga -out file.crn
The recommended way to convert normalmap files without heightmap in alpha channel to CRN with crunch
is to do:
crunch -quality 255 -dxn -renormalize -rtopmip -file file.tga -out file.crn
The recommended way to convert normalmap files with heightmap in alpha channel to CRN with crunch
is to do:
crunch -quality 255 -renormalize -rtopmip -file file.tga -out file.crn
Tools to convert to WebP format
The WebP formats begin to be widely supported and editors like GIMP can edit them, many image viewers now support this format and in all case, web browsers can now display it.
- cwebp is a WebP image converter by Google, ✅️ Recommended.
Tutorial
The best way to produce the smallest lossless WebP images with cwebp
is to do:
cwebp -mt -exact -lossless -z 9 file.png -o file.webp
The recommended way to produce lossy WebP images with cwebp
is to do:
cwebp -mt -exact -m 6 -q 95 -pass 10 file.png -o file.webp
Warning
Always use -exact
with -lossless
when using cwebp
. Using -lossless
without -exact
will produce an image with lossless RGB channels but with a lossy alpha channel. This is not wanted as game images may store something else than alpha data in alpha channel.
Tools to convert to PNG format
Note
ImageMagick's convert tool was previously recommended but it became unreliable with time, especially at converting from TGA which is a format that is used a lot in idTech 3 games and engines projects (it was the default format for Quake 3), and which is a format produced by many tools we use (like Q3map2) so we need a reliable TGA to PNG converter, something ImageMagick's convert is not.
There is currently no recommended tool to convert to PNG format.
Recommended image formats
Those are recommended image formats to be used in source repositories and in game to be delivered to players, and related tools.
Purpose | Kind | Format | Tool |
---|---|---|---|
Source | Bitmap | PNG | GIMP |
Source | Vector | SVG | Inkscape |
Purpose | Kind | Format | Tool |
Release | Generic image | CRN | Crunch (with -noNormalDetection )
|
Release | Normal map | Normalized CRN | Crunch (with -rtopmip option)
|
Release | Skybox | lossy WebP | cwebp |
Release | Lightmap, deluxemap | lossless WebP | cwebp |