May 24, 2021
May 24, 2021
Meet our new featured artist! Chris Wallis is a software developer currently working at The Coalition on the Gears of War series. Besides being an accomplished games engineer, he's also RenderMan's "Magic Shop" Art Challenge winner!
Growing up, video games were a huge part of my childhood. One of my personal favorites was Star Fox 64! I replayed it so many times because I just loved seeing the relationships between the characters and flying to all the different worlds. At the same time, I was obsessed with Toy Story and it was just magical seeing the storytelling you could get by using CG. It didn't even click to me that jobs developing those things were even a possibility, but they were early inspirations that got me interested in creating and building things.
I actually didn't start programming until after I started college. I went to California Polytechnic State University for a degree in Computer Science. I had largely picked the major at the recommendation of my high school advisor due to being decent at math and enjoying a class on HTML of all things. Luckily, I completely fell in love with programming, the thrill of creating things out of thin air was just so much fun! My Computer Science 101 professor, Zoe Wood, also coincidentally taught all the graphics courses, and it was an early peek into the world of graphics programming. It was also the first time I really made a connection between all my fond childhood memories playing video games and an actual career. I could MAKE these things! I took every computer graphics course I could! A couple of times, the class filled before I could sign up, but I was able to convince them to let me just sit in on the lectures. It was great, I could soak up all the information and not do any homework!
Making the leap to a game studio was tricky! Getting into the game industry usually requires experience in the game industry which is a bit of a chicken-and-egg problem. My first job out of college was at Microsoft working on the DirectX 12 API. I wasn't exactly in the game industry but I got a lot of experience working with GPUs which got my foot in the door. On my own time, I was constantly working on my own rendering projects to build up experience. It wasn't instant, but over the course of many years I finally gained enough experience for some kind folks at The Coalition to give me a chance and I've been loving every day since!
My formal education is purely computer science, so nothing I would call "formal," but I did take a figure drawing class once! Drawing has been an on-and-off hobby of mine, though I've never done it with any consistency. A few years after college, I was getting frustrated with my inability to get any better at drawing so I decided to sign up for a figure drawing class at a nearby community art center. I'm glad I did, that class fundamentally changed the way I think of art! On the first day, we were drawing from a real-life model and my sketch was unsurprisingly terrible. The teacher came by and said something a little surprising: "Let's triage what's going on with your drawing". The word "triage" has a special meaning for software developers, it's used when triaging bugs, which is essentially attempting to take information about a problem with some piece of software and deduce a root cause. And that's what the art teacher did for my sketch! Using the trick of holding a pencil out at arms length and making rough measurements, she was able to break down areas where my proportions didn't match up with the measurements. I loved that she was able to give objective feedback like "this elbow should be twice as long as the length of the head" in a way that was both actionable but also giving me the tools to determine that myself. It was the first time I actually felt like art was something I could actually do!
As I mentioned, I do draw on occasion, and it's recently become an important way for me to just step away from a screen. My workday is spent working in front of monitors, but even after work I like to play video games so it all adds up to a lot of screen time. Having some time to get away from consuming media, put on some calming music, and just doodle...can be quite nice. As for mediums, my current favorite is working with ink. Many steer clear from ink because it's irreversible, but I find that's actually why I love it. With a pencil you can get stuck in a loop of drawing and then erasing over and over. With a pen, you've got no choice but to go forward, and the inability to make a "perfect" mark relieves a lot of pressure and just lets me enjoy the process.
A bit dated by several hundred years, but Leonardo da Vinci is a huge inspiration for me! I love his journal sketches and he's one the big reasons I got into ink drawings. But beyond just his art, it's also just amazing how deep he was able to dive into such a wide array of subjects. Anatomy, perception, physics, engineering, he did it all! But I think what's most inspirational is that the underlying motivation behind it all was just an insatiable curiosity to learn more about the world. Walter Isaacson has a wonderful biography on Leonard da Vinci that I can't recommend enough, it's had a big impact on how I both approach art and engineering.
In terms of modern inspirations…playing video games! One of the benefits of working in the industry is that I don't have to feel like I'm slacking when playing video games, instead I call it "research." I have a habit of trying to reverse engineer how a game renders certain effects. I love seeing an effect in a game that I can't break down and it's always fun to bring it up at work and see what theories co-workers come up with. A recent favorite is Cyberpunk 2077 and I'm currently working through the Yakuza series.
I also make a point of watching every CG Disney/Pixar movie because I love seeing the innovations in offline rendering. I just saw Soul recently and thought it was phenomenal, the lighting quality was just a joy to see and the completely volumetric scenes were mind blowing!
I certainly used to fall into the boat of thinking I couldn't do more artistic things due to being a "left brain" person! The theory is that the left brain is more analytical and logical while the right brain is the side that fuels imagination and creativity. And I do think there's some truth that we do lean one way or the other, but I don't think the notion is as black and white as people make it out to be.
When I think of how I approached the RenderMan “Magic Shop” Art Challenge, I can't help but feel I approached it in a very engineering-like way. I started with a relatively simple premise that informed everything I did, which was: "A witch that's frustrated her potion isn't working." And honestly, even that inspiration was from my engineering background, as I wanted to capture that feeling of debugging a hard engineering problem.
To bring this troubleshooting mentality to my challenge entry, I'd save a quick low-resolution render every day so that the next time I wanted to get creative, I would look at the image and ask myself "What needs to change here to help sell my story?" When I framed it that way it turned my creative process into a game of problem solving, which I felt played better with my way of thinking. With this process I would bring up questions like "How can I transform the light to focus on the character more?" or "How can I tweak this material to tie in with the premise more?” The solution to those questions needs a mixture of right and left brain thinking, so it’s always good to blend both!
I can't talk about what I'm doing currently, but in the last year I was really lucky to work on the Xbox Series S|X optimized version of Gears 5 as well as the Hivebusters DLC. It's been a blast seeing what we can do with all the power of next-gen (now current-gen?) consoles!
In terms of personal projects, I've been developing my own GPU path tracer, it’s still quite limited but I’ve been having a lot of fun with it! Seeing all the cool things you can do in RenderMan has given me a whole lot of inspiration for what I'd like to add next!
I agree, I think we're going to see a lot of intersections over the next few years! Real-time engines have always taken inspiration from offline engines and we're always playing a game of catch up. That said, engines like Unreal Engine can get quite close to film quality these days! However there's many areas where offline engines have a hefty lead, to just name one, volumetrics like big columns of smoke and explosions still don't quite hit the bar that you'd see in CG movies, so there's still plenty of room for real-time engines to grow.
I'm less clued in on offline engines since I don't work in these professionally, but something I am seeing offline engines intersect with real-time is simply the power of faster iteration. Things like iterative path tracing, advances in denoising, and GPU accelerated raytracing are enabling offline renders to work on scenes almost interactively which is just crazy!
I had a lot of fun using RenderMan! Things like rendering of complicated VDBs or spline-based hair are usually out of the scope of real-time rendering so I took the opportunity to lean into using both of those quite a bit! I was really happy with the end results and it's a good inspiration source for what I hope we can push in real-time next.
While real-time engines are interactive, drastic changes to a scene often require you to "re-bake" your lighting and various other data that incur long build times, so you can't always get an immediate preview of how things look. RenderMan's IPR however gives you a very fast glimpse into the final render, and while it's still pretty noisy, the Optix Denoiser can really work some wonders.
The improved iteration speed from XPU will be a huge win! The IPR in RenderMan was already impressively fast even for fairly complex scenes so I'm really excited to see what the render times look like with XPU. I'm also just as excited about the technology underlying XPU! Scenes from Pixar or Disney movies are orders of magnitude more complicated than what's in a game so I'm thoroughly impressed at the engineering that's allowed those scenes to render on the same hardware we're using for games!
Learn more about RenderMan with the presentations at the Art & Science Fair
Something I'm only recently discovering is the value of pacing yourself and managing motivation. With social media, there's a strange problem of being surrounded by too much inspiration. And even worse, it can give the illusion that others are working at some god-like speed cranking out projects on a daily basis.
So I recently had a baby who is now a very active one year old. Unsurprisingly the free time I have available to work on personal projects has dropped quite a bit! But something funny happened, my productivity on personal stuff went way up! And I think the biggest reason is because I'm a lot more protective of how I spend my time now. If I'm setting out to do something, I try to break it down into how many days it'll take me. If it's going to take me over a month, that's usually too long in my opinion because motivation tends to wind down at that point. That's not to say I don't take on bigger things that take longer than a month, for example, the RenderMan Art Challenge is 90 days. My approach was to break it down into much smaller milestones that I could celebrate along the way to give myself smaller victories.
So is the takeaway to have a baby? Not exactly, though it's certainly been a fulfilling experience! I think the biggest thing is to realize that motivation is a precious resource and setting yourself up with smaller milestones can help ensure you don't drain away your enthusiasm. We all work in different circumstances and rather than trying to match the pace of others, I think it's more important to work in a way that allows you to enjoy the journey.