Specialisation MK2: PBR Textures

In an effort to down scope my Specialisation, the subject I am studying has changed. Rather than creating a small scene, I am now doing singular assets. The focus of the ‘new’ project is PBR textures and creating them. Specifically, I will be doing 2 assets as a minimum, those two being a Grenade and a Gas Helmet (Including a cowl). The grenade itself is a tutorial piece by ChamferZone, and should bring me right up to speed with the controls of substance and working examples of all research I have compiled, while also opening up some experimentation.

The Gas Helmet is taking multiple influences for each piece of its construction. The helmet is taking reference from German WWII helmets, the Gas mask itself is inspired by various designs that used hard plastic and screw-in filters. The cowl is more of a standard design, being a somewhat tight fit around a user.

So, How has the pipeline changed? not too much. In fact it is relatively unchanged, with the only alteration is some specifics going into the unwrapping and texturing itself. For the sake of focus, here is a simplified pipeline  –

1 – Gather Reference/Conceptual Material

As with really anything, the first step is to put together any reference or conceptual material needed for your creation.

2 – Modelling

1. Base Mesh

Using your reference/conceptual materials, create a starting mesh for the model. The idea being that you create a sort of silhouette for the final model. Depending on how you personally want to go, you can of course start out with a sculpt. However since I will be making Hard surface models, it is generally better to start out with a low boly base mesh.

2. High Poly

Whether by sculpting or other means, the high poly is now made from the base mesh for the purpose of baking various maps. Those being Normal, Curvature, Height and Ambient Occlusion. During this step, adding ‘floaters’ – smaller bits and pieces that will add smaller details when baked –  can greatly improve the appearance of the final product. These ‘floaters’ can be a miriad of things from stamped letters, numbers and symbols to screws  and some forms of damage.

3. Retopology

With the High poly prepared, it may be necessary to retopologize it should the mesh had changed too much to properly bake on to a pre-existing low poly. Or if a low poly doesn’t exist should you have begun with sculpting. Either way, you will need to lower the poly count as necessary to create a low poly on which the high poly will bake to. There are multiple ways to do this and quite a number of tools which suit a number of circumstances. In my case, the High poly shouldn’t change shape enough to warrant retopologizing, but if it were too, I would simply need to remove edge loops and some of the smaller details that may be attached in a single element.

4. Unwrapping

with the final low poly ready, it needs to be unwrapped. Making seams and arranging the UV ‘islands’ those seams create. Seams are generally best made in spots where it will be more difficult to spot when a texture is applied to a model. The ‘islands’ that will make up the UV map that unwrapping produces need to have as high a texel density as possible, which can be achieved by shrinking islands that make up pieces of the mesh that won’t be seen/seen easily to make room to increase the size of other islands in the UV map.

Texel density is even more so important in PBR texturing, as both the Specular/Gloss and the Metallic/Roughness pipelines can cause an edge artifact between dielectric materials (mostly materials that are not a raw metal) and bright metals. Metallic/Roughness pipelines cause a White artifact, while Specular/Gloss cause a less noticeable Black artifact.

This is expanded upon in the Practices and Practicalities sections

5. Exporting

The bridging step into the Texturing stage of this pipeline, both the High and Low poly models need to be exported. In this specific project, I am importing into Substance Painter to bake and create all texture maps. For the baking step to work nicely, the Low poly (and its separate elements) need to have a naming scheme, which will tell substance what needs to be baked to a certain element. the default scheme uses the suffixes ‘_low’ and ‘_high’ for respective low and high poly elements. For example, we have a mesh named ‘a’. the Low poly would be named ‘a_low’, and the high poly ‘a_high).

When exporting the named meshes, select the entirety of the low poly mesh and export it as a .fbx file. the High poly should be exported as an .obj.

3. Texturing

1.Importing and Baking

When you start creating any PBR texture sets, it is important to know where and how the textures will be used. Why? because some programs use different types of PBR textures, and they use different values that are interpreted differently. This means that there are 2 workflows within PBR texturing. Metalness/Roughness and Specular/Gloss. Dont fret too much, the effect

Importing the low poly into Substance Paint, we can open the texture baking window, import the high poly and configure various settings, such as the baking cage height and how to bake the ID map.

