Building a Fancy Stylized Tree Shader in Blender 3.2

Поділитися
Вставка
  • Опубліковано 3 чер 2024
  • Learn a bunch about shading by making an excessively fancy tree leaf shader! Our subject is a spherical tree that will get custom radial Normals, mixed colors, and much more. We'll try to keep it compatible with Instancing and Scattering, but this tutorial isn't about those.
    You do not need a huge amount of shader node knowledge to follow along, but this is probably above absolute beginners. There's lots of good foundational information like how to balance lights, map ranges, and mix colors. Also advanced stuff like lifting Normal Map details and applying them to Custom Normals via Surface Gradients!
    Topics:
    - Balancing the Sun Light
    - How World Lighting affects shading
    - Basic and advanced Radial/Sphereical Normals
    - Faking Sun Angle in the material
    - Making fake shading (Lambert Shading)
    - Lots of color mixing and effects
    - Leaf Texture (alpha and Normal Map)
    - Randomized UVs
    - Getting Random Per Island in Eevee via Geometry Nodes
    - Compensating for Object transforms in Object based Normals
    - Mixing Noise into Normals for variety
    - Using Surface Gradients to combine Normal Maps and Custom Normals
    - Faking tree density with Object Coords
    - Using AO to darken and brighten things
    - Distance from Camera based masks
    - Tons of other random stuff.
    Blog post for this project:
    www.aversionofreality.com/blog...
    File Download on Gumroad ($2+):
    aversionofreality.gumroad.com...
    Support me on Patreon:
    / aversionofreality
    Social Links:
    / aversionreality
    / aversionofreality
    www.artstation.com/aversionof...
    Timestamps:
    00:00 - Intro
    03:44 - Starting Setup
    06:12 - Balancing Lights
    13:54 - Basic Radial Normals
    18:43 - World Lighting
    27:06 - Sun Angle
    30:30 - Lambert Shading
    47:50 - Mixing Colors
    59:16 - Gloss?
    1:03:30 - Leaf Alpha Texture
    1:06:52 - Randomizing UV tiles
    1:10:10 - GN Random Per Island
    1:12:42 - Advanced Radial Normals
    1:24:12 - Object Normal Transforms
    1:37:40 - Normal Noise
    1:44:17 - Surface Gradients
    1:51:00 - Rendering Normal Maps
    1:57:38 - Faking Density
    2:07:27 - Ambient Occlusion
    2:11:35 - Applying AO via Soft Light
    2:14:43 - Noise Density
    2:15:49 - Distance Masks
    2:23:06 - Conclusion
  • Навчання та стиль

