Animate a Billowing Flag
Blender 3d tutorial
To create a billowing flag in Blender 3D, we will go over how to properly model a flag, use Blender's cloth and wind physics to simulate realistic flag movement, and finish off by using material nodes in Cycles to create the final render.
The flag itself is simply a plane. So, open up Blender and remove the default cube. Add a plane to the scene (Shift-A, Mesh, Plane). Then resize the plane so it has the correct dimensions of the flag you are creating. I am creating the American flag, so I'm scaling along the X axis by 1.9.
You can find and determine the ratio with which to scale your flag at Flag Spot. Simply find your flag and divide the width of your flag by the height (width / height). Take that value, go into Edit Mode and scale (Press S) your plane on the X-Axis by that value.
The next step is simply rotating the flag so it is upright in our scene. This is done by selecting our flag and rotating along the X-Axis by 90 degrees (R, X, 90).
After your flag has the correct positioning, make sure you are in edit mode and subdivide the plane. I used a setting of 10 cuts. These subdivisions will allow the flag to flex and bend when we attach cloth physics to it. If you would like your plane to be more detailed, feel free to add more subdivisions to your flag.
Since we don't want a stiff flag, we need to tell Blender to simulate cloth with our plane. We do this by going into the Physics panel and clicking on the Cloth button. To keep things simple, I decided to use the 'Cotton' preset and only changed the Quality setting. I made steps a value of 16.
Also, in the Cloth collision setting, I changed the Quality to 8 and checked the Self Collision box. This ensures that our flag will no go through itself when we animate it.
If you play the animation in object mode now, you should see the flag fall off the screen. We will be fixing this problem in the next steps.
The Flag Pole
Our flag falls straight down because we do not have anything acting as a flag pole to hold it up. While we will not be modeling a flag pole, we will instead simulate it with a vertex group. To do so, go into the Object Data panel and find the Vertex Groups section.
Now add a vertex group by pressing the plus button, rename the group to Flag Pole, and go into Edit Mode by pressing Tab.
Next, select the vertices that will act as the flag pole, as shown in this image, and click the Assign button to put those vertices into the Flag Pole group.
Pinning the Flag
Testing the animation now will again result in a stiff falling flag. To finally fix this, we need to head back to the Physics panel and into the Cloth section and check the box marked Pinning. Then click on the text box directly below and choose our Flag Pole vertex group.
If you play our animation now, you should see the one side of your flag stay in place and the rest of the flag fall in a cloth-like manner.
To create a wind object, add an empty to the scene. Go into the Physics settings, click on the Force Fields button, and in the Type drop down, select Wind. The only other setting to change is the Strength setting. I gave this a setting of 150.000, which will look like a fairly strong breeze. Of course, you can do differently.
At this point, we have a basic wind object, now we need to aim it. Select the wind object and rotate (Press R) it on the Y-Axis by 90 degrees. If you test it now, keep in mind it will take a bit for the flag to pick up the wind, other than that, you should see your flag billowing in the wind.
Materials and Textures
Since we are using Cycles, set the render engine to Cycles Render. Then go into the Compositing layout. This setting is to the right of the help menu. Next, change the node type to Materials. This button is to the right of the Node menu in the Node Editor window.
Now select the flag in the 3D view window and add a material in the materials panel. You should see a Diffuse node and Material Output node appear in the node window.
The first node we will add is the Image Texture node (Shift-A, Texture, Image Texture). In that node, open the image of your flag and connect the color output to the color input of the Diffuse node.
The other two nodes add ripple details to your flag. Add a Noise Texture and Wave Texture node. Then change the settings and connect the nodes as shown in the image here. Once you have done that, you can pause your animation while your flag is waving and render your flag. You have now created a billowing flag!
No single tutorial will cover everything, so if you want to dig deeper, here are some resources for you to check out. If you have other resources you think I should add to this list, feel free to let me know!