2. Texturing

And now, it is time to use tools within Substance painter to texture the model, be it for realism or a project specific style. Within this project, however, realism is the goal, so most of the preset materials will provide a nice starting point in comparison to stylised textures.

3. Exporting

With the textures finished up, It is time to export them for use in just about anything. Within Substance, there is not necessarily a critical importance over how texturing begins as either Metalness/Roughness or Specular/Gloss as when exporting all map information can be converted into several map types for differing targets, such as Unreal Engine 4 or Unity. It is still beneficial to begin texturing knowing where and how the textures will be used.

In my case, I intend to render very high quality images of the finished product using IRay rendering in Substance Painter itself. However, since there isn’t a turntable function, let alone one to render a sequence with, I am exporting textures for use in Unreal Engine 4.

And with that, your Model and PBR textures are ready to go!

but what could someone do to make the process smoother and increase the quality of the end result?

Practices & Practicalities

Its the smaller pieces that make the whole

Texel Density and edge artifacts

Where it is always important to pack UV maps in a way that makes every island as large as possible to get every bit of details at even some of the lower resolutions. However, there will always be specific islands that are prioritised, either due to  planned decals and information or something similar. With PBR texturing, there is a new issue that heavily influences how UV islands are scaled up for more detail and space. this issues is Edge artifacting.

PBR_Texel_Density
Source: Comprehensive PBR Guide – vol. 2

In both Gloss/Specular and Metalness/Roughness workflows, when a raw metal material and a Dielectric material (simply put non-raw metal) have a sharp border with each other, it leaves a White (metalness) or Black (gloss) edge artifact. The only real way to combat this is to increase the texel density or the resolution of the textures. Either way, More pixels makes the artifacting less noticeable, and almost any way this is achieved will work.

Mask Generators

In Substance Painter, you can add mask generators, or pre-assembled smart masks, to most fill layers that can mask a material or specific layer for various effects, such us dust and dirt or scratched paint. There are no real limits on what you can do with the presets, and you can create your own for just about anything, with camouflage patterns and discolouration coming to mind.

Fill Layers

Fill layers are the bread and butter when it comes to PBR, where they can be used to make almost anything that is a Dielectric material (Non raw metal). The fact they are easy to adjust, in every aspect of textured, makes these layers very easy to work with and tweak on the fly. When combined with mask generators, they can become the bread and butter of every texture.

Save your Materials!

While working on any assets, you will inevitably create a material that you will likely use again. Instead of having to remake it each time, Save it! you can save out folders as a material preset, allowing you to click and drag that material into any future projects. You can even go so far as to share your new material with co-workers and friends for their projects.

Sharing is Caring

Substance Share is a platform hosted by Allegorithmic where people can, and have, shared all sorts of materials, masks, mask generators and various kinds of tools and brushes. There are even some tiled textures that can generate animated lava.

 

References:

Failes, I. (2017). 18 Substance Painter tips for levelling up textures | 3D Artist – Animation, Models, Inspiration & Advice | 3DArtist Magazine3D Artist online. Retrieved 25 August 2017, from https://www.3dartistonline.com/news/2017/01/18-substance-painter-tips-for-levelling-up-your-textures/

Maximov, A. (2013). Art Is A Verb – “Physically Based Next-gen Rendering for Artists” by Andrew MaximovArtisaverb.info. Retrieved 25 August 2017, from http://www.artisaverb.info/PBR.html

McDermott, W. (2017). The Comprehensive PBR Guide by Allegorithmic – vol. 2 (5th ed.). Allegorithmic. Retrieved from https://www.allegorithmic.com/system/files/software/download/build/PBR_volume_02_rev05.pdf

Staff, C. (2014). 3 more Allegorithmic challenge finalists share their tipsCreative Bloq. Retrieved 25 August 2017, from http://www.creativebloq.com/character-design/3-more-allegorithmic-challenge-finalists-share-their-tips-121413702

Thacker, J. (2016). 10 power tips for Substance Painter and Substance DesignerGnomon — School of Visual Effects, Games & Animation. Retrieved 25 August 2017, from https://www.gnomon.edu/blog/10-power-tips-for-substance-painter-and-substance-designer

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s