Very impressive article Jake! You are very talented.
nice article! i love seeing the breakdowns.
We’ve had a chance to talk to Stefan Groenewoud from Guerrilla Games. He discussed the way he’s approaching materials for environments and hero-assets. An inspiring read for professionals and newbies.
My name is Stefan Groenewoud and I am a Shader & Texture artist at Guerrilla Games. So as my title suggests, I am mainly involved in shader and texture creation but also help out with environment modeling where necessary. Since I’ve joined Guerrilla I’ve been working on Horizon: Zero Dawn, before that I worked at Splash Damage as Environment-Artist on Dirty Bomb and Gears of War: Ultimate Edition.
I try to stay on top of the latest tools in the industry by doing some R&D in my spare time with new software packages or workflows I hadn’t gotten around to trying out. This is important in this rapidly evolving industry. It has also led me to follow GDC talks, whitepapers or blogs of artists. The industry is way more open now than it had been years ago. For example, you can easily grab a tutorial for just 5 euros and gain all the knowledge you need for picking up a new workflow or software package.
For personal projects, I don’t have to keep data streaming or storage (disc space) limitations into account. And most importantly, I can be my own art director! I make decisions what should be the focal point of my environment, where I should spend more time, etc. I can add experimental tech like tessellation, add the endless amount of layers or decals and apply all the knowledge I’ve gained throughout my work and use it on my personal work.
For a game you tend to keep in mind things like, shader/texture budgets, pixel density and re-usability to save on texture memory, texture fetches, you have to make sure your game runs at a steady framerate but also looks good!
For a hero asset I tend to take more time to polish and add all the necessary details. Hero assets are the key focus of the environment therefor you’ll add a slightly higher pixel density in some cases or add more polygons to help the asset come more to life and stand out. But also lighting is important. It doesn’t just lead the players’ eye to the focal point and creates atmosphere but also helps to express the material. To my knowledge, Naughty Dog approaches their environments (in the blockout phase) – mood/lighting first – the use of a dominant light source combined with bounce light helps to create a natural look. After this they add environment art and gameplay on top of that. This also helps to determine where you want to put which materials but also color usage and/or the scale of macro/micro details (vista shots vs indoor).
Important is that you keep checking your details in game and constantly ask; is the player going to see these details? Is it worth these extra 500 tri’s, the higher pixel density or that one additional detail map. I personally bump into this myself every now and then, knowing where to spend the extra time and calling the asset done. As an artist you fall prey to the fact that you want to give each and every asset as much love as your hero assets, even though the player might not ever see this. To save time I’ve created a library with kitbash assets and textures/alpha’s/materials. Also with tools like Substance you can easily create nodes and interchange it within all your textures, not just to save time but also keep the texture style consistent.
Before you start researching, it’s good to know how the material is going to be applied in-game, you have to ask questions like; is it going to be vertex painted (for variation), what’s the scale in-game, should I use detail maps? Planning ahead could save you a lot of headaches. Do lots of research before you delve into your texturing program of choice. I tend to start with a collage/reference board of all the interesting features I’d like to see in my material(s). With experience, you start building a (visual)library containing all sort of materials and interesting references.
After my planning and once I’m confident with the research, I jump into Photoshop, zBrush or Substance Designer and start building my material by roughly blocking in shapes and then start adding more layers of detail. The program of choice for me depends on how much time I have.
Balance Between Realism and Style
I happen to have work on mostly semi-realism or photo real games, during one of my internships I did work on a few cartoony games. The main differences between them, to my experience, are mainly color usage and shape language but also texture and complexity. I do think there’s a place for both of styles. Personally I’m very fond of realism in movies and games but I can just as much enjoy any Pixar film or Ratchet & Clank game. Now with PBR rendering in games we’ve managed to push the visual fidelity in games even further. Even though it’s stylized we can learn a lot from these stylized games e.g. Ratchet & Clank. For example, the atmosphere, material expression and light usage. You can work on a realistic game but still pick up a few pointers from a stylized game like; cinematography, color usage, material expression… where do they make the material rougher for example? If they apply dirt and grime to a stylized game, why, and why does it work?
Why do you think in modern game development, artists tend to work more as generalists, getting involved in a lot of different tasks and production pipelines? Shouldn’t there be a specific specialization? Or maybe now artists have to know everything there is to keep working?
I’m not sure why. But I have picked up Python scripting in my spare time, simply because I saw the potential this scripting language has. And I guess that goes for other people too, game dev has a lot of interesting aspects, from concept art to tech-art. It helps to be versatile or help a different department when your department is cooling down for a bit. But there are still plenty of specialists, if you’re awesome at your specialization, keep being awesome! To my experience it does help to be somewhat of a generalist, in case another department needs support, you can easily help them. Or when your game has shipped, and there’s no more work in your specialization, then what? What I’m trying to say is, it’s not a must but it does help to know more than just your specialization. But then again, every studio has a different take on this.
I tend to use Google a lot for my reference photos. However, over the years I’ve collected a lot of photos from social media, photographers or old projects I’ve worked on. So always keep an eye out for reference material you never really know what it might come in handy. Every few years I do delete most of my reference library and start over again, to keep things fresh. Staring at the same images over and over again doesn’t help you to improve/develop your artistic eye.
Future of the Material Production
I think we’re going towards a fully automated process, one-click texture solution, however at this moment it’s not possible. This is probably what we’ll see more in 8-10 years? For the current generation we’ll see a mixture of the two techniques on which we’ll continue to iterate to progress towards a faster and easier workflow/setup. The reason for this, time=money; content creation in games costs a lot of money; game-art becomes more complex which takes more time. However with these texturing solutions we try to keep the asset creation timespan low and still push the visual fidelity and the rapidly increasing sizes of our game worlds. And don’t forget with 4k gaming becoming a standard we have to look at creating even more detailed assets.
This generation we haven’t seen that many photo scanned materials in games except for Star Wars Battlefront and The Vanishing of Ethan Carter, of which both have a wide variety of materials. The advantage of photo scanning is; it gives us quick, realistic and accurate materials but we do loose some artistic control. This is also where Megascans from Quixel comes into play. They are basically providing photo scanned materials so we can easily mix and adjust them in Photoshop. With procedural texturing e.g. Substance Designer we can tweak all the (individual) detail layers more easily. However the program can be a bit intimidating for beginners as it demands a different approach of creating textures. Both Substance and Quixel have one thing in common; easy exchange materials/presets with your team. But to get back to the question; I think both option will be popular it depends on the studio’s and project’s needs. With procedural textures we can easily tweak or create many variations, e.g. one node can create 10 variants of a brick wall, or we can batch process 100 assets with just one substance node. Photo scanned data is all unique and will be much harder to create variants of off, unless you capture 10 brick variants.