Author Topic: Substance Painter to Vray and TEXTURE VALUES???  (Read 11191 times)

Hi everyone, I've been knocking my head for the last couple of days and need a help!
 So, i have textured a shield in painter and input maps in mamroset 3.02 ( Wes helped me a lot in post regarding marmoset help a few days ago ) and it turned 99.9% same as in painter, here's the shot from marmoset >

it's a PBR SPEC/GLOSS workflow/template in painter! but marmoset is not the problem....
So I've exported maps as regular > diffuse,spec.,gloss,normal,height,ao curvature
But when I imported maps in appropriate slots in vraymat. I'm getting this > 

This is vraymat. setup in max >
Diffuse and spec. are sRGB
Glossiness - linear
Normal - linear
and VrayHDR is from substance painter > hdr is > panorama ( that what is called ) so that everything is matched as it was in painter and marmoset

but: when I invert glossiness in max I get more realistic results toward substance painter, although it is not same...

BUT  when i crank up IOR value up to 10 in vraymat. I'm gettin' these results >

So my first question is > is this what I'm getting is the result from start, meaning not starting in pbr metalness workflow, and then selecting vray export preset ( I'm using udim because of texture sets but nevertheless it's same ) since metalness workflow is required to get those IOR maps??? Isn't dcc packages such as maya and max etc, designed to work with spec.gloss? meaning these maps are driving renderer and calculations to show how much is something glossy, or reflective? If converting from metalness to spec.workflow that seems logical to use IOR maps but as it stated in Substance painter's template just simple PBR spec.template/workflow...

Second part : AND then I've come across this:
1) https://resources.squid.io/stemcell/materials-texturing-stemcell/stemcell-texturing-guide/

2) https://resources.squid.io/materials-texturing/
and many other resources across net, but something really got my attention :

they are saying about different values as well as ALlegorithmic's PBR Comprehensive guides but in squid the are saying:

Specular Workflow

There are basically two types of materials. Dielectrics (water, glass, mud, rock, wood, etc.) and Metals (iron, aluminum, gold, etc.).

1) For most materials, you can keep your reflective IOR values, for each type of material, within a very small range.
a) Dielectrics : 1.3 – 3.0 (water – lacquer)
b) Metals : 10 – 30 (iron – chrome)

2) Reflection(Specular map) values are usually never higher than RGB 240, and never lower than RGB 40. The value should also never be darker than your diffuse value.

3) Glossiness values should almost never drop below 0.5 value or RGB 128. If an object still seems too glossy at 0.5 or RGB 128, you need to lower the reflection value or have an incorrect IOR value.

4) Metal materials should always have a very dark diffuse value usually between RGB 5 – 40. If you are creating a colored metal material that requires color (i.e. gold or copper), then the RGB color should be in the reflectivity (_Specular) texture map.

and for the metalness:
There are basically two types of materials. Dielectrics (water, glass, mud, rock, wood, etc.) and Metals (iron, aluminum, gold, etc.).

1) Metallic maps values are between near pure white for metals and near pure black for dielectrics (no color ever). However, because some materials can push the boundaries of physics in unexpected directions, you may see the need to use some creative adjustments to the grey values. General rules to follow:

a) Dielectrics – RGB 5 – 100 or Grey value 2-39%
b) Metals – RGB 190 – 250 or Grey value 75-98%
c) No Color in the Metallic Map

2) IOR is simulated by the material BRDF and relies on the metallic map to assign its overall reflectivity value. Dark grayscale values (dielectrics) get lower simulated IOR values while bright grayscale get higher simulated IOR values.

3) Roughness maps are essentially the inverse of glossiness maps in how they are read. Black is smooth or shiny, while white is rough or flat. Roughness values should almost never exceed 0.5 value or RGB 128. If an object still seems too glossy at 0.5 or RGB 128, check the Metallic and BaseColor maps.

4) BaseColor has effects reflectivity depending on your Metallic value. It represents the Diffuse and Specular maps combined for the Metallic workflow.

So regarding this but following Diff/spec. workflow as the stated "As a general practice keep Diffuse and Specular map values between 5 and 230. Going above this range can cause bright values to blow out in different renderers. Any values lower than this range can clamp to black which gives no color contribution."" I went and did this

1)
where I marked levels that's is were I entered values as they said 5 and 230

2) For spec i did same, put as the say min 40 max 230
3) For glossiness put min 128
4) Just for experiment sake i desaturated specular map and inverted it and put it in IOR map slot in vraymat.

and this is the result form vray, just pay attention to upper and lower frame of the shiled ( because I didn't put rest of textures, just wanted to see for test purposes how it will end up ) >


close but > this is from marmoset >

and this is form vray >

and finaly 3 questions :

1) Is the lack of IOR maps ( converted from metalness workflow ) causing inconsistent results in vray?

