Skip to content

Example: RimWorld

José Ángel Soler Ortiz edited this page Nov 22, 2022 · 32 revisions

png2dds can convert RimWorld textures with the following command. It provides better encoding quality than RimPy, at the cost of increased GPU VRAM usage.

png2dds.exe -f BC7 -o -vf -r Textures -t -v "C:\Program Files (x86)\Steam\steamapps\workshop\content\294100"

If RimWorld uses too much VRAM, you can switch the encoding format to BC1_ALPHA_BC7. In this mode, png2dds will use the smaller BC1 format for files without transparency, while files with transparency will get encoded with BC7. This is equivalent to RimPy texture encoding.

png2dds.exe -f BC1_ALPHA_BC7 -o -vf -r Textures -t -v "C:\Program Files (x86)\Steam\steamapps\workshop\content\294100"

With -o, png2dds will overwrite existing DDS. Remove -o if you prefer png2dds to ignore files which have already been encoded.

-vf Flips the image vertically, which is required for RimWorld textures.

-r is used to filter PNGs. In this case it will only encode files in a path containing the word “Textures”.

-t will show the total time spent encoding textures, and -v will show a progress indicator.

Important note: Currently png2dds does not know which mods are currently in your modlist. It will convert textures for all of your current subscriptions.

You can use png2dds.exe --help to check the full list of options that png2dds provides.

Clone this wiki locally