The new Tree toolset available as part of SideFX Labs can be used to create many different tree shapes using a procedural workflow. Learn how to use the various nodes and parameters to sculpt your trees adding in variation to give them a natural look. You will also learn how to bake out the tree designs to a single polygon and either using that as a background tree in a video game or as a branch for a 3D tree. 

NOTE: These lessons use the SideFX Labs tools. Make sure the latest release (non production build) is installed when doing this lesson.

Thanks to Ryan Gold for developing this tool as part of his internship at SideFX. 
Thanks also go to Nils Westfelt for the functionality of the simple leaf node.

1 | Tree Generator Quick Intro

Learn how to build a procedural tree using the SideFX Labs Tree tool. Take a quick tour of the various nodes and parameters used to generate a tree.

Length: 4:55

2 | Create a Tree Base

Take a more in-depth look into creating a procedural tree using the new tools.

Length: 23:52

3 | Bake Branches to Textures

Learn how to use the SideFX Labs Maps Baker to bake a tree onto a single polygon. Learn how to use variation sliders to quickly bake out many trees at the same time.

Length: 16:02

4 | Pine Tree

Learn how to specifically create a Pine tree using the new SideFX Labs tree tools.

Length: 14:47

5 | Willow Tree

Learn how to specifically create a Willow tree using the new SideFX Labs tree tools.

Length: 17:00

6 | Umbrella Tree

Learn how to specifically create an Umbrella tree using the new SideFX Labs tree tools.

Length: 15:05



Simon is a tech Artist that loves building procedural tools and assets. By adding more and more procedural approaches to his workflow, he is able to build 3D models with speed and flexibility. During his studies at Digital Arts and Entertainment, he taught himself how to work with Houdini. After his studies, he started working on Ary and the Secret of Seasons at eXiin. Currently he is a Houdini freelancer and focuses on creating procedural content.

More from Simon Verstraete


  • yao.liu 4 months, 1 week ago  | 

    Thanks!!!Really nice tree sop!!!

  • micky_lin 4 months, 1 week ago  | 

    Really Great!! Thank a lot !

  • efxlab 4 months, 1 week ago  | 

    amazing, thanks to Ryan Gold

  • Endorphine 4 months, 1 week ago  | 

    can it be easily used for dynamics ?

  • mf42 4 months ago  | 

    How do we install this? I can't seem to get it working through installing SideFX Labs in Houdini Apprentice, or via the GitHub version.

    • Siver 4 months ago  | 

      Tree tools are parts of the SideFX Labs and updating to the latest version of Labs (non-production build) should give you the tools. Make sure you are using Houdini 18.5 as well.

      • mf42 4 months ago  | 

        Cheers, just realised my Houdini was 18.0.5, not 18.5. Works now!

      • Grimwolf 3 months, 2 weeks ago  | 

        It's not working for me either. I've updated to the latest version of Houdini, 18.5.408. I've also made sure Labs is up to date, but the only "tree" labs tool I have access to is "Quick basic tree".

        • christomrut 3 months ago  | 

          check non production builds

        • theshizon 1 month, 3 weeks ago  | 

          Try to Uncheck the "production builds" in the Labs toolbar installer and install the latest version. I didn't have to go through the whole Github thing.

  • theratos 4 months ago  | 

    In sideFX Labs I find that quick tree and none of the nodes of the tutorial ??? I have Houdini 18.5 FX in the latest version of Labs (non-production build).

    • silmaeth 3 months, 3 weeks ago  | 

      Also didn't work for me with the automatic install of Labs
      Had to install it manually by copying the content of the downloaded Github zip file in my "...Documents\houdini18.5\SideFXLabs\18.5.408\SideFXLabs18.5"

  • michaelh99 4 months ago  | 

    I'm having the same issue as theratos. Have Apprentice 18.5 and the 18.5.408 build of labs and all the nodes say "
    This node is using an incomplete asset definition. It will not
    function properly until the asset library containing the full
    definition is installed. "

    But doesn't say specifically what's missing.

  • RichaThomas 3 months, 3 weeks ago  | 

    Great tutorial !

    I'm new to Houdini. I was wondering if connecting an object merge to a scatter node is the right way to scatter a Tree generated with this tool on a terrain.


  • ChristopherShaju 3 months, 3 weeks ago  | 

    how to make banana tree, leaf orientation different and one big leaf per branch

  • zrjacobs1985 3 months, 1 week ago  | 

    Is there a simple way to add animation in these tools? I was wondering if they integrate into vellum in a straight forward way?

    Thank you!

  • Barrett Meeker 3 months ago  | 

    This is great thanks!

    Is there any way to get rid of the black edge borders when baking textures with alphas though? Maybe some cops pass? Thanks!

    • Siver 3 months ago  | 

      There are padding settings for the mapsbaker that might help

  • ffroh 2 months, 3 weeks ago  | 

    Thanks for the great tools! There seems to be a bug on MacOSX (tested with H18.5.462 and H18.5.469) . As soon as the tree controler node is connected, trunk and branch meshes become invisible. The mesh seems to be still there and I can visualise the point/primitive numbers. Without the controler all works fine. Tested the same on Windows and here the tree controler node works as expected.

    • Siver 2 months, 3 weeks ago  | 

      I recommend submitting this bug to the team so they can look into it. Here you can submit bugs

      • ffroh 2 months, 3 weeks ago  | 

        Thanks, it's submitted.

    • ffroh 2 months, 3 weeks ago  | 

      The problem with the invisible mesh seems to be related to a shader/transparency problem. When I replace the Labs PBR shader inside tree_controller1/matnet1 with a Principled Shader, all works fine. The Labs PBR shader actually makes all objects disappear (on MacOSX).

      • Juan Iturbe 2 months, 2 weeks ago  | 

        Find node switch3 going up from the output and reverse its inputs with shift - r. Should solve this

  • pfistar 1 month, 3 weeks ago  | 

    Amazing stuff. I'm just starting to play with this, and wondering if there's any ready-made node available that would allow me to merge a Branch-Generator coming off a Trunk-Generator with a Branch-Generator coming off a Branch-Placer node, this way I could apply an new sub-branch node that would act on all of the above at once (rather than having to fiddle with 2 nodes whose setting want to be identical)?

    • pfistar 1 month, 3 weeks ago  | 

      Alternatively, and as a more general Houdini question, is there a way to easily 'instance' a Branch-Generator node, so that ALL parametric changes I make to the one will be reflected in any others (without having to 'copy' and 'paste relative reference' for each parameter?

      • Jikian 1 week, 3 days ago  | 

        Right click the node, Actions > Create Reference Copy

  • gnomer 3 weeks, 2 days ago  | 

    Thanks for this. But can't find any solution to get this tree RBD or Vellum ready.

  • mgumpinger 1 week, 6 days ago  | 

    Really great! What's the best way to create a wood with randomized trees?
    Copy one tree (as packed geo) to scattered points on grid, but then how to best feed the Tree Controller's Randomize?

    • mgumpinger 1 week, 6 days ago  | 

      A for loop would do fine but when using the metadata as detail to randomize every tree gets rendered which is quite some heavy load.
      So how to best get some variation into the wood :-)

      • Siver 1 week, 6 days ago  | 

        If every single tree needs to be random then use a loop but of course this will be slow and heavy to calculate based on the size of the forest.
        I would recommend generating a couple trees (like 10) and randomly scatter them, will be faster and you have now a library of trees you can use in the future.

  • mgumpinger 1 week, 6 days ago  | 

    That works fine. Thank you!

  • Scara 1 week, 2 days ago  | 

    Thanks! :)

Please log in to leave a comment.