Here's my first time working with physical based rendering. I rendered the material in Marmoset Toolbag 2 and UE4. One problem I am having though is creating a height map for the material. Every time I create the mesh completely goes crazy even when I lower the displacement it still doesn't look right.
You need to really think about what information those textures should have in them.
Diffuse is good, obviously, but the metal and roughness textures aren't good. How metal are bricks? Not at all, so you should have a flat colour. Your roughness has lighting information in it - you don't want that at all. You want your roughness to show how rough the bricks and mortar are - mortar is often rougher, and bricks have smooth bits and rough bits so they'll have variation.
Without seeing the displacement it's hard to say what's wrong, but it should have greater contrast between the brick and the mortar than the contrast on a single brick face.
You should desaturate your albedo and work from there to get a good gloss. Right now there is no color variation which looks pale.
Normal map is not detailed enough, you should add some noise because right now it looks flat. Best thing would be to bring the albedo back into whatever program you use to generate normals and try to get more depth and detail.
@kurt what do you mean by light info in the gloss? If you mean those darker areas it should not be an issue and is not whats destroying this gloss map.
@grimsonfart I will get a better normal map. I always seem to be worried that there will be to much information in the normal map (or is that something I shouldn't worry about?)
I'm confused on metalness. I understand now the problem with the old map its like duhh brick isn't metallic, but when creating a flat color should it be complete black or a very dark gray because I am referencing the Quixel Megascans chart and its a dark gray not completely black?
Also I'm really having trouble creating roughness. The concept makes sense now but how do I create an accurate map? What's the difference between having the roughness in linear color space and sRGB color space?
M refers to microsurface (either gloss or roughness, depending on which you are using. Make sure to read the key at the bottom of the image. The chart about is for the specular workflow, not the metalness workflow.
For the metalness workflow, the albedo defines the diffuse value for non-metals, while the reflectivity is set to a fixed value of 4% linear space or about 21% sRGB or #363636. Reflectivity for non-metals can vary a bit, mostly in the 2-8% range, but the metalness workflow uses a fixed 4% value as it is close enough for most materials.
For metals in the metalness workflow, you set the metalness map to 1 (white) and the albedo defines the reflectivity while the shader turns the diffuse black. Metals are very dense so they diffuse very little light and reflect most of it instead.
Partial values in the metalness map most commonly should be used for fading from one material to another, like a soft transition from dust or dirt. Partial metals also make sense, but those are very rare. For most materials your metalness map will generally have black and white and not much inbetween.
For the metalness map here, bricks are not metal at all, so the value would be 0 (black). For a material like this, you don't even need to use a texture at all, you can simply use a constant value in your shader.
Creating an 100% accurate roughness is impossible unless you have real scanned data (like Quixel uses).
But from what i have gathered from the megascans samples you get in DDO, bricks should have a median of around 29. To check this go to Window, then Histogram and choose luminosity in the channels dropdown. Median is the number you are looking for.
Just desaturate your albedo and play with levels to get it around that number.
@EarthQuake now that i have you here, i have never understood the albedo part of things. I obviously know how to make it and that it should not contain ligthing information, but what i don't understand is the calibration part. If say i look at the megascans chart and choose rock, should i have my albedo the "color" the chart says? Or is it just the brightness?
I have tried following it, but honestly, when i bring assets into CryEngine they look so bright it's blinding.
@EarthQuake now that i have you here, i have never understood the albedo part of things. I obviously know how to make it and that it should not contain ligthing information, but what i don't understand is the calibration part. If say i look at the megascans chart and choose rock, should i have my albedo the "color" the chart says? Or is it just the brightness?
I have tried following it, but honestly, when i bring assets into CryEngine they look so bright it's blinding.
Well, the first thing to note is that the diffuse/albedo for any given material simply varies a whole lot. There is no "corrrect" value for rock, there are an unlimited amount of different colored rocks you could find in the real world, what is show in the chart is simply an example of one rock texture.
As far as looking bright in cryengine, there could be any number of reasons for this. Maybe your lighting has a lot of contrast, post effects/bloom, your texture could be set to linear space instead of sRGB (the albedo values in the chart are sRGB).
Well, the first thing to note is that the diffuse/albedo for any given material simply varies a whole lot. There is no "corrrect" value for rock, there are an unlimited amount of different colored rocks you could find in the real world, what is show in the chart is simply an example of one rock texture.
As far as looking bright in cryengine, there could be any number of reasons for this. Maybe your lighting has a lot of contrast, post effects/bloom, your texture could be set to linear space instead of sRGB (the albedo values in the chart are sRGB).
I know the reason for it being bright in CE3, it's quiet simply because you need to darken it in PS. A good trick i learned was to bring in the base albedo, bring the diffuse down in CE3 until you are happy with how it looks and then copying the luminosity value into PS. CryEngine simply handles textures much differently from PS.
I know the reason for it being bright in CE3, it's quiet simply because you need to darken it in PS. A good trick i learned was to bring in the base albedo, bring the diffuse down in CE3 until you are happy with how it looks and then copying the luminosity value into PS. CryEngine simply handles textures much differently from PS.
That doesn't seem like a very strong technical argument. Are you sure your texture is being loaded as sRGB and not in linear space? That would give the result that you seem to be seeing. I don't know enough about cryengine though to say either way.
That doesn't seem like a very strong technical argument. Are you sure your texture is being loaded as sRGB and not in linear space? That would give the result that you seem to be seeing. I don't know enough about cryengine though to say either way.
Well yes. CryEngine is a bit tricky in that way. If you look at some sample files from RYSE, you will see that the texture sheet looks much darker from what you will see in-game.
Well yes. CryEngine is a bit tricky in that way. If you look at some sample files from RYSE, you will see that the texture sheet looks much darker from what you will see in-game.
Well, those could have been authored in linear space. I will ask it for the 3rd time, have you tried enabling sRGB for your albedo map?
Generally albedo textures and full color specular textures tend to be authored in sRGB, while textures that represent math or percentages, like normal maps, gloss/roughness maps or metalness maps should be in linear space. Normal maps absolutely half to be in linear space, but gloss/roughness maps really can be either, its just important that if you're using linear or sRGB when previewing to create the asset, that you follow through with that setting in the final asset.
Not as technical as what others have been posting, but I think you should work on making the bricks more uniform in width. Some are verrryyyy wide, and others are tiny. It breaks immersion for me because real bricks wouldn't be like that.
Replies
Diffuse is good, obviously, but the metal and roughness textures aren't good. How metal are bricks? Not at all, so you should have a flat colour. Your roughness has lighting information in it - you don't want that at all. You want your roughness to show how rough the bricks and mortar are - mortar is often rougher, and bricks have smooth bits and rough bits so they'll have variation.
Without seeing the displacement it's hard to say what's wrong, but it should have greater contrast between the brick and the mortar than the contrast on a single brick face.
Normal map is not detailed enough, you should add some noise because right now it looks flat. Best thing would be to bring the albedo back into whatever program you use to generate normals and try to get more depth and detail.
@kurt what do you mean by light info in the gloss? If you mean those darker areas it should not be an issue and is not whats destroying this gloss map.
@Kurt Thanks for the advice I will see what I get now.
@BagelHero Yes that's metalness.
@grimsonfart I will get a better normal map. I always seem to be worried that there will be to much information in the normal map (or is that something I shouldn't worry about?)
I'm confused on metalness. I understand now the problem with the old map its like duhh brick isn't metallic, but when creating a flat color should it be complete black or a very dark gray because I am referencing the Quixel Megascans chart and its a dark gray not completely black?
Also I'm really having trouble creating roughness. The concept makes sense now but how do I create an accurate map? What's the difference between having the roughness in linear color space and sRGB color space?
Thanks!
from here: http://www.marmoset.co/toolbag/learn/pbr-practice
M refers to microsurface (either gloss or roughness, depending on which you are using. Make sure to read the key at the bottom of the image. The chart about is for the specular workflow, not the metalness workflow.
For the metalness workflow, the albedo defines the diffuse value for non-metals, while the reflectivity is set to a fixed value of 4% linear space or about 21% sRGB or #363636. Reflectivity for non-metals can vary a bit, mostly in the 2-8% range, but the metalness workflow uses a fixed 4% value as it is close enough for most materials.
For metals in the metalness workflow, you set the metalness map to 1 (white) and the albedo defines the reflectivity while the shader turns the diffuse black. Metals are very dense so they diffuse very little light and reflect most of it instead.
Partial values in the metalness map most commonly should be used for fading from one material to another, like a soft transition from dust or dirt. Partial metals also make sense, but those are very rare. For most materials your metalness map will generally have black and white and not much inbetween.
For the metalness map here, bricks are not metal at all, so the value would be 0 (black). For a material like this, you don't even need to use a texture at all, you can simply use a constant value in your shader.
Creating an 100% accurate roughness is impossible unless you have real scanned data (like Quixel uses).
But from what i have gathered from the megascans samples you get in DDO, bricks should have a median of around 29. To check this go to Window, then Histogram and choose luminosity in the channels dropdown. Median is the number you are looking for.
Just desaturate your albedo and play with levels to get it around that number.
@EarthQuake now that i have you here, i have never understood the albedo part of things. I obviously know how to make it and that it should not contain ligthing information, but what i don't understand is the calibration part. If say i look at the megascans chart and choose rock, should i have my albedo the "color" the chart says? Or is it just the brightness?
I have tried following it, but honestly, when i bring assets into CryEngine they look so bright it's blinding.
but can someone give me a link explaining what PBR is ?
Well, the first thing to note is that the diffuse/albedo for any given material simply varies a whole lot. There is no "corrrect" value for rock, there are an unlimited amount of different colored rocks you could find in the real world, what is show in the chart is simply an example of one rock texture.
As far as looking bright in cryengine, there could be any number of reasons for this. Maybe your lighting has a lot of contrast, post effects/bloom, your texture could be set to linear space instead of sRGB (the albedo values in the chart are sRGB).
That doesn't seem like a very strong technical argument. Are you sure your texture is being loaded as sRGB and not in linear space? That would give the result that you seem to be seeing. I don't know enough about cryengine though to say either way.
@grimsonfart Ok I will try that for roughness.
Now the metalness is a constant 0, I've done a new roughness map that is in linear color space, and I've added a heightmap.
Well, those could have been authored in linear space. I will ask it for the 3rd time, have you tried enabling sRGB for your albedo map?
I am also pretty sure CE3 requires sRGB if you read the documentation at crydev on PBS
http://docs.cryengine.com/display/SDKDOC3/Physically+Based+Shading+in+CRYENGINE
Hehe sorry, early morning reading comprehension fail on my part.
Generally albedo textures and full color specular textures tend to be authored in sRGB, while textures that represent math or percentages, like normal maps, gloss/roughness maps or metalness maps should be in linear space. Normal maps absolutely half to be in linear space, but gloss/roughness maps really can be either, its just important that if you're using linear or sRGB when previewing to create the asset, that you follow through with that setting in the final asset.