Log into your account to keep track of your progress. You can work through the lessons without logging in but your progress will be lost when you refresh the page.

Learn how to build an Ivy tool from scratch that uses an input shape to grow ivy. The tool will generate branches and then place leaves on these branches. The tool incorporates simulation to handle falling branches of ivy. Learn how to package up the tool as a digital asset in Houdini then use it in Unreal Engine using the artist-friendly interface.

Project Titan is an in-house tech demo designed to production test Houdini's procedural workflows while creating a 3D environment that leverages the latest technologies in Unreal. Click Here to learn more.

A quick overview of all the different parts of the Ivy tool lesson. Take a look at where you are headed with this lesson.
Learn how to create branches on objects. Start out with a base shape then scatter points to determine how branches can grow on that object. This will be combined with noises to get more variation. After the branch shapes are created, there is some clean up needed and the branches need to be merged together.
Learn how to add more variation on the branches. After creating the base layer of the branches, now it is time to add more variation and break the silhouette. You will create branches that hang from the sides and from bottom parts of shapes.
Learn how to add leaves to the branches. Using the branches created earlier, you can now place the leaves. Learn how to control the orientation of leaves when placing them on the branches and how to add variation to the leaves.
Learn how to make a digital asset for the Ivy system. With all the logic of the tool in place, it is time to collapse it into one node/tool. When making digital assets, you will also learn to create custom parameters, so you can create a good and structured interface for artists.
Learn how to open the Ivy tool in Unreal engine. The Ivy tool is ready to be tested in Unreal Engine to see the tool in context. There are still setups you can add, like automatically assigning materials to the leaves and branches. As well as using vertex color stored in Houdini to add wind intensity or random color in Unreal Engine.
The Ivy tool by default can output high resolution geometry for the leaves. Learn how to bake out plane cards for a more efficient representation of the Ivy. A plane will capture the Ivy into a texture that can be used in a variety of ways.

CREATED BY

Simon_V
SIMON VERSTRAETE

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

COMMENTS

  • kyanhudson 2 years, 11 months ago  | 

    Yes!!! Thank you!

    • idris173 2 years, 10 months ago  | 

      Hi simom, can you show me what geometry input to the stash node? Thank you very much.

      • clem.lysergy 2 years, 10 months ago  | 

        This is what I did:
        - Find an ivy atlas on Megascans, ensure Opacity is included in Export Settings, Open MS Plugin in Houdini and click Use Atlas Splitter, import ivy from MS
        - Go into the created ivy subnetwork, and into Atlas_Splitter geo, select some leaves and merge them
        - Create a Stash node below the merge, click Stash Input
        - The Stash node can now be disconnected and copied into the Ivy Tool network

        Also need to create an opacity enabled material in UE using the textures and assign that to the leaves, as long as the UVs don't get overwritten anywhere it should match up nicely.

      • CatintheHat1169 2 years, 10 months ago  | 

        The issue I am having is that bar improvising to circumvent issues with your step process, I cannot replicate your results. Reverse engineering hasn't solved this either with running an alternate Apprentice to compare side by side to an Indie version. Is there some reason nodes are working defunct contrary to the parameters I am seeing?

        • drlesser12 2 years, 7 months ago  | 

          I had to add a Match Size node after the "Draw Curve" node, "Line" Node, and "Grid" (leaves) Node to get everything to work right in Houdini 19.5.

          • brendancasimir 2 years ago  | 

            When i select object to host ivy to, nothing happens.. this happen to anyone else?

            • ivaniliev245 1 year, 11 months ago  | 

              If you want to flip leaves you can use @N= -@N; declaration in attribute wrangle (placed after attribute transfer node (N )in network). Because as as far as I my experience goes in some meshes the leaves are calculated backwards. Ivy gen is not working well with some meshes that are not with closed volume (Aka it is working well with cube but it will not work well if faces of cube are missing.). You can use poly extrude to make them as closed volumetric geometry.

              • Popo 1 year, 9 months ago  | 

                When I go to find shortest path with "from any start to each end" selected I only get a very small set of connections, just one point to one point unlike the instructor's full branch. What might I have missed? At the 13:00 mark or so.

                • Popo 1 year, 9 months ago  | 

                  Figured it out! missed the invert range part of beginpts (group range)

                  • Popo 1 year, 8 months ago  | 

                    Little bit confused about what I should be plugging into the stash node too.

                    • arnaud777 1 year, 4 months ago  | 

                      Hello, I creat my mesh for the leaves and creat the stash. but want i connect stash node to copytocurves I dn't have my mesh, i have rectangulare shape. What is the probleme ?

                      thx for your tutorial !

                      • Shiv Dholakia 11 months, 2 weeks ago  | 

                        Great tutorial, but I lost you when you used the stash input node with the variant attribute. I have the name attribute on the megascan asset which I stashed and each of the 27 different leaves are names piece#. How to get this to work with the variant attribute we created or how to convert this to the variant attribute, I am not sure. Please advise. Thank you.

                        • Shiv Dholakia 11 months, 2 weeks ago  | 

                          *are named piece#

                          • pekay11 1 month, 1 week ago  | 

                            Amazing tutorial, thank you!

                            Please log in to leave a comment.