Substance Painter DDS exporter?


#1

Hi!

My name is Rasmus and I’m a Technical Art student at The Game Assembly in Malmö, Sweden.

We’re currently working on our first project of the semester and have already run into a problem, or hurdle, of sorts that I’d like to solve/remove.

Our artists are working mainly with the Allegorithmic suite and apparently there is no option to export textures as DDS in Substance Painter. I’ve took it upon myself to try and solve this possible timesink but apparently we don’t have access to the Automation toolkit because we’re on student licenses.

I was wondering if someone had any tips or maybe an idea on how to solve this, to make it as smooth as possible for our artists so that they don’t have to save their textures in another format and then either convert in Photoshop or a straight up DDS converter.

Thanks!


#2

It’s been a few years, but When I was doing texture pipeline stuff, we had a work flow like:
Photoshop > TGA > composite > DDS > custom format

We saved Targas from photoshop as our ‘source’ format , these were the 3DS Max textures
We had RGBA Diffuse, RGB Normal and Greyscale Specular TGAs

We scaled, filtered, and composited The Specular image into the Alpha channel of the Normal map using Imagemagick

The results were then mipped and converted to DDs with ATI’ s The Compressonator utility.
(which some one here on TAO recommended to me)
The Compressonator looks like it has since moved to open source on git hub.

Image magick had DDS support , but The Compressonator offered easier/better mipping results.

for manual conversion , Nvidia has a Photoshop plugin

Both Imagemagick and The Compressonator are command line utilitites.
I implemeted there use both via windows .bat files and by building command stings in Max Script executing with DOSCommand . A similar approach with Python os.system() or subprocess.call() or similar …python has a variety of ways to execute command line stuff.

If you are comfortable with Windows Batch scripting , .bat files are kind of cool because you can set them up to run on whatever is dragged and dropped onto them, or run on everything inside the same folder, and just hand them as little ‘droplet’ tools to your artists.

Caveat: I’ve been out of texture pipelines for a few years so better solutions may be out now days.


#3

With imagemagick, you can control that from python with the handy Wand module. Which is pure python, so no mucking about compiling a version if you want to run it from a custom python install.

Sadly I too have been well out of the texture game, so I have don’t have a lot of direct advice.


#4

Thanks for the tips! I’ll look into them and see if they will work in our pipeline.

I discussed the issue further with my project members and we’re leaning towards using Batch scripting as it seems to be one of the easier ways to do it without mucking about in Photoshop for a simple conversion.

I have two classmates working on a solution via Substance Painter which I’m hesistant if they can get it to work, but if they figure it out I’ll post their solution here for anyone who’s interested.

Thanks again for the help!


#5

Awesome.
And yeah definitely post any solutions (or almost solutions in case the case of not working out), sharing both can always help.