Default Arnold config(Substance Painter) produces incorrect texture values in maya!

polycounter lvl 6
Offline / Send Message
artquest polycounter lvl 6
Hi all! I'm working in VFX and trying to work out the kinks of using substance painter in Arnold in production. It's been awesome to use substance for vfx/prerendered CG. However there have been a few hiccups along the way. One thing I've found particularly annoying is this:



On the left is the Arnold Renderview with the diffuse color AOV in maya 2017, and on the right is Substance painter Base Color channel. It's taken me the better part of the last two weeks to sort things out so I wanted to share this in case anyone else is ripping their hair out with this issue. :) 

If you are using the default Arnold  or Arnold UDIM exporter config then your values will always be wrong. your render will never match the substance viewport 1:1.

At first I thought this was a colorspace issue as it seems that even when exporting a 16 or 32 bit linear exr you will still need a gamma correct node in arnold for your color value to be correct. (plx fix this soon Algorithmic, vfx pipelines need linearized 16 and 32 bit .exrs! extra gamma correct nodes only add confusion and plus gamma correct of 0.4545 in maya loses precision.)

 I switched to using substance painter at work and since then I kept getting requests from my art director to reduce the saturation, the materials never looked quite right when rendered compared to how we all saw them in substance. The number one comment has been "why doesn't it look as awesome when I render it in shot!) 

So as it turns out the converted diffuse channel actually changes the values by quite a bit. (not something I ever thought of...)  I assumed it simply dropped the metal areas to black in the diffuse.  So for anyone else out there having this trouble:

Use the base color and just multiply your metallic map on top to get the result you're after. 

 @Froyok @Jerc

Would it be possible to get the Arnold exporter to simply drop the diffuse color to 0 for metallic areas and not change the diffuse color values? I was able to get the renders to match exactly after swapping to the base color setting but this isn't ideal as my shader in maya now has extra complexity from compositing the metallic map with the diffuse (which wouldn't be a problem except that I'm using over 60 GB of UDIM textures for film rez assets so it would be nice to not have to perform the composite on all of the diffuse channel). 

Thanks!

Sign In or Register to comment.