Home 3D Art Showcase & Critiques

[WIP] Tree Trunk, PBR learning

polycounter lvl 3
Offline / Send Message
Avvi polycounter lvl 3
Old tree trunk.
Polycount: 3300 tri (+ teselacja)
Tex: 2048 px. PBR.
Tools: ZBrush, Substance Painter, Blender, Photoshop, UE4

TODO:
- 2nd set of textures: 100% moss. Blending between them in UE4, with HeightLerp (so the crevices are covered first, before the bark).
- Proper presentation, with a miniature-style circle base and little plants.


TL;DR -- how to achieve vivid colors in PBR, for example intense green moss and deep blacks?


The colors looks bleak (as pointed on the Polish 3D forum, thx Lestat).

Pale albedo, not contributing much to the final effect, is a big problem for me in this new (PBR) workflow. I have a feeling that whatever I paint on albedo, it doesn't matter much, because the reflection layer will hide it. In fact, the more matte surface, the worse - total black on albedo will be a light grey in result.

I could avoid the problem by manipulating specularity, but isn't it a cheat? I want to understand PBR first and acquire good habits.

Isn't it now that albedo is only here to set the general color, while the complexity of surface is defined rather by the other maps? For example, neighbouring patches of different roughness.
I'm also surprised how much a good normal map means now (and micro bump in particular).

What could be done here, when the tree trunk should have similar roughness on the whole surface? I increased metalness on the green parts, but it doesn't seem to change much.

And I'm angry with that, because I love colour :) Maybe now, in games, it's more about what is reflected - i.e. contrast of the sky, of the surroundings? Post pro settings?
I do this model to find out such things. Make myself familiar with the problems and solutions.
I'd appreciate ideas, samples, links.

Oskar




http://oskarswierad.com/pub/3d/tree-b/tree-b-2014-14-10-ue.jpg

http://oskarswierad.com/pub/3d/tree-b/tree-b-2014-14-10-ue-mist.jpg

http://oskarswierad.com/pub/3d/tree-b/tree-b-2014-14-10-ue-top.jpg

http://oskarswierad.com/pub/3d/tree-b/tree-b-2014-14-10-tex.jpg

http://oskarswierad.com/pub/3d/tree-b/tree-b-2014-14-10-ue-unlit.jpg

http://oskarswierad.com/pub/3d/tree-b/tree-b-2014-14-10-wire.png

