Description / Download
This is a PowerShell script for Windows with a GUI that makes use of the command line options of several external programs, that can perform a variety of functions for custom textures. It can be used to convert images between PNG and DDS, and supports a wide range of DDS formats: BC1-BC7, RGBA, ARGB, L8, A8, and LA8. It has automatic mipmap handling which can be manipulated or disabled, it auto-repairs many issues found in DDS headers, and can seamlessly rescale textures and apply advanced upscale filters. It was designed for Dolphin emulator texture packs, so many of the core features revolve around Dolphin. Over time it has become powerful enough to manage many types of texture packs, and also edit phyre textures from The Legend of Heroes: Trails of Cold Steel I & II games. The tool has a built-in help menu that covers everything it can do in detail.
Download - Mirror - Changelog - Archive - Programs Pack
Preview: (Show Spoiler)
Installation and Setup
ImageMagick is the only hard requirement to get it up and running. The script has built-in documentation, which can be accessed by pressing the "Help" button.
Basic Installation Method: (Show Spoiler)
Full Installation Method: (Show Spoiler)
Supported DDS Programs
• ImageMagick - Default. Can create DXT1, DXT5, and ARGB8. Creates very low quality DXT1/DXT5 DDS textures. Uses magick.exe.
• DirectX TexConv - Can create DXT1, DXT5, BC7, and ARGB8. Lower quality DXT1/DXT5 textures, high quality BC7 textures. Uses texconv.exe.
• Compressonator - Can create DXT1, DXT5, BC7, and ARGB8. Highest quality BC7 textures. Fails creating some textures. Uses CompressonatorCLI.exe.
Note: The latest version of Compressonator has issues with this script. You must use v3.0.3707 or earlier or Compressonator will not work!
TexConv is required to create BC7 textures, use the script's Image Viewer, and convert BC7 textures to other formats. Compressonator is capable of these tasks, but randomly fails with some images.
If confused on which program to use, I suggest all of them. If a program fails to create a texture, it will fall back to another one and continue to do so until the image is created.
Other Supported Programs
• Ishiiruka Tool - Required to work with material map textures, and create them from materials.
• OptiPNG - Attempts to reduce the file size of PNG images.
• xBRZ ScalerTest - Allows upscaling textures with the xBRZ filter.
• Waifu2x-Caffe - Allows upscaling textures with waifu2x filter (nvidia cards required for full speed).
• Waifu2x-CPP - Not as powerful as waifu2x-caffe, but supports OpenCL (faster than using CPU for AMD users).
• Python v3.6.X - Multi-platform scripting language. Required to use ESRGAN and SFTGAN upscaling filters.
• ESRGAN - Enhanced Super-Resolution Generative Adversarial Networks.
• SFTGAN - Recovering Realistic Texture in Image Super-resolution by Deep Spatial Feature Transform.
• Kiseki PKG Tool - Allows extracting PKG files in The Legend of Heroes: Trails of Cold Steel I and II.
None of these programs are required to use the script, but they are needed to unlock the features they support.
Python, ESRGAN, and SFTGAN have an automatic installer built into the script, found on the Options menu on the Miscellaneous tab. - Image
Features
• Generate Dolphin Resource Packs.
• Convert textures between PNG, DDS, and JPG formats.
• Rescale all textures at a fixed integer scale as PNG, DDS, or JPG.
• DDS can be created with DXT1, DXT5, BC7, or uncompressed ARGB8.
• Check textures for a variety of issues (scaling factors, aspect ratios, etc.).
• Copy textures identified with issues to a folder for manual fixing.
• Auto-repair most textures that are identified with issues.
• Missing mipmaps are automatically generated when repairing/converting.
• Custom mipmaps can be provided or the script can be forced to generate new ones.
• The type of DDS mipmaps generated (internal/external) can be configured.
• Create material maps from color, bump, spec, nrm, and lum textures (required Ishiiruka Tool).
• Rescale/Convert already combined material maps (the generated nrm texture).
• Existing material maps and/or materials are automatically handled when found.
• Optimize PNG file sizes using OptiPNG. Can be written "in-place" or optionally output files to a folder.
• Apply various upscaling filters to all textures including xBRZ and Waifu2x.
• And much much more! Refer to the built-in "Help" button for more information.
Random Useful Links
This section links to certain pages or posts that explains some of the features of this script that have been added over time.
• Creating DDS textures with multiple compression types in a single run using compression flags.
• Error: no decode delegate for this image format 'PNG' (and the solution)
• Texture names used as watermarks to identify their location in-game.
• Creating Material Map textures for Dolphin Ishiiruka.
• Combining multiple images into a single image, or splitting an image.
• OptiPNG (and why it should only be used with this script for Dolphin textures).
• Down with the evil textures that have an indexed color palette.
• Weird Alpha in PNG Textures - And an option to manipulate it!
• Process Selected, the super secret option that nobody knows about.
• BC7 (BeCau7e why not?), auto-close xBRZ popups, +candy.
• The DDS Saga Part 1: I know almost nothing.
• The DDS Saga Part 2: Custom mipmaps for BC7!
• The DDS Saga Part 3: BC7 becomes a reality.
• The DDS Saga Part 4: Uncompressed DDS textures, hybrid DDS packs, and VRAM usage.
• Working with PHYRE images from The Legend of Heroes: Trails of Cold Steel I and II.