Procedural Animation

Lego Automation

Rendering:

Houdini Version: 20.5.278

Renderer: Karma CPU

Avg. Render Time: 3:00 min

Resolution: 1920 X 1080

Number of Lights: 4

 

Primary Samples: 17

Min Secondary Samples: 3:11

Max Secondary Samples: 9

Light Sampling Quality: 3

Noise Level: 0.01

Technical Breakdown

Mechanics

While working on the mechanics, I used proxy geometry. I later replaced it with the final models and smaller details, such as screws and small pieces. 

Ostrich

I started with the upper and lower legs of the ostrich by creating a two-point constraint with tubes, then later replaced them with the final geometry. I repeated this for the feet and the bar connected to them

Code from: https://www.deborahrfowler.com/MathForVSFX/DotProduct.html

For the ostrich neck, I created a curve using a line node and an attribute wrangle, then copied geometry to the curve

For the neck animation, I used the same sin expression as the person’s shoulder, but with the ½ of each value, to match the shoulder movement 

Rope

To create the rope, I created a line between the neck and shoulder using an add node. I then used a sweep mesh to give it thickness

Lego Person

Upper body rotation:

Arm Rotation and pivot to the shoulder:

Main Tubes

Using a two-point constraint with the same values as the ostrich leg constraint, the tubes were able to control how the rest of the objects move with the bbox expression. I used this to create the bouncing effect with the ostrich walking.