Andrii ‘Zelfit’ Mykhailov talked about the challenges he faced in game design and shared tips and tricks on recreating aged materials.
Introduction and Career
It took me some time to start a career in the game dev. My only regret is that I never got an Art education. Back at еру University I studied programming and got my Master’s degree in computer science. At the same time, I started doing some simple 3d freelance jobs and 3d renders for different stock sites like Shutterstock. In my free time, I was learning the current pipeline for game ready models. They were textured in Photoshop which caused me the most problems.
Things got better with Quixel DDo release, and I started doing game models as a freelance artist. Around 2014 I began using Substance Designer 4 and all Chivalry assets were textured in SD4. In 2015 I already had an acceptable portfolio and got my first office job. For the next two years, I was making models for Call of Duty at Ulysses Graphics outsource studio before moving to 4A and Metro.
Every prop is defined by its details. During my early days as an artist, I was struggling with textures a lot. I trained myself to look at the world around and see details which make textures real. The object feels lived in when it has details which you see in everyday life.
A simple exercise for you. On your daily commute to your job take a look at all doors you open. See how dirt and dust cover them, observe scratches around the lock and handle, black stains shoes at the bottom. It was just simple doors. Now imagine how much more stuff you have missed. Observe, think, take photos. Make yourself a small library of materials and weathering. Organize it as you want. You can have folders for metal, paint, plastic, wood and so on. I do a lot of photos of materials using just a phone. You’ll notice some cool stuff every day. Just a few examples of my photos.
Sometimes, when I see some vehicle with cool damages or weathering I do full photoset. Like this forklift, for example.
When I work on high poly for vehicle or prop I try to do the bare minimum to bake nice normal. I don’t model anything I can paint on a texture later. Different holes, rivets, panels, dents are usually painted on height channel in Painter.
But when I do small geometric details I have a habit to store them and reuse later. Knobs, bolts, buttons, lamps – all can be stored and separate files and reused once again later. Make a habit of salvaging your high polies for useful parts. This way you’ll have your own kitbash.
As for the mansion scene, I decided to use a traditional current-gen approach to environments. Items like stove or chair were made with own textures and rest were textured with tiles. For blending, I used vertex colors. Shader for marmoset uses black, red and green colors.
So, in general, I made these materials:
- Old concrete
- Wooden floor
- Dusty wooden floor
- Worn carpet
- Horizontal tiles for baseboards and torn edges of wallpapers
General scheme of the scene looks like this:
People were asking, how torn paper edges were made. It is just a plane attached to the edge of wallpapers. I made a horizontal tile for the torn paper so it can be reused, but of course, it does not match wallpaper texture perfectly. Seams are visible only from a close distance.
Working with Materials
I tend to use a lot of Substance and Quixel materials as initial materials and add needed details layers. I use default Painter materials plus a few materials and filters from Source and Share.
Also, as a long-time Quixel user, I converted some materials to use inside Painter. I like all the procedural mats, but sometimes I feel they lack some life, which scan based materials have. That is why I still use Quixel materials, and even sometimes I overlay some details I sampled from photos.
At the beginning of the project, I start with overall values as in traditional painting. Check tone, brightness, how it looks from different distances. I usually start working with albedo. If it is not bare metal this is usually a good time to study material closely and check all the subtle color variations. For example an abandoned helicopter. You can use some Levels in Photoshop to look for details of old paint. Also, this helps to see weathering details better.
Always try to organize your layer order same way as materials ordered in real life. So in this example it will be: clean metal -> primer -> base paint ->camo pattern paint.
Working this way it will be easier to use real-life logic to place some weathering details. If you scratch paint there will be primer color. If you scratch heavy enough you’ll damage two layers and show clean metal. If scratches are old enough metal will be covered in the oxide.
Don’t forget to look at your object from a distance. Sometimes artists get to carried away with details so from distance object may look too noisy.
Adding Age and Destruction Effects
When working with aged materials, it is important to at least basically understand all the factors which caused aging. In which conditions it was used, how often, who used it and so on.
When you answered all these questions you should investigate what do you have now to achieve all the needed details. For example, if the object spent a lot of time outdoors you may need some way to create dirty raindrops. For dusty environment you need some dust pattern, for heavy edge dirt, you need your generator ready and some dirt materials.
So you need to know your tools and always be prepared. I try to collect and purchase a lot of alphas and smart materials. If I don’t use them now at least I can study them later and add to my shelf.
For basic cracked paint, you can use ysPaintPeel from Substance Share.
Recreating the Old Chair
When I do old dust I rely heavily on generators. World space normal is your best friend here to place the dust from the top. Plus some AO and cavities. Then you add some paint mask and adjust results according to your taste. As for dust material itself I like to use BnW Spots on Base Color of fill layer and then colorize it, using Gradient filter and add sharpness. You can find a good example of this approach in default Smart Materials inside Painter. Just check Dust layer in ‘Steel Tank Painted’ smart material.
The fabric on the chair is a quite tricky one. I wanted to make velvet. Its surface is covered with soft tiny threads that can be bent in different directions with a slight touch. Which makes different zones react to light differently, according to threads orientation. The easiest way of faking this behavior in default shader is using some normal maps. I use two layers with normal maps here with two different tangent directions. I’ll show a free tutorial about this chair within the next few weeks.
Rendering is not my strong skill at this moment. I use intuition and just play with contrast and strong details. I don’t overdo lighting, usually, it is simply a few point studio light combined with some HDR reflections. But yes, at least some basics of studio lighting would help a lot.
I always say that you have to understand the strengths and weaknesses of your model. That way you’ll be able to place your light nicely and put focus only on needed parts.
And as with material references start collecting lighting examples. There are a lot of cool gun, car, aircraft channels on Instagram.