Welcome back!
It’s time to finish the creation of the textures for our project, after having started doing so last week. Now that we have the base texture – the colour map, exactly -, it’s finally time to make the rest of them. And for that, we’ll be using the last program in our pipeline: xNormal and Photoshop. Let’s get to it!
A week ago, we created the diffuse map for our model. Having done so, we still have to generate the rest of the textures. The displacement map, bump, ambient occlusion, roughness, glossiness, highlight glossiness… It’s all happening today. But before we begin, what do we need them for? I’ve divided the answer into two main reasons…
1/ GENERATING MAPS THAT TRANSFER HIGH POLY DETAIL INTO LOW POLY MESHES
Some of the textures will translate the information contained in the high poly version of our model into the low poly mesh. This has been the reason behind why we are doing this series of blog entries in the first place: to have low poly scenes with the quality of their higher poly relatives. To create these types of maps, we’ll rely on a program called xNormal. What this handy piece of software does – and actually, it does for free – is to compare two different models and search for the differences between them. I’ll leave the link at the bottom of the post, in case you don’t have it already. Now, let’s take a look at how to use it!
Once the program has opened you’ll notice that there are many tabs within xNormal. Nothing daunting, plus they are not just there to confuse you: they indicate the order in which you should move through them. First, the ‘high definition meshes’ lets us load the high poly model, which will be used to get the fine detail. After that, let’s head over to the ‘low definition meshes’ and select the low poly version. It might be interesting at this point to select ‘use average normals’ inside this tab, since if we are working with very triangulated meshes the result of not clicking this option will become very triangulated as well.
Once we’ve dealt with the models, it’s time to select in the next tab which maps we need to create. The maps we strictly need are the normal and the ambient occlusion ones, but there are many other options in case you ever need them. We can save them in whichever format we want, but it’s a good practice to select a 16 or 32 bit format for the normals.
2/ CREATING MAPS THAT CONTAIN VISUAL INFORMATION
The next set of maps we’ll be creating are the ones that tell the render engine how to deal with the light that hits the object. That is the case for the glossiness, the highlight glossiness, the roughness and the bump. We’ll use Photoshop to make them, always relying on the original diffuse texture and a couple of others that can be created in xNormal. Let’s take a look at the final images of the maps to understand how they were created:
So how do we create them? They all come from the base diffuse map, altered in photoshop following certain criteria. First of all, they are all greyscale maps, containing values that range from black and white. Let’s see what they are.
Ambient occlusion: this map is basically black and white, where the areas that have some occlusion – ie, the parts that are closer to each other and might project shadows among them or be darker because of the geometry – are darker. This texture can be created in xNormal.
Glossiness: the information contained in this map tells the render engine how strong the glossiness is across the surface. It’s basically a black and white image where the lighter values equal to ‘shinier’ results, and the darker are non-specular areas. You can manually play with this map in photoshop and in your render engine, and see how it looks. I’ll leave a link to an online tutorial on that subject, but it basically comes down to you working with your textures and being comfortable with the results. Have a go!
Highlight glossiness: this map, very much like the previous one, focuses on the more reflective parts in order to create a more realistic result. The creation process is very much like the glossiness texture, making it darker overall with little touches of white on the shinier parts.
Roughness: a texture that tells the render engine how blurry the glossiness has to be. Yet again, this texture relies heavily on the artist. It basically creates micro irregularities, which exist in every object, modifying the specularity of a surface. Basically, try to adjust the black and white values so they match the following principle: lighter where the surface is smoother, and darker where it’s rougher.
Bump: finally, the good old bump map! It can be created by desaturating the diffuse value of the map, then inverting it, and later adjusting the levels so there is more contrast throughout the image. There are also several plugins inside photoshop to do just that, and you can find more instructions here – but really, it’s not that difficult!
So finally, we have them all! We’ve created all of the textures we needed for our project, how cool is that? In the next entry, we’ll be trying the textures in a render engine and we’ll see how it goes. Hopefully, after all of the work we’ve done, it’ll look cool. But before we say see you next week, let’s take a look at the whole set of photographs that we’ve taken:
Cool, aren’t they? Well, that will be all for this week, get ready for the next entry and tell your computers they are about to do some rendering. See you soon!
Cheers!
————————————————————————–
xNormal main website and download