Learn how to create ivy in Blender with this helpful tutorial by Filippo Veniero
Vegetation and plants can turn a flat image into a successful work, but created by hand, realistic ivy can become a nightmare even for an expert 3D artist. Luckily, we can use a Blender plug-in: IvyGen. This plug-in implements a procedural system that produces realistic ivy on our mesh. It's free and very easy to use, you can use it in Blender or as standalone software, and it is available here
. You'll find a standalone version for Linux, MacOS and Windows and a lot of good textures. This isn't a biological simulation of growing ivy but it produces complex and convincing vegetation.
Free tutorial resources
Free textures to accompany this tutorial are available here
Step 1: Scene setup
For this tutorial we'll use Suzanne (as usual). So, open Blender, delete the default cube and add a monkey (Shift+A > Mesh > Monkey). Add subsurf modifier and set level at 2 (Ctrl+2). Change shading to smooth. Add a plane (Shift+A > Mesh > Plane) and move below Suzanne. In edit mode (tab) select 2 vertex and extrude (E) along the z axis. Add some loop cut, subsurf modifier and set shading as smooth. Rotate Suzanne and place her on the plane like the image below.
Step 2: IvyGen
First of all, enable the IvyGen plug-in (File > User preferences > add-on > Add Curve: IvyGen). Then select Suzanne and jump to edit mode and select a vertex; snap the cursor to selected vertex (Shift+S > cursor to selected). Ivy will grow from this point.
In object mode, add a new curve and select Add Ivy to Mesh. Et voilà! Let's see the main options:
- Maximum Time: The time to run the ivy generation, very useful to prevent the computer from freezing (a long Ivy could use more than 3 million vertices).
Size Setting: In this tab we have the maximum ivy length settings in Blender units (1 blend unit = 1 meter) – the length of the ivy segments, maximum length of a branch without sticking to an object and how a branch will feel the effects of adhesion.
Weight Setting: Here, we can detail how the ivy will grow (how much growth is influenced by the force of gravity, adhesion to the object, primary direction along z axis or random direction). Don't forget that ivy will grow towards the selected object.
Branch Setting: Here, there are 2 fields: the first is the probability to create a new branch and the second is the size. The last tab is for the leaves settings: the size and probability of a leaf forming.
Step 3: Textures and materials
Select Cycles render engine and divide viewport into 3 parts; one for node setup; one for UV layout and the last for 3Dview. Select the leaves and add a new material. Connect the color input of diffuse material with a texture node (use the efeu0.jpg texture). Use UV texture co-ordinate (by default Blender UVs overlap all planes used as leaves).
Mix diffuse material with a glossy shader (95% diffuse and 5% glossy) and add the next texture node, select normal map image (efeu0_norm.jpg) set as non color data and connect with a normal map node. Now connect the normal output with the normal input of diffuse and glossy shader. Mix diffuse and glossy material with a transparent shader and use a black and white image (efeu0_alpha.jpg) as a mask.
The last thing to do is add a bump map; add another texture node (efeu0_bump.jpg) and connect with displacement input (I usually use a math node set to multiply to decrease the bump effect). I used a simple material for branch; a mix of diffuse brown and glossy (if you want to do a close-up render you could use some wood textures).
Select Suzanne, jump to edit mode and mark as seam all the vertices around the face, unwrap mesh (U) and add a new material. Use the marble texture as the color input for the diffuse shader and displacement input. If you want to change the color use a color mix node.