Ivanna Liittschwager talked about the modular scene Old London Slums made at Gnomon, her first experience with UE4 and Substance Designer, and hand-sculpting.
Ivanna Liittschwager talked about the modular scene Old London Slums made at Gnomon, her first experience with Unreal Engine 4 and Substance Designer, and hand-sculpting.
Introduction
Hey guys! I’m Ivanna Liittschwager and I come from Monterey, California. I am a 3D Environment Artist for games living in Los Angeles. I’m currently studying at Gnomon School of Visual Effects, Games + Animation. I actually come from an illustration/concept art background. Before Gnomon, I was getting my Bachelors of Fine Arts in Animation at California College of the Arts in Oakland, California. I had absolutely no experience in 3D artwork, I was only a traditional artist at the time, but I had heard about Gnomon from expos and their tutorial videos that they produce.
Gnomon
After getting my BFA, I knew I was going to relocate to Los Angeles even if I didn’t have an industry job. So I moved here to Los Angeles by myself without knowing anyone or even knowing the city as I had never visited here before. I thought I would give Gnomon a try by taking a simple Intro to Maya class because I wasn’t sure if I would like working in 3D. It made me nervous because programs are hard to learn and I wasn’t sure if I would be any good at them.
I took the class and felt quite comfortable in the software we were using, so I ended up applying to the full-time 2-year program and getting in with my 2D portfolio.
I’ve finished 5 out of 8 terms at Gnomon, so I’ve been working in 3D for a little over a year. Gnomon is an awesome school if you are serious about getting into the film or game industry as a 3D artist. I feel as if the school is kind of like a bootcamp for artists because they throw a lot of intensive classes at you all at once and the quality of work you need to produce for these classes is set very high. However, it’s extremely rewarding coming out of a class with an awesome portfolio piece. What I like most about the school is the student body is supportive of each other and are always helpful if the critique is needed on their work.
Old London Slums
Start of the Scene
The way this started was that I knew I wanted to do an epic environment for my Environment for Games class with Nate Stephens and Texturing and Shading for Games class with Nick Reynolds. I had been looking forward to these classes since I started my first term at school, so I was really excited and prepared to dedicate all my time to it. I also wanted to do something different from what I had done before in my environment-work, which have more of a whimsical feeling. I wanted something moody, dark, and gothic.
I drew inspiration from Dark Souls and Bloodborne which are my favorite games of all time. But their style was way too dark for what I wanted, so I found a concept art piece from Mathieu Latour-Duhaime that was done for the newer Thief game. I love the atmosphere of the plague-infested city, the dark sewers and grimy streets of Thief.
I knew this project had to be modular, so a building would be perfect. I wasn’t sure how far I could get in this project because we only had 10 weeks to complete it. So I wanted to be safe and try to just do this smaller building scene.
During the early process of this piece, I managed to model, sculpt, and texture this original concept scene pretty quickly. I felt like there needed to be more. It looked strange without other buildings in it. It felt empty. It had no story. So with the modular pieces that I had already created for the smaller building scene, I built the rest of the city with just those pieces.
Modular Approach
Modularity is awesome. It was really my first time using a modular workflow and bringing the pieces into a game engine. For this project, I used Unreal Engine 4, which is a software solution I haven’t used before. The way UE4 likes to work is with grid snapping. Each piece of geometry snaps in increments of 1,5,10,50, etc. This makes building a scene modularly extremely fast and efficient. So building your modular pieces to line up on the grid is key. Otherwise, things won’t snap together perfectly, which can cause a lot of problems when it comes to lighting or tileable textures. Lighting will leak through places you don’t want them to and your tileable textures won’t tile correctly and can cause nasty seams that look terrible.
The wood beam is exactly 4 meters tall on the grid with the vertices snapped to the top and bottom. That allows you to duplicate and snap them together seamlessly with no overlap.
Here’s an example of the street curb. I have 3 basic stones built on the grid, I need them to run all the way down the street, so this is where grid snapping becomes handy because it takes me less than a minute to build the entire street curb down a couple of blocks. So if you keep to the grid, you can build all your assets and assemble an entire scene incredibly fast. That’s how I was able to take my modular pieces and build half a city in no time.
Once I had my pieces done and assembled, that’s when I started to go into each one and make them little more unique, so that the duplication of assets isn’t obvious. By doing so, I went ahead and started making more variations of textures, looking at my composition, and making some of the assets crooked or bent. There is a lot of vertical and horizontal shapes in this scene, so going back and turning them slightly allowed me to give more of an old worn village look where nothing appears perfectly straight.
Baking
For baking my assets, I used Marmoset Toolbag in case I just wanted the normal map and ambient occlusion. All of my assets in the scene are hand-sculpted in ZBrush and I wanted to preserve those sculpting details when using a tileable texture on them. So in Unreal Engine, I was able to use my original normal map with the sculpted details, but then also use a macro normal map for my tileable texture. Both are being used and blended together so that I could keep those nice sculpted details but also have the tileable texture normal map to give it an extra boost of detail, like in the wood fibers.
I also added a switch in the master material, so when I instance the material and plug in other maps for other assets, I could choose if I wanted that macro material or not. Sometimes it can make the asset look noisy.
For my hero or custom assets, I would just take the high-poly and the low-poly and bake them down in Substance Painter and start texturing right away. That way when I export out my textures, I only have one normal map to worry about rather than having two maps and having to control the intensity of the macro normal map with more nodes. I only use macro normal maps if that sculpted asset will have a tiling texture on it.
Materials
This was the first time I started using Substance Designer so it was a lot of trial and error, but I ended up getting the hang of it pretty quickly and really loved it! The way I approached the materials was gathering tons of reference first and thinking about what kind of shapes I wanted.
I wasn’t thinking about color or roughness at all, I just wanted to nail getting the shapes and get my normal map and height map looking good. If you can tell what kind of material it is from just looking at the height/normal map then you are good to go on the moving onto the roughness and color.
I first started with the large shapes, the stones. Designer is pretty good at having starting shapes for you, so I used the Arc Pavement and went from there. The shapes for this texture weren’t overly complicated, it was the surface detail that was harder to get what I wanted.
Still not overly complicated, just a lot of Slope Blurring with Perlin Noise to get random chippings to the stones so that they looked worn out. Taking a grunge map to the opacity blend nodes to break up the uniform chippings. It was hard for me to transition to a node based program because I was used to sculpting details by hand in ZBrush. So having to do it procedurally with grunge maps was a learning curve.
However, I could have just done this in ZBrush by taking the height map I created in Designer and projecting that onto a plane and sculpt what I wanted. But I didn’t do that because wanted to test my skills in Substance Designer.
Once I got the height/normal map looking the way I wanted, that’s when I moved onto adding my roughness and base color. For the color, I took mostly gradient maps and did some color picking on my reference images of cobblestone to get a realistic blend of colors in there. Then masking out the stones and doing gradient maps for the dirt underneath.
I used this exact same workflow for my other textures like the wood. Start with height and get those shapes in there, then worry about color last. It makes things a lot less confusing and a little more organized. I feel like you can get distracted by working on color too early and miss out on all those awesome height map details.
And lastly, in Unreal Engine, I took the cobblestone and gave it parallax occlusion instead of displacement. I feel as if the parallax occlusion works just as well as displacement, whereas sometimes displacement can be buggy. You can see what parallax occlusion is doing up close, almost like stair-stepping your texture based on the height map you plugged in. But head on, it looks as if the stones are coming out of the dirt.
Lighting
I found the lighting to be difficult only because there were so many possibilities for this scene. Since it’s so large, I wanted to make sure I kept the focus where I wanted people to look, which were the main shop buildings. I kept the main light as just one directional light and worked with that. For the most part, I start working with lighting when most of my scene has temporary textures on it and then finalize the lighting when everything is fully textured and modeled.
I took my scene and made everything black and white so that my textures wouldn’t influence my decision on lighting. I made the focal point very clear of where I wanted the viewer to look, which was the main middle building. I did use volumetric fog as well, so that helped me with directing the eye towards the focal point with godrays. This also gave me a good sense of what shapes my shadows were taking, so I played with those shapes to get some cool shadows on the main street.
That’s when I started to focus on the smaller lights. There are a ton of lanterns in this scene but that gave me an excuse to really play with moody lighting. I love working with complementary colors, and since the scene was going to be a greenish-blue, I wanted the lanterns to contrast that with a red-orange glow.
I made a simple particle system for the candle flame, for it to move slowly and flicker. That gave some nice non-uniform lighting in the scene. Having those lanterns dim then brighten up again with the flickering gave it more life.
After getting the main lights in there, I went in and added some additional lights to brighten up some of the darker areas that I wanted to have a little more pop.
Things Learned
The biggest thing I’ve learned from this project is to take advantage of modular pieces because you can achieve a lot with them. The faster you get your scene built and looking good, the more time you will then have to make it look unique and maybe even expand on that project. At the beginning of making this project, I had no idea that I was going to be able to build a large scene like this. Seeing where I started and where I ended up is still kind of a crazy reality.
Another big takeaway is that hand sculpting everything is the best way to go. It seems like a lot of work, but in my mind, it’s the most exciting part. You can give a lot of personality and history to an object just by spending a bit of time in the ZBrush pass. One more takeaway is having multiple tiling textures can save your life. You can make just one tiling texture and throw it on everything, and then from there, you can start making variations of that same texture to make things look more unique.