КОМЕНТАРІ • 51

  • @Eu.Claire
    @Eu.Claire Рік тому +8

    Pin me hahahaha

  • @CrispyGFX
    @CrispyGFX Рік тому +4

    This should be required watching for anyone new to shading in Blender.

  • @krd_art_Ch.666
    @krd_art_Ch.666 11 місяців тому +1

    it's like listening to professional teacher, so amazing

  • @jonathanbisher
    @jonathanbisher Рік тому +2

    Incrediblly useful content! Thanks for all the hard work.

  • @yuwish6320
    @yuwish6320 Рік тому +2

    Wow. That was insane. Really detailed and useful. Totally worth the 2.5 hours.

  • @adityaghozali538
    @adityaghozali538 Рік тому +1

    I really love this, thank you!

  • @treechat8397
    @treechat8397 Рік тому +1

    This is amazing, thank you!

  • @MissaelKaban
    @MissaelKaban Рік тому +1

    this is gold

  • @3Dshmish
    @3Dshmish Рік тому +1

    You are an incredible person!

  • @ArtBan333
    @ArtBan333 8 місяців тому +1

    This is amazing!!! Thank you

  • @remie07
    @remie07 Рік тому +1

    Nice! Advance tutorial for free, thanks!

  • @d3v1lsummoner
    @d3v1lsummoner Рік тому +1

    There was a standard baked plane with normals realistic tree going 'viral' on twitter as if normals on planes wasn't an incredibly old technique. This, on the other hand, is actually mind bending.

    • @aVersionOfReality
      @aVersionOfReality  Рік тому

      Hehe, thanks! This can also just be done in a plane except for the density and AO part (although that could be baked to one!)

  • @s7tuts448
    @s7tuts448 Рік тому +1

    Great video sir

  • @greebly6011
    @greebly6011 Рік тому +3

    First attempt watching the video and I got about 50 minutes in before I lost track of what was happening in the shader. I'll definitely be back after taking some time to recollect what I just learned

    • @aVersionOfReality
      @aVersionOfReality  Рік тому

      Let me know if you've got any questions! There's a lot in there.

  • @regstar212
    @regstar212 4 місяці тому

    Very interesting! I watched all the way through and learned a lot. I do have one issue, though. Scaling the leaves doesn't scale the density masks. So if I were to use this shader on smaller clumps of bushes, I'd have to change the values of the center mask map range to match the smaller scale. Any advice would be appreciated

    • @aVersionOfReality
      @aVersionOfReality  4 місяці тому

      Yes. You could probably automate it to set the density set on some other parameter, like bounding box volume. I've not actually tried solving this problem yet, but there should be lots of ways that would work.

  • @s7tuts448
    @s7tuts448 Рік тому +1

    nice video

  • @Nerijus_nc
    @Nerijus_nc Рік тому +1

    this is amazing piece of information. Thank you! One question, you mentioned in the beginning that you are turnig of cast shadows and that you will explain laiter how to get cast shadows back without messing up the shading inside the tree. Is there a way?

    • @aVersionOfReality
      @aVersionOfReality  Рік тому

      The problem is that the Eevee engine's cast shadows are pretty terrible. I believe they are getting improved soon though. There is no problem using them to have the tree cast shadows on things right now, but you'll want to avoid having the tree shadow itself. This can be done with lightpath. But then it also can't receive shadows. Basically, there's no perfect fix until Eevee's shadow options improve. But in other engines it can be fixed.

  • @abulak3477
    @abulak3477 Рік тому

    can u make fast tutorial for old version?

  • @stephengomez9715
    @stephengomez9715 8 місяців тому +1

    Love the look that's DEFIANTLY what I'm going for but I'm making a tall "eastern white pine tree" it's not as round or full of leaves like your tree so I'm worried I might see some floating leaves. Hopefully you can make an updated version in the future, one that isn't as LONG as this, or has TOO MUCH stuff in it.

    • @stephengomez9715
      @stephengomez9715 8 місяців тому

      I was following the tutorial but up until the "Lambert Shading" part the shadows are at a 45-degree angle whereas his are vetical. After I decided to-do what he did by putting the drivers of Combine XYZ, Value, and RGB in 1 group. Also, I'm doing all this in Blender 3.6.

  • @cornballdangernoodle
    @cornballdangernoodle Рік тому +1

    It’s MY slumber party; I get to choose the movie!

    • @aVersionOfReality
      @aVersionOfReality  Рік тому +2

      Excellent choice if the goal is a good night's sleep for everyone!

  • @wirago3246
    @wirago3246 Рік тому +2

    Beginner question here: do you have a tutorial on how to create that tree? Mine somehow... sucks compared to yours :D
    Gonna get the blend-file from gumroad anyways to appreciate your effort in this video, but would be cool to see the process :)

    • @aVersionOfReality
      @aVersionOfReality  Рік тому +1

      Just what it shown here. There's nothing special going on beside playing with the Sapling settings until you get something you like.

  • @KudryavkaNoumiWafuu
    @KudryavkaNoumiWafuu Рік тому +1

    Would it be possible to add a highlight color to this? I'll buy it again for even more 😅 🙏 It's so gorgeous as it is too, you're a creative genius! 🤩🥰

    • @aVersionOfReality
      @aVersionOfReality  Рік тому +1

      There's lots of ways that could be done. Like take the shading and ramp it to only the part most facing the light, then use that to brighten the rest. Or you could use gloss like mentioned in the video, but that's harder to get working just right.

    • @KudryavkaNoumiWafuu
      @KudryavkaNoumiWafuu Рік тому +1

      Thank you! 😊

  • @phonelawless9205
    @phonelawless9205 Рік тому +1

    Omggggg I fkn love you

  • @michaelvaughan2986
    @michaelvaughan2986 Рік тому +1

    Is it possible to bake this into a mesh with textures and export in a GLB?

    • @aVersionOfReality
      @aVersionOfReality  Рік тому

      You can bake the output as color and the Normals to a Normal map. And you can make similar setups in other engines. I'm not really familiar with GLB or what it can hold.

  • @yaterjebaiter3977
    @yaterjebaiter3977 5 днів тому +1

    2:04:49 Couldn’t you just use generated coordinates and separate XYZ?

    • @aVersionOfReality
      @aVersionOfReality  5 днів тому

      In some cases. Gen cords are based on the bounding box, and are pre-deformation. So depends if you want those things.

  • @rakdos5371
    @rakdos5371 Рік тому +1

    Will this work with cycles or its eevee only?

    • @aVersionOfReality
      @aVersionOfReality  Рік тому +1

      Shader to RGB is eevee only. The Lambert shader will work in either, as will all the rest that does not depend on Shader to RGB. There are some things you need to do in Cycles like use Light Path Is Camera Ray to stop Emission shaders from actually casting light.

    • @rakdos5371
      @rakdos5371 Рік тому +1

      @@aVersionOfReality thx for the quick reply, definitely gonna try it

    • @aVersionOfReality
      @aVersionOfReality  Рік тому

      @@rakdos5371 Feel free to contact me if you run into issues.

    • @rakdos5371
      @rakdos5371 Рік тому +1

      @@aVersionOfReality I will, thanks mate

  • @edwardhitten2678
    @edwardhitten2678 Рік тому +1

    Brain's explosion, now.

  • @Palenque_pupikaka
    @Palenque_pupikaka 9 місяців тому +1

    oh god before creating this shader i need to create the tree and how ? hahahaha

  • @anupamkumar4109
    @anupamkumar4109 Рік тому

    Can you animate this

  • @abulak3477
    @abulak3477 Рік тому

    22.00

  • @sounddifferent3752
    @sounddifferent3752 2 місяці тому

    It worth metioned what this is not "Lambert shading". Default "Lambert shading" are indeed NdotL, while those trick of calculating (NdotL)*0.5+0.5 are not Lambert diffuse, but so called "Half Lambert" or "Wrap diffuse". Not sure why you add 1 instead of 0.5, it looks okay, but normally its 0.5. Maybe its some blender things, i dunno.
    Its widely used not only in stulyzed games. Half-Life 2 was using "Half Lambert" for character lighting. The more stylyzed game INSIDE was also using this trick to fake global illumination.