Replies

  • grimsonfart
    Options
    Offline / Send Message
    grimsonfart polycounter lvl 4
    What engine are you using? The bark looks really neat. If you want more vivid colors you should play with hue&saturation? Also, you need to calibrate your albedo correctly, because in your daylight picture it is way to bright. By that i mean you need to lower the levels on it too make it darker. It's going to look wrong in PS, but right in the engine.

    Metalness is not needed for bark. I would stay with albedo, gloss/roughness, normals. Specular is not necessarely needed, but i use CryEngine so it might be different with what you are using.

    Also, your gloss map looks of the chart. In general (if im not missing something here) dark = rough, light = shiny, but as you have a metalness map i guess it does not matter. I could give more info if you tell me what engine :)



    aaaah never mind you use UE4, i need to learn how to read :D. I don't really use it so its hard to tell for me :/
  • Dan Powell
    Options
    Offline / Send Message
    Dan Powell polycounter lvl 5
    PBR makes materials realistically accurate, and n the real world you wouldn't really get vivid colours on a tree trunk. You can bend some of the PBR "rules" to create stuff which is unrealistic (in this case, overly/unrealistically vivid.)

    You could try overlaying your Ambient Occlusion pass onto your Albedo pass to increase the intensity of the shadowing, making it more vivid. Play around with the Hue, Saturation and Levels of your Albedo channel and see how it looks if you increase how colourful it is. :)

    Your Metallness should be completely black, alternatively you can just set the value to "Not Metal" (usually a value of 0). Metalness is only to make metal, and in most cases it will be either black or white - rarely do you have any grey values. The only time I'd think of using grey on a metalness map is to do carbonated metal (rust).

    The roughness map should be darker - you need to use a PBR reference to pick your base values for roughness. Marmoset have a PBR reference chart here.

    Hope this helps. :) That's a nice tree sculpt by the way!
  • Avvi
    Options
    Offline / Send Message
    Avvi polycounter lvl 3
    I'm glad to hear you like the model.

    I completely misunderstood the metalness map. Now I get it. Thanks Dan.

    I also realised (after reading the documentation) that I had specular set to 1, while the default for UE4 is 0.5 !

    As for making albedo darker - yes, it helps. But suprisingly, Dontnod's albedo values (from their UE4 chart) are very bright. They set coal, for example, to a value of 50 / 255: http://seblagarde.wordpress.com/2014/04/14/dontnod-physically-based-rendering-chart-for-unreal-engine-4/

    http://oskarswierad.com/pub/3d/tree-b/tree-b-2014-10-15-ue1.jpg

    http://oskarswierad.com/pub/3d/tree-b/tree-b-2014-10-15-ue2.jpg

    http://oskarswierad.com/pub/3d/tree-b/tree-b-2014-10-15-tex.jpg
  • grimsonfart
    Options
    Offline / Send Message
    grimsonfart polycounter lvl 4
    You should not always trust charts. Sometimes you need to cheat as Dan pointed out. Every engine is different, so dotnod's might work for theirs etc.
  • Avvi
    Options
    Offline / Send Message
    Avvi polycounter lvl 3
    Moss shader. It utilises HeightLerp. It also takes up vector (Z) into consideration.
    A single value controls, how strongly is the surface covered.
    (Moss texture is just a prototype now.)

    tree-b-2014-10-16-moss.jpg
  • Nuclear Angel
    Options
    Offline / Send Message
    Nuclear Angel polycounter
    It looks great, cant wait to see you make a complete tree with this bark shader. Good job! ^^
  • Shrike
    Options
    Offline / Send Message
    Shrike interpolator
    The crust itself looks too glossy, the surface is like super rough , but really nice aside, with the tesselation
    Also, not sure about that, but your moss probably works the wrong way around. It should gather in the cavities and spread from there on, not the opposite (am I right ?)
  • AdvisableRobin
    Options
    Offline / Send Message
    AdvisableRobin polycounter lvl 10
    Looking great so far man!

    If you are going to make a moss shader within Unreal maybe check this video out. On that note have you given any thought to using Substance for adding a mossy slider instead?

    Edit: This video is actually better since it walks through the creation shader.
  • Avvi
    Options
    Offline / Send Message
    Avvi polycounter lvl 3
    Good idea, Robin, to make the mossy version thicker :) I forgot how possiblities rise with tesselation turned on.
    I haven't used the Substance Designer yet, though I definitely want to learn it sooner or later. In many cases it would provide me with much better performance than creating textures in shaders, because it's calculated once (at game start?) and cached.
    For example, currenty I generate the terrain material for my little game in shader: https://www.youtube.com/watch?v=hrnYTcGsFqE ...While it seems that I should do it in Substance, because paths don't change throughout the game.

    If I understand it well, though, it would be heavier to use a Substance for the tree trunk. The shader cost is minimal and texture sets are common. With Substance, texture would be generated for every tree, so more memory used.

    Shrike: I will check it. Currently I used that as a reference: http://upload.wikimedia.org/wikipedia/en/f/f4/Pine_bark_tecpan_guatemala.JPG

    Nuclear Angel: The whole tree? whoa. If I did it, I'll need to come up with some idea for tiling, as even 4K would be barely enough for all the branches :D
    The closest next step would be to surround this trunk with some grass and present it well for the portfolio.
  • Avvi
    Options
    Offline / Send Message
    Avvi polycounter lvl 3
    The trunk got a companion (with an unfinished texture). Now I'm testing different lighting conditions and thinking how the final shot should look like.

    TODO:
    -Fix the shape of roots
    -Give the ground a proper model and texture
    -Make and scatter some dry grass around it

    Critique from Ponk (so I don't forget):
    -Add green spots (emerging needles) to the currently sterile pine
    -Add a bird model. Because basically it's just a sphere + cone + plane for the tail ;)
    -Add some fake sky-color spotlight as a rim light

    tree-b-2014-10-23-skies.jpg
  • Daedalus51
    Options
    Offline / Send Message
    Daedalus51 polycounter lvl 5
    Very awesome work man! Love it :)

    Regarding PBR and colors etc. The Dontnod chart "should" work fine for you if using Unreal4, because thats what they actually ballanced their values for.

    Another thing most people forget when stuff starts looking too flat is basically 2 things:

    1. Exposure! Thats alsmost half the deal for having something looking balanced and consistent. If you take photos of the real world with a high exposure, you also loose depth and saturation. So having thos settings tweaked to something that supports your scene is incedibly useful and almost something I would recommend to test out even before starting to make textures.

    2. What type of lighting you are using. This is important because fully dynamic lighting in Unreal 4 doesn not yet support all the stuff you would need for PBR to look properly right! Most issues occure because of lack for indirect shadowing and GI which makes scenes look flat in the shadows. The new Distance Field AO helps with that, but its still not there yet (mainly because DFAO is quite limited right now) Sometimes, you dont see this (for example you just place a gun in an empty scene and light it with an HDR image, then its almost not noticeable).
    But as soon as you start building more complex scenes, you almost HAVE to go for lightmass to get a nice useable physical based environment and indirect shadowing for your objects.

    Hope this helps and cheers! :)
  • Avvi
    Options
    Offline / Send Message
    Avvi polycounter lvl 3
    Thanks for the tips and positive words!
    The difference between baked and dynamic light is big indeed. Maybe light propagation volumes would help. But hmmmm, I worry it would be a ton of tweaking to get it right.

    I don't like the final look of the grass, compared to the effort put into it.

    http://oskarswierad.com/pub/3d/tree-b/tree-b-2014-10-25.jpg

    http://oskarswierad.com/pub/3d/tree-b/tree-b-2014-10-26-sss.jpg

    http://oskarswierad.com/pub/3d/tree-b/tree-b-2014-10-26-sunset.jpg

    Grass texture: http://oskarswierad.com/pub/3d/tree-b/tree-b-2014-10-25-grasstex.jpg
  • Avvi
Sign In or Register to comment.