2) Did all values regarding spec/metalness workflow in substance painter meaning specular, glossines values that i maybe during texture process did wrong?
because allegorithmic says bunch of values diffuse, base color, specular etc. have ranges from>to and how in the hell we set them??? I mean where and how do I set correct values for specular, glossines or base color and roughness?
Do I set them inside painter while working like for diffuse and spec. >
and for the rest of maps, specular or when I work with metalness workflow????
maybe it's sounds really ridiculous but when i red PBR guides I just do not know what to do...

3) If I do not set correct values described in question nubmer 2, is the right way to edit them as in stemcell guide, and edit values in photoshop in that way?

4) And can you point to some tuts concerning all these values described as well as in Allegorithmic's guide or anything taht will clear up all of this described?

So that is all, I know it's little bit much but really I can't find these things explained, and I think it's essence for good workflow, less is more... so if anyone can help much obliged!

Thanks in advance :)



So that is all, I know it's little bit much but really I can't find these things explained, and I think it's essence for good workflow, less is more... so if anyone can help much obliged!

Thanks in advance :)

Hi,

The ranges in the PBR guide are there to give you an idea of the values you can use in sRGB. For example, metal reflectance values will be brighter since they have a high reflective range. The non-metals use a much dark value and are not tinted. With these values, you just want to stick within ranges mentioned in the guide so you that you get accurate results.

The spec/gloss maps we have in SP are different than vray. Our spec gloss maps are used for PBR realtime shaders. These maps can't really be used accurately with vray. The best method is to work with the metallic workflow and use the vray export preset. This will give you the best results.

Our spec map you paint using the spec workflow in Painter encodes the Fresnel 0 degree value and the shader hardcodes the value at Fresnel 90 degrees. Whereas vray allows you to control this through the IOR and the reflection textures.
 
For the vray material, if you have spec/gloss maps, for the IOR, you can use an IOR appropriate for the metal you have. This will be somewhere like  8 or 12. This in combination with the reflection map might work ok.

Cheers,
Wes

Integrations Product Manager / Training
wes.mcdermott@allegorithmic.com
Twitter: The3DNinja

Thanks Wes!
I wasn't by computer but I've just read your answer...
Yeah, using spec/gloss workflow for game engines is fine, i tought same will work for render...
I was just wondering if I ever got myself in situation to let say edit those maps in ps > just for future calrification, is it okay to edit then in a way as I did ( to edit values > min/max trough levels adjusment ) or that is a no no?

thnks

Thanks Wes!
I wasn't by computer but I've just read your answer...
Yeah, using spec/gloss workflow for game engines is fine, i tought same will work for render...
I was just wondering if I ever got myself in situation to let say edit those maps in ps > just for future calrification, is it okay to edit then in a way as I did ( to edit values > min/max trough levels adjusment ) or that is a no no?

thnks

HI,

You can edit the maps in PS using a level adjustment. That would be ok to do.  Also, you can check out these resources. I know this data is 100% correct as it's written by Sébastien Lagarde and we based our PBR guide on his work.

https://seblagarde.wordpress.com/2012/04/30/dontnod-specular-and-glossiness-chart/

https://seblagarde.wordpress.com/2014/04/14/dontnod-physically-based-rendering-chart-for-unreal-engine-4/

Cheers,
Wes
Integrations Product Manager / Training
wes.mcdermott@allegorithmic.com
Twitter: The3DNinja

Nice :)
thnks wes, for precise answers and time invested to read about my problem, since my post was rather big...

thumbs up  ;D

Nice :)
thnks wes, for precise answers and time invested to read about my problem, since my post was rather big...

thumbs up  ;D

No problem  : ) Very happy to help! Also, I started working on new rendering docs.
https://support.allegorithmic.com/documentation/display/integrations/Rendering

Cheers,
wes
Integrations Product Manager / Training
wes.mcdermott@allegorithmic.com
Twitter: The3DNinja

I was running into a problem like this when I first started using Substance  whilst working at ChaosGroup.

I usually just add a fill per material with an IOR channel, and add the proper color value that would equal the correct IOR value. Something like:

.72 =~ 1.45

.0625 =~ 16

.047 =~ 22

A completely black color will do the same thing in V-Ray as turning off Fresnel completely, and looks odd on large swaths of metal. I guess that only helps if you are staying in V-Ray, but I don't really see this info floating around anywhere so,- there it is.

:)

I was running into a problem like this when I first started using Substance  whilst working at ChaosGroup.

I usually just add a fill per material with an IOR channel, and add the proper color value that would equal the correct IOR value. Something like:

.72 =~ 1.45

.0625 =~ 16

.047 =~ 22

A completely black color will do the same thing in V-Ray as turning off Fresnel completely, and looks odd on large swaths of metal. I guess that only helps if you are staying in V-Ray, but I don't really see this info floating around anywhere so,- there it is.

:)
'

Thanks Austin!

Great info : )

Cheers,
Wes
Integrations Product Manager / Training
wes.mcdermott@allegorithmic.com
Twitter: The3DNinja