VFX artist Oliver Hilbert discussed some of the ways he uses Houdini to generate fantastic digital images and animations.
My name is Oliver Hilbert. I am a VFX artist and Lecturer. I have worked on a range of projects spanning from commercial, TV series, game cinematics and films. Currently I am actually is VFX supervisor and Cinematographer for our independent film productions at Media Design School in Auckland, NZ. Online I go under the title Revilo, and have a website dedicated to both my professional and personal work.
Working with Houdini
For me Houdini is a creative framework that lets me just create, either experimentally or with directive. The flexibility to engineer solutions to complex situations is the application’s core strength. Combine that with its unified simulation solvers it’s no wonder the FX division of the industry has embraced it so heavily. But with that comes steep learning curves. I first picked up on the program back in 2005 and since failed to become comfortable enough with it 2 more times before I was able to stick with it without feeling like I didn’t know what the heck I was doing. The large amount of training materials now available certainly has helps make that transition.
How do you build the liquids/oceans with Houdini? How is the whole process organized here? How do you add the waves and what is the amount of freedom you get with the water manipulation?
Oh they are so many numerous ways one can approach this – which is fantastic. It all depends on the requirements of the effect. For liquids the gold standard is Houdini FLIP solver. This will accurately simulate the movements of all things that appear liquid and “flow”. When we talk of oceans – an excellent research paper by Jerry Tessendorf called “Simulating Ocean Waves” lead to the development of deformers that would manipulate geometry with a very realistic ocean like appearance. A very popular implementation of the that was Houdini Ocean Toolkit. This was a deformer and displacement system that could then allow artists to create ocean surfaces in their 3d application. In its current usages this deformer often acts as the base surface for the ocean.
From here we are able to layer on particle systems like FLIP to create detailed ocean like simulations, with waves and interaction to objects with the ocean. Further layering of particle systems can give us effects like spray, foam, bubbles an so on. At any point in time you are completely free to go back to any aspect of the simulation (even right into parts of the solver if your mathematically inclined) and make changes. I guess though that while other packages do have similar toolsets – they often lack the flexibility to then implement the result into shots. Creating a simulation of boat in a patch of ocean is fine, but you better hope that you are able to put that patch in a non-simulated expansive ocean vista – that matches your current simulation somehow. Houdini has made that possible from the beginning.
The landscape pieces that I have done with Houdini are more so quick fire experimental art pieces. I use environmental visual ques to strike a chord with believability. They are often generated in a short time frame (and evening or two) to just stretch and exercise my Houdini knowledge from start to finish. They often get quite detailed and rely heavily on displacement workflows – however don’t see why they couldn’t be ported over to a real-time engine. If planning to do so – Houdini Engine provides a port for any procedural tool development (like environment generation) to run directly in Unity or UE4. Think of it like Houdini running as a plugin in your game engine. Very powerful stuff!
The key to creating procedural content is I think through careful observation. By identifying phenomena or relationships, you can implement these with variable control. Some of these are more traditional – like how a lens processes light, or how leaves are positioned on a branch in a tree. Others can be more abstract or interpretive. I think this is also what makes Houdini a great package for learning. Often you are required to build in those rules (rather than have plugin XYZ just do it for you without you realizing). When you build something and it looks wrong – it forces you to observe closer and learn. You can test and try until you get the results you need in a very non-destructive manner. You certainly learn a LOT along the way!
My current workstation is a water-cooled 5930K 6 Core i7 machine, 64Gb of RAM, a GTX 970, 2 x SSD’s and a small array of storage drives. I run a dual boot setup with Windows 10 for my everyday stuff and Linux Xubuntu when doing VFX work.
How do you think the artists should work with the modern tools? Should you just focus on one software or should you experiment with various projects? It’s interesting how do you combine various pieces of technology in your workflow.
It really depends. I personally prefer myself on being well versed in a larger array of applications and understanding each application’s core strengths and weaknesses. Often I do feel I lack depth in some packages but as technology and tools are forever changing and moving – I am careful to not put too much energy into specifics until a project requires it. Deeper foundational knowledge and oversight I find are far more effective. Focus on in-depth knowledge is very important when a pipeline demands it, but alternate approaches and solutions often is the skillset that saves the day when the going gets tough. I find keeping in touch with more packages increases my lateral thinking and learning abilities, so when the time comes to focus in and go deep with a package… I can do so quickly. It’s not uncommon for me to imagine complex situations and evaluate how I would approach such situations just to keep in check on what I need to learn. Works well for me but I think it will be different for each person, though.