Click Here to view all the amazing entries to Rookie Awards 2024
Henry Zhang - Houdini VFX Reel
Share  

Henry Zhang - Houdini VFX Reel

Henry Zhang
by henryzhangVFX on 1 Jun 2024 for Rookie Awards 2024

Hi, I'm Henry Zhang. I've been learning Houdini in my spare time for the past three years, and this is my 2024 Houdini showreel. I appreciate any feedback. Thank you!

4 157 0
Round of applause for our sponsors

Hello, I'm Henry Zhang. I've been learning Houdini in my spare time for the past three years. This is my entry for the Rookies Award 2024. I'd like to begin by sharing my showreel, showcasing some of the shots I created during 2023 and 2024. I hope you enjoy it, and I welcome any comments and suggestions! Thank you.

Village On Fire

The first project in the showreel is my submission to Pwnisher's Eternal Ascent 3D challenge rendered in 2.35:1 format. I aimed to create a burning medieval village to showcase my skills in procedural modeling and pyro simulations.

All elements, except for the character and trees, were procedurally generated in Houdini. This includes the terrain, buildings, towers, walls, docks, and foreground stairs.

The scene features several layers of fire elements: building fires, tree fires, torch fires in the foreground, and a massive fire behind the castle. I conducted an additional pyro simulation in the foreground to drive a particle simulation, which was used to generate sparks.

For the character, I used KineFX for retargeting and Vellum for simulating the cloak.

I use USD workflow and Karma XPU to render my scene out. Since XPU doesn't fully support volumetric geo light, so I procedurally create point lights based on the volume temperature in the hot area, which did a great job to mimic the light from the fire. 

Roaring Waves

In this project, I explored FLIP simulations and various water effects. Creating a large-scale FLIP simulation was quite challenging for me.

I began my scene with a FLIP simulation to create the ocean surface. I used a high-frequency ocean spectrum for the initial simulation and then displaced the result with a low-frequency spectrum. This approach allowed me to retain fine details while maintaining the overall shape I desired.

I tried to add wetness to the main character to ensure it fits more with the scene. To achieve this, I applied droplets and water flow effects across the body.

Vehicle Crash 

This project was challenging due to its intensive RBD simulations and tree destruction. Additionally, I pushed myself further by creating the entire environment with Solaris and USD, which is complex but allowed for more efficient scene management and rendering.

The first step is to create the RBD metal destruction for the vehicle, which involved two stages of fracturing. Initially, I used a custom HDA called Draw Boolean to break apart the right wings, allowing the right engine to detach from the main body. For the second fracture, I applied a basic Voronoi fracture to simulate the deformation of the metal.

I developed two types of procedural tree rigs during the production process. The RBD tree rig is heavy but powerful, used when a tree comes into contact with the vehicle to break apart. The KineFX tree rig with a wire solver is much faster to simulate. I scattered these trees around the volume area to react to the disturbances produced by the vehicle with Pop Advect by Volume.

Finally, I render the scene using KarmaXPU. Procedurally scatter grasses based on camera angle. Optimized all tree leaves with point instancer. Using Layout tool to reference some Megascan assets, like rocks and other foliage.

Houdini Tools

At the end, I'd like to share some of the tools I developed for my workflow.

Project Manager

I created a project manager using Python and Qt to efficiently manage my pipeline. Key features include:

• Configuring scene variables such as JOB and CACHE

• Setting up scenes, shots, versions, and frame ranges

• Navigating past projects to copy and paste nodes

Import Texture Tool

This tool assists users in automatically importing textures based on customizable patterns, which can be saved for future use. Key features include:

• Automatic setup of PBR texture nodes and parameters

• Customizable patterns for matching textures

• Support for various texture nodes, including UV Map, Tri-Planar, Karma Hextiled UV, and Karma Hextiled Tri-Planar

Thank you!


Comments (0)

This project doesn't have any comments yet.