Modeling Viking assets for real-time viewing

Introduction

In this tutorial I will guide you through the process of creating a Viking shield inspired by the TV show Vikings. I will start off modeling a low-poly version of the shield in 3ds Max and import it into ZBrush for a high-poly sculpt. I will then use the high-poly mesh to bake down the normal maps for use on the lower-poly asset. I will briefly go through the modeling and sculpting stages as these processes are widely covered in other tutorials available on the internet.

The main focuses of this series will be introducing Substance Painter into your workflow and, rather than rendering out still images, I will show you how to use the new Marmoset Viewer tool to create an interactive portfolio piece. This is a very impressive new way to display your artwork to potential employers, giving them the ability to examine your asset interactively.

The wooden base

The wooden base of the shield is made in 3ds Max from a basic cylinder primitive with extra divisions on the top and bottom of the cylinder. These extra cuts are to aid with the divisions later on when the asset is imported in ZBrush and heavily divided, ensuring the polygons are evenly distributed. I delete the central segment which will hold the metal hand guards and bridge the resulting gap. This is a very simple object but the detail is added in ZBrush during the high-poly sculpt.

The surrounding leather ring

To create the surrounding ring geometry, I extrude the outer edges of the wooden cylinder we created in the last step and detached the new polygons. With this new asset and the outer edges selected, bridge them to close the gap. As this is going to be made of leather, the edges would be quite soft and rounded, so I chamfer the outer edges to soften them. To solidify this mesh I add a shell modifier and extrude all the polygons inwards to give the leather some thickness.

The metal hand guard

The metal hand guard is quite a spherical object, so I use snapping to create a sphere in the center of the shield and use the hemisphere options to cut the sphere in half so it sits flush with the wooden asset. Convert the sphere into an editable poly and delete the polygons facing the wood. Ring-select the outer edges and extrude them to create a lip that will have enough space for the nails that secure the hand guard to the wood. Also extrude the new lip’s edges backwards to give the lip some depth. Chamfer not only the edge of the lip but also the intersection between the sphere.

Modeling the wooden handle

The wooden handle consisted of two separate models that were welded together, I used a cylinder for the hand grip and a tapered box for the supports, the cylinder was tapered inwards at each end and slightly fattened in the middle to give it some form. I curved the top of the box so it blended smoothly into the cylinder. I also chamfered the edges as this would represent soft wood that has been battered and weathered from heavy use and the elements. I used the same technique for the inner hand guard as I did for the outer one, only it was an inward shape rather than outwards.

Leather strapping

The leather strap will add some more organic shapes to the asset and add some interesting highlights and shadows. It’s created using simple splines with the ‘Rendering > Enable in Viewport’ option ticked. I use Smooth and Bezier Curves to form the shape. The leather uses the rectangular shape with a length of 5 and a width of 1. The leather will be a very interesting surface as it will have a lot of highlights and matte patches to vary the reflecting light. The stitching will also give a nice touch to the diffuse and normal map textures, all this helps convince the viewer that this is a real working asset.

Leather ties and ring

I create a second leather strap to tie to the bottom wooden handle. I also model in some leather ties that wrap around the wooden handle, using a Tube primitive with the same dimensions as the spline leather. I deform the shape to give it some history and also tensions as if the leather straps are pulling tight on them. The ends of the leather straps loop back on themselves and rest on the surface, showing that the leather is stitched together and further enhancing the feeling that this asset is a handmade object. I use a small brass ring to hold the two straps together, which will also add some nice spot color and high specular values to the image, giving us a nice contrast to the surfaces.

Instancing nails with Array

I create the nails from a simple cylinder with low sides to give a pentagon shape, also chamfering the edge. The nail is quite a small asset but is used a lot on the shield, though as it’s small we don’t have to worry about making multiple variations of it. I will duplicate them across the shield for now to give us an idea of how it will look, but when we take this asset into ZBrush I will only take one nail, which saves wasting time sculpting multiple nails for little benefit. To duplicate the nail precisely in a circle, I place the first nail at the top of the shield in and move its pivot point to the center of the wooden element. Using the Array tool, I give the nail a duplication count of 20, change the incremental rotation on the Y axis to 20 and make sure ‘Instance’ is selected. If the Preview button is on you will see the nails duplicated around the shield.

TurboSmooth testing

