#Gamedev #gameart tip: A great deal of things I see with massive textures in games can be achieved using a little shader know how, multiple UV channels, vertex paint and masks.
Artists tend towards baking in fine details and as a result need huge resolutions to get that information in the bake. However, fine details in normal maps usually turn to sludge when mip mapped.
Lets give an example:
Let's say you are making a puffy jacket. You want the puffs and folds of the model in your normal map. But onto that you want fine weave patterns.
How do we do that super efficiently?
Okay so bake the jacket as usual to uvmap channel 1.
Now, apply a second map channel. Unwrap the model again, this time cutting the jacket panels out like you would the fabric that made them.
Apply a fine check pattern and align map channel 2 uvs to the grain of the fabric.
Now in your game, create a shader that blends the two sets of maps together- the main textures with the fine weave. You can then set up a mask to paint out where you dont want the effect and multiply this over your weave textures.
The weave maps get a uv channel 2 input, which means you can now tile them differently to the main character textures. You can now adjust the second uv channel to correct the flow of the weave.
It also means you can
A: fade out the fine details when not close, avoiding any weird effects from the mip mapping.

B: make material variants like hex weave.

C: change the tiling for small screen mode on the switch.
For the fine details, normal maps are not usually required to create the illusion of fine weave. I find roughness maps and a little albedo is plenty to fool the eye. That means you can pack those maps efficiently.
You can use the second channel trick for grunge.

Picture an atlas sheet of stains, damage and spatter. Apply this to your model and link it to uv channel 2.

Now scale all your uvs to be in a clean, empty pixel of the stain map.
Select faces you want these decals on...
...apply planar maps to these and position them over the decals on the sheet.

Back in your game engine, make a shader that LERPs materials together. The alpha of the decal sheet masks the two together.

Voila. Stickers that effect normals, roughness, ao etc.
If you find yourself sculpting things like wood grain onto lots of elements in your game, maybe think about blending those on in the shader and sharing a single set of tiling grain textures.

Endless chipped stone edges? Yeah, bake out the edges as an alpha and blend on the chips
Most engines let you import two or more uv map channels. Normally channel 0 is used for textures and channel 1 for light maps, however if you are not baking light maps in your models, that channel is free for doing cool stuffs with.
Characters, for example, don't need light maps
Adding a few extra polys so you can cut out an area in the uv map to apply a decal or tile an effect is a huge memory saving. The tradeoff between big textures vs small textures and a few polys is huge.
Speaking of channels, the vertex paint channel is your friend. It is a super cheap way to store colors, masks and deformation effects.

Shader graphs usually have a vertex paint input. It will have four outputs, RGB and A. Think of each of those as a mask.
Or a mask and a color.
You could, for example, store your emissive map as a single black and white image, and multiply this by the vertex color RGB. This allows you to isolate and color various glowing parts on your model without storing a full rgb map for the emissive.
I often use one channel of my vertex paint as an ambient occlusion painter for props that use a trim sheet for their textures. Things like table legs benefit from AO where they join.
Another big tip is to use world space projection to apply grunge to your floor and wall textures, or to blend together a few small tiling maps.

This generates large areas of texture with no noticable tiling using smaller maps.
Fast and flexible, as you can switch grunge maps
Recently I used all of these effects together for a huge tree that took up large parts of a level.
The branches all need zbrush sculpting, but onto that I want fine bark, peeled back and then onto that chips, damage and grunge.

The whole level is textured with 3x 1024 sets
Aaaanyway, I hope this helps.

Feel free to throw some coffee change my way, my bag of ground coffee is getting rather low this week. X http://Www.Ko-fi.com/dellak 
You can follow @delaneykingrox.
Tip: mention @twtextapp on a Twitter thread with the keyword “unroll” to get a link to it.

Latest Threads Unrolled: