This is the sixteenth entry of what will be a year-long journal on learning the 3D application Houdini, created by Side Effects Software. Houdini is a sophisticated application that is widely used in the production of visual effects for Hollywood films such as Big Hero 6, Mad Max: Fury Road and many others.
In my previous Learning Houdini Journal 15, I started a new series of tutorials created by a favorite Houdini instructor: Rohan Dalvi. The course is called "Procedural Vehicle Modeling".
Chapter One - Bus Front Basic
After re-arranging my Houdini workspace to match that of the instructor, Mr. Dalvi, I started in with the first chapter (out of 21 chapters total). In this chapter I learned that we will be modeling a small city bus and that Mr. Dalvi will break the bus into 3 different parts: the front, the middle and the rear. We will model the front first, which has the window, the door, the grill and a half-moon cut for the tire. Here is a picture of what the final bus will look like.
Basic Procedural Box Modeling in Houdini
This first chapter was so hard for me that I considered quitting. Mr. Dalvi's pace is quite fast and while the course is supposed to be for beginners, it's really not. A good deal of familiarity with expressions and procedural modeling techniques is assumed. But I wasn't going to let my frustration get the best of me. Despite having to start chapter 1 over, I was able to finally get through it by rewinding and replaying sections of the video I was able to re-produce his results and work my way through problems that popped up by thinking it through. Houdini has a logical workflow it's just a matter of finding the right logic.
We started by creating a simple box and placed it flat along the x axis of the grid. Once the box was resized into a rectangle, we used the blast node to remove the opposite side and bottom of the box because we'll be mirroring what we do on one side of the bus for the other side as buses are symmetrical objects. Next, we used a clip tool to cut the box in half and then used a knife tool to add segments in the middle of the x and y axis.
I was good until we moved into getting the segments to adjust their size in the x axis by using the bounding box size of the clip tool. The idea is clear to me, but the process was hard to work out. Only by going over it on the video several times was I able to get it right. Essential it's a bbox expression:
This tells the bounding box that the node clip1 (the first x axis knife segment) will adjust in the X dimension to the maximum if needed. At least, that's what I think it means. By doing this, we are able get the segments to adjust together when we change the X axis size
Next, we used the group node (named f) and selected points on the front of the bus (middle and bottom segments) and attached the bounding box to the points. Then we created a transform node and used the expression
to set the pivot of the group to the front in the z axis. That allows us to control the shape of the front of the bus from flat to angled.
Here is the final network for Chapter 1.