As this asset will be going into ZBrush, I want to make sure it will smooth correctly. You could use plugins such as GoZ, but if you don’t have this available, there’s another good way to test your asset to see if it will divide as you expect once it’s in ZBrush. For each element that will be exported, add a TurboSmooth modifier and set its iterations to 2. If the elements retain their shape while being heavily tessellated, then the element will be divided perfectly in ZBrush. If for some reason the element does not maintain its shape, then try adding further cuts along the edges that aren’t working right. Delete the TurboSmooth modifier once the testing is finished.

Setting up the ZBrush file

As you can see, I have exported the shield and imported it into ZBrush. Note that only one nail has been imported. Before we begin sculpting, we have to set up the asset into a workable format. I want to be able to work on each element individually and show and hide certain elements, so I use the Split tool and select Group Split. This detaches all the elements and places them in the SubTool window. We can now use this window to hide and select the elements individually without breaking the model.

Wooden paneling

With all the SubTools hidden except the wooden element, I can start to sculpt the wooden panels and wood details. Before I begin sculpting, I create a Morph Target so we can revert sculpts back to the original mesh. I also work in layers so I’m not destroying my previous work. I use the Dam_Standard brush to cut grooves into the mesh to represent the separate paneling and use the Standard brush to carve out some larger wooden detailing, I keep it fairly rough at this stage just to find the right shapes and details.

Finer wooden details

I add the finer wooden details using alpha textures on a new layer. These textures can be created by yourself, or you can obtain some nice free ones from the official ZBrush website. Use the Standard brush but change the brush type to DragRect, which will allow us to click and drag the alpha texture onto the surface rather than the normal spray type of brush. Import the alpha texture using the BrushAlpha and make sure it is selected in the brush. You can now click and drag the alphas across the surface to add fine detail. This process can help your imagination and create more ideas to sculpt on the wood, so don’t be shy adding the alphas. Remember that we created a Morph Target so we can always revert or soften the new sculpts. All these details are on separate layers and can be faded up and down to suit.

Weathered wooden handle

The wooden handle will be very soft-edged and worn because of exposure to the elements and heavy physical use, so it is important not to have too much heavy detail in the wood as we did in the main panels that make up the shield.

Use a soft Standard brush to smooth out the surface and the Dam_Standard brush to gently carve long, thin wood grain patterns. On a separate layer you can add some smaller details using a noisy alpha brush but with a low intensity; if it’s too strong we can always reduce the layer’s strength to soften the detail. If you want to add some interest and history to the asset you can always add some damage to the handle to show that the shield is a well-battled instrument.

Metal hand guard

Using the same steps as for the wood, I use various layers to build up small scratches and chinks in the metal surface. The scratches should have a smaller falloff than for the wood, as a metal surface reacts differently to being scratched. I also used a Standard brush to carve out some chinks and harsh dents in the surface. You can also use the Move brush to re-shape the asset slightly, showing how it has buckled under pressure from heavy use. Re-shaping the spherical shape also creates more interesting highlights once textured. You can also add noise on a new layer using the Surface tab, where you can manipulate a line graph to get the desired result, which is good for rust and general deterioration of the metal.

Leather and stitching

The leather surface is sculpted using the same techniques as the wood and metal. I use a noise surface modifier and use the Morph Target to fade the details back to a smooth surface, showing general wear in areas that are exposed to being rubbed or worn down. This variation in the surface will also be reflected in the texturing, giving a nice contrast to the highlights. Add a few scratches across the surface and the thin edging. I also have a high-frequency noise surface to represent the inner detail of the leather, where it was cut to shape.

The stitches are created using a custom alpha texture (which I have provided) and a high level of deformation on a Standard brush. I try not to keep the stitching in a perfect line, as this is a handmade object that would not be as precise as one stitched by a machine in modern times.

Top Tip

This asset is exposed to the weather a lot and this should be represented in the surfaces, especially the wood as it is quicker to deteriorate than the metals. The asset is also used in battle so you would expect it to be damaged in areas; again these details should be present in your sculpt.

Exporting finished SubTools

Once you are happy with the finished high-resolution sculpt, it’s time to export the mesh so the normals can be baked in 3ds Max onto a lower-resolution mesh. Using the ZPlugin ‘SubTool Master’, which you will find in the ZPlugin menu, click Export. I make sure ‘Single Polygroup for each SubTool’ is selected, as this option exports each SubTool to an individual mesh rather than a large welded-together mesh. It makes it a lot easier to bake in 3ds Max using smaller individual assets. We also want to make sure the file format is an OBJ and click OK. ZBrush will then export the meshes ready for baking in 3ds Max.