CG Supervisor Ian Smith told us about becoming a Digital Artist, explained how he learned Houdini, and spoke about SideFX's new procedural UE5-powered environment Project Pegasus.
Introduction
I'm Ian Smith, a CG Supervisor and Freelance Artist working in the industry for 10+ years. I'm currently working with SideFX on Project Pegasus, a learning tech demo showcasing Houdini workflows with Unreal Engine 5.
Becoming a Digital Artist
I took my first steps into digital art when I was about 13 or 14 and discovered level editors for games like Unreal Tournament 2013 and Max Payne. I used to try to painstakingly re-model Unreal Tournament characters in Maya PLE.
I studied Video Games and Visual Effects at University, but learning was largely self-guided. After graduating, I spent about a year working on my portfolio before getting my first industry job. During that time, I started learning game art through good ol' Gnomon and Eat3D DVDs.
Today, so many great resources are available through digital stores such as ArtStation, Flipped Normals, and Gumroad. For anyone getting started, I recommend all of Experience Point's video tutorials. They're awesome and free. ZBrush, Substance 3D Painter, Designer, Houdini, it's all there. I also recommend Level Up Digital. Daniel Castillo, Alex Beddows, Daniel Thiger, Sabrina Echouafni, Dannie Carlone, Casper Wermuth, and many others have some amazing tutorials.
Whenever I land on an ArtStation portfolio that blows me away, I always go to check to see if they have a store.
In 2022, I also did an Environment Art mentorship with Alex Beddows. It was a bit daunting. They aren't cheap, and there's a bit of uncertainty about what you'll get out of it. But in hindsight, it was worth the investment. Alex was incredibly flexible and, from the start, gave me direction and feedback, navigating me through the obstacles that were holding me back. Some of my Houdini work on my mentorship project led to me working with SideFX on Project Pegasus.
Challenges
For a long time, my biggest challenge when working on personal projects was overcoming technique decision paralysis. How shall I make this? Trim Sheets? Unique textures? High-poly to low-poly bake? Should I use Megascans textures or Substance 3D Designer? I'd also constantly make personal projects far too big and try to tackle way too much. My biggest advice would be to start small with one to two objects and focus on using a few new techniques. Also, don't try to make everything from scratch.
After many abandoned projects, I've learned that the sweet spot for me is to work on personal projects I can complete in 6 to 8 weeks. Any longer, and I tend to get burned out and struggle to finish them. Setting a time scale also makes it easier to decide my approach. If I'm learning a new technique, I'll scale back the project size to allow myself time to make mistakes. If I want to complete a larger project, I'll stick to techniques I'm familiar with.
Once I began to scale down projects, I started to complete them. For me, that was the biggest motivation. Realizing that learning was exponential. I'd carry everything I'd learned on one project into the next. I learned to reuse resources from one project in another. Reusing some assets or parts of a scene, making presets and templates. You'll always make fewer mistakes when trying the same technique a second time as well. It was a big motivation when I began to complete larger projects within the same amount of time.
Getting my first industry job was quite eye-opening. I think, like many people, I felt a bit of imposter syndrome. But quite quickly, I discovered that I learned so much faster when working in a studio surrounded by other artists. As I've taken on senior roles, it's also extremely motivational working with junior artists going through the same process.
Houdini
In the last few years, I began incorporating Houdini into my workflow on personal projects. Against my own advice, I started learning Houdini by trying to make a large environment with everything procedural. It was way too complicated, and I never finished it. Houdini is one big toy box, so getting carried away is easy.
It was much easier once I scaled back and tackled a single technique. I created a small scene using familiar methods, sculpting a few rocks in ZBrush and using Houdini to generate the UV'd low-poly model using Polyreduce and Labs AutoUV. I then baked and textured the rocks in Substance 3D Painter and assembled the scene in Unreal. Once I'd successfully incorporated Houdini into a small part of my workflow, I was hooked!
The ability to work non-destructively is one of the biggest reasons I kept returning to Houdini. Keeping the process procedural and non-destructive was especially useful on personal projects. I could iterate quickly, make changes, and re-use Houdini setups. It just became a big-time saver in the long run.
I started with Houdini just by following tutorials on YouTube, Simon Verstraete, Erwin Heyms E-Houdini Academy, Paul Esteves, and, of course, SideFX’s own YouTube channel. For anyone starting with Houdini, I'd also recommend branching out and checking out tutorials that might not immediately relate to your focus. Because Houdini is one big toy box, you're bound to pick up useful information you can use elsewhere.
Project Pegasus
My projects using Houdini ultimately led to me being invited to lead Project Pegasus, a Houdini and Unreal Engine 5 learning tech demo from SideFX. Chris Hebert from SideFX initially approached me to present at Houdini Hive GDC 2023 after seeing my personal projects on ArtStation. We then discussed ideas for what would become Project Pegasus.
The project very much walks in the footsteps of Project Titan, SideFX's previous learning tech demo.
I'm drawn to creating natural environments, which aligned with Chris's Project Pegasus ideas. The project is designed to explore how Houdini can be used to create a detailed open-world style environment with UE5.
Chris and the SideFX team have graciously let me take the reins and allow the Pegasus team to explore and experiment with different workflows.
I'm also very fortunate to have been joined by some fantastic Houdini artists. George Hulm, Feike Postmes, Tilman Mielsch and Alex Hamer.
George has been working hard on creating an incredibly detailed landscape. Feike has been building workflows for generating procedural buildings. Feike and George have also developed Flora, a set of prototype foliage tools. The tools are still in early development, but Tilman has used the Flora tools to create detailed foliage for the project. Alex has been using Houdin 20's new cloud tools with Unreal 5.3's VDB support to make detailed cloudscapes.
We'll release the first learning videos for Project Pegasus on November 28th and kick things off with a day of presentations, giving everyone an overview of the upcoming content. Keep an eye on SideFX's YouTube channel and check out the website for more information!
The world of Project Pegasus is a 4-kilometer island with rolling hills, valleys, and rocky outcrops. Dirt paths crisscross the island, and dense forests blanket hilly slopes.
We faced many obstacles creating Project Pegasus. It's a relatively large area, and we're a small team working to a short deadline. Houdini's procedural workflows allowed the team to work and iterate quickly.
Setting Up Procedural Cliffs
For example, the cliffs were generated in Houdini using TOPs. It starts by taking the final landscape made by George and creating a mask of the cliff areas, then converting the heightfield to geometry using a Convert Heightfield.
I can then use a Blast to delete geometry with the mask attribute and extract the cliff areas only. I use the Labs Delete Small Parts to set a threshold that deletes smaller cliffs.
Splitting each cliff into individual sections, I can subdivide the geometry and displace it using the Labs Triplanar Displacement node using height maps from Quixel Megascans. It's truly amazing how much geometry Unreal Engine 5 can render in real-time using Nanite. A single cliff was up 7 million tris.
I use two different Height Maps to displace the geometry to avoid repetitive tiling. I can blend these two different displacements using a noise mask.
I blend them together in a point VOP, mixing the position of the two different displacements using a mix node, with the noise as a mask to blend the two.
Once I’d established the basic workflow for a single cliff, I could convert the network to a Digital Asset and set it up in a TOPs network. TOPs are task operators. They allow me to automate running lots of tasks. I can generate a task for each individual cliff and automate the process of creating cliffs for the entire island.
Using TOPs, I generated nearly 300 unique cliffs across the island.
While TOPs can be daunting, with a bit of basic understanding, they become really powerful. We'll be releasing a video series where I break down the entire process, creating the digital assets, TOPs network, importing into Unreal, and making the material. I'll also talk about some issues I encountered when running out of memory when importing this amount of geometry into Unreal.
When we consider the ever-increasing scale of open-world environments and the need to create detailed art to fill them, it becomes essential to build procedural workflows that can help automate parts of the pipeline.
I can’t wait for everyone to see the fantastic learning content the team has been working on. We’ll be rolling out the learning material week by week, starting on the 28th of November, with learning videos, Building a Collaborative Pipeline, Landscape Creation, and Landscape Pipeline.
The team still has lots of ideas for where to take Project Pegasus in the future, so I hope Project Pegasus can return in 2024.
Ian Smith, CG Supervisor & Project Lead on Project Pegasus
Interview conducted by Theodore McKenzie
Keep reading
You may find these articles interesting