Usage: no_vtf [OPTIONS] PATH...
Convert Valve Texture Format files into standard image files.
PATH can be either file, or directory (in which case it is recursively
searched for .vtf files, symbolic links are not followed). Multiple paths
may be provided.
As the output path, it is possible to specify either file or directory.
Specifying the output file is useful mostly for single-file conversions,
with filters to ensure only a single image will be written.
If the output directory is not specified, images are output into the source
directories. Otherwise, directory tree for any found files will be
reconstructed in the chosen directory.
Output LDR/HDR format is selected by its common file name extension. Special
formats: "raw" to write the high resolution image data as-is; "skip" to skip
the write step entirely.
For supported formats, compression is controlled when saving the image.
Lossless compression is enabled by default. Lossy compression is not used.
The BGRA8888 format can store both LDR and compressed HDR images. The
specific type is either auto-detected by looking at the input file name
(roughly, if it contains "hdr" near the end), or can be set manually.
It is possible to filter images to convert by min/max resolution (width &
height), and by frames/faces/slices. The former supports exact or closest
match. The latter supports selection by single index or via Python slicing:
https://python-reference.readthedocs.io/en/latest/docs/brackets/slicing.html
Face index mapping: right (0), left, back, front, up, down, sphere map (6).
After applying filters, only the highest-resolution mipmap is converted by
default. Alternatively, all mipmaps of the high-resolution image can be
converted.
Animated textures have frames converted into individual images by default.
They can also be converted into an animated image file. When the latter is
chosen, APNG is used as the default LDR image format instead of TIFF.
The RGB/L and A channels are packed into one file by default. When output
separately, resulting file names will be suffixed with "_rgb", "_l" or "_a".
By default, image files are only written if they do not exist already.
Alternatively, they can be overwritten, or writing can be disabled entirely.
Images can be also read back to verify they have been written properly.
Readback will error if data to be written do not match what is in the file.
Worker is spawned for each logical core to run the conversion in parallel.
Number of workers can be overridden. If set to 1, conversion is sequential.
Exit status: Zero if all went successfully, non-zero if there was an error.
Upon a recoverable error, conversion will proceed with the next file.
Options:
-o, --output-dir DIRECTORY Output directory
--output-file FILE Output file
-l, --ldr-format TEXT LDR output format [default: tiff|apng]
-h, --hdr-format TEXT HDR output format [default: exr]
-d, --dynamic-range [ldr|hdr] Override LDR/HDR auto-detection
-m, --mipmaps Extract all mipmaps
--min-resolution INTEGER Minimum mipmap resolution [x>=1]
--max-resolution INTEGER Maximum mipmap resolution [x>=1]
--closest-resolution Fallback to closest resolution if no exact
match
--frames INDEX|[START]:[STOP][:STEP]
Frames to extract
--faces INDEX|[START]:[STOP][:STEP]
Faces to extract
--slices INDEX|[START]:[STOP][:STEP]
Slices to extract
-a, --animate Output animated image file instead of
writing each frame individually
-F, --fps INTEGER Frame rate used for animated image files
[default: 5]
-s, --separate-channels Output the RGB/L and A channels separately
-O, --overbright-factor FLOAT Multiplicative factor used for decoding
compressed HDR textures [default: 16.0]
--compress / --no-compress Control lossless compression
--always-write / --no-write Write images
--readback / --no-readback Readback images
--num-workers INTEGER Number of workers for parallel conversion
[x>=1]
--no-progress Do not show the progress bar
--version Show the version and exit.
--credits Show the credits and exit.
--help Show this message and exit.