Making of "The Warrior"
Tanvir M. N. Islam shows how to create an armor-clad warrior using Reallusion's Character Creator and iClone, ready to auto-rig and animate...
I am a 3D character artist and I've always wished to be able to quickly turn my sculpted characters into animated characters; however the techniques required for modeling and painting a character are not the same as animating a 3D character: it takes a lot more effort to skin, rig and keyframe animation if using traditional methods. The iClone Animation Pipeline helps provide a base to start outright and avoid some common challenges that will get your character sculpts animating quickly.
iClone Character Creator provides a very nice 3D character prototyping system which uses sliders to define the character look, and those models with fully rigged face and body which are ready to animate from the go. Instead of doing everything from scratch, in this tutorial we will morph a base mesh in Reallusion's Character Creator (CC) using morph sliders to give it the look of a warrior character. Later, using this base mesh as a reference, we will create the armor for the character using ZBrush. Also, we will put more detail in the base mesh using ZBrush. The base mesh is already rigged so we won't have to go through a rigging process for the body, but we have to skin the armor which we will do in Maya. For the texturing we will use Substance Painter. Finally we bring everything into iClone. Here we will light, shade and animate using iClone's tools.
Fantasy characters have always fascinated me, so I plan to create and animate one for you and for myself. So, I collect some references of fantasy concepts and motif designs. The idea is to integrate these motif designs into the armor design
Prepping the base character in Character Creator
The full figure is separated with 2-part control set (Body and Head) with sub morph controls.
From the default character project, which is a female character, I use a combination of the male face and body controls to give it warrior proportions. I individually modify the waist and lower trunk from the feet, calves and thighs, to the forearms and upper arms.
These are the values changed for the controls to get to the desired look.
Finally I export this as an OBJ file to Maya. In Maya, based on the material ID, I reposition the UV set for baking use in ZBrush. This process will help us to make Polygroups in ZBrush based on UV tile and Hide meshes in ZBrush while baking individual parts.
Now I Quadrangulate using the following setting to make the mesh more sculptable in ZBrush.
Detailing the body
After importing the OBJ file into ZBrush, I sculpt all the necessary details using different brushes like Clay Buildup to give more form to the body. This is where we start adding those details which add realism to the character, such as veins, scratches, and pores in the skin.
Using ZBrush's surface noise function, start with the higher noise scale and lower strength. Each time I apply the surface noise to the mesh,I lower the noise scale and raise the noise strength. I also start with a lower sub-division and increase it while I apply the surface noise each time. This may inflate the model each time so in some places we can use the Morph brush and mask the area.
We can add these final details to the top of his existing form. For the pores you can use the alphas that are provided in the ZBrush alpha palette; these worked pretty well for this character. For the scratches I like to use the dam_Standard brush. Use this with a small radius and intensity, and with some patience you can achieve great results.
Smooth brushes play an important role for creating texture and details, including blending the brushstrokes. For example, the Smoothpeaks brush can smooth a stroke's relief details keeping the indent detail intact. Also try to vary Z intensity while using it.
The whole body was detailed using this process. Preview of the body in ZBrush.
Sculpting the armor and accessories
There are quite a few awesome techniques to create things like hard surface accessories (the armor), which aren't possible or are time consuming without ZBrush. I will try to explain few of them below.
For one technique we need a base, which we can extract from the body. As the armor will be placed on it and will be warped in a way, we are going to use the body which we created in Character Creator. First we need to duplicate the SubTool. Mask the area to extract the mesh with Ctrl+W to assign a Polygroup. Now we need to smooth the jaggy line of the Polygroup border. For this I'm going to use a smooth groups brush from lightbox's smooth brush collection. Draw around the jaggy Polygroup border. Hide other Polygroups. From the tools menu > geometry rollout > Modify Topology section, press delete hidden, but before applying this remove all the subdivision levels or freeze the subdivision levels. Now press ZRemesher with its default setting. Choose the half preset under ZRemesher and press it several times to get to the polycount you think is okay. Adjust it according to your needs.
Extrude with ZModeler. Unwrap using UV Master. Now we have something with better topology and UV. We are going to use surface noise just to extract detail from the custom image.
For the stitches I use the basic Stitch brush.
For the lion head I create a flat circular shape from a Dynamesh128 Sphere. I then use an alpha to quickly produce the head. I try to achieve a certain look using the Move, Clay Buildup, Dam_standard and Standard brushes, with the help of masking in the process. When I am happy with the basic shape, I use Dam_standard to refine it.
All the armor is created using these techniques. See the detailed armor breakdown below.
Sculpting shield and sword
The base model for the shield and sword are built using Maya.
I add additional details in ZBrush. Custom images are used for the surface noise to create the pattern detail. For the stitches I use the basic Stitch brush, with the lion-head reused from the armor.
Texture painting the figure
For texturing the figure, textures from iClone are reused. After exporting the mesh from Character Creator it also exports textures which I bring back to ZBrush as polypaint. Further details like scratches, skin details, veins and bruises are added in ZBrush.
Texture painting the armor
For texturing the armor, Substance Painter is used. To prepare the mesh for Substance Painter, we need to do three important things.
1. Export low-res and high-res mesh as OBJ. This will help us to bake all the auxiliary maps in Substance Painter for texture painting.
2. Assign materials for each parts like the shoulder pad, helmet and so on for the low-res mesh in Maya. Rename each material's shader group.
This will help to later define the texture Set List in Substance Painter.
3. Here is the ID map for each part. This will help to select the material for specific areas of the armor, defined as leather, rubber, metal and so on. This is just a multiple solid color map.
Now in Substance Painter we create a new project and define the low-res mesh as mesh. This will bring the mesh into Substance Painter. Drag and drop the ID map into the Texture Palette. Now that we have it in Substance Painter, drag and drop this to the ID channel under the TextureSet Setting Palette for use.
To bake all the auxiliary maps in Substance Painter we can use the Bake Textures option from the TextureSet Setting Palette.
This will give us the baking window. Here we will define the high-res mesh and baked textures resolution. We don't need to bake the ID map as we already have it. Now just press the bake textures button and we are ready to texture.
Using the ID map and Mask generators, I use pre-existing materials from Substance Painter to create the textures for the armor.
Finally all we have to do is just export the maps for use in iClone for rendering, which includes the final textured armor, shield and sword.
iClone normal map for additional detail
Now that we have baked all the maps from Substance Painter for the armor, we can bake the normal map from ZBrush for the body. But we won't stop here because Character Creator can also add detail to the figure with its amazing tools for normal maps. We will combine these with our pre-existing normal map from ZBrush.
Go to the Appearance Tab and press Activate Appearance Editor.
Now go to the Body and Head Surface Normal tab and modify according to your need for more detail. Also use a higher output size for a better result. When you are done Press Unload Appearance Editor. This will save the changes into the mesh.
If we export the OBJ now we will get the new normal maps along with the other maps.
All we have to do now is bring back both the normal maps in Photoshop and combine them. Put both of them in one document and duplicate one of them three times. For each of these layers activate one channel only like red, green and blue.
For the red and green channels choose the Overlay layer mode, and for the blue channel choose the Multiply layer mode. Now we can use this as a normal map for the figure. The final figure preview with the normal map from Character Creator is below.
Skinning the armor to the body rig
Now we have to export the Character Creator figure as an FBX to Maya, which has pre-made rigs so we don't have to rig it.
Also import the armor's low-res mesh into Maya.
The figure is already rigged and skinned so, for the quick start, we can copy the figure skin weight to the armor. We can modify the armor skinning to get a better result, but first we need to skin the armor to existing joints.
Copy the weight from the body to the armor.
Now we can modify the skinning according to our needs.
Finally we have to open the FBX file using iClone 3DXchange and send it to iClone.
In iClone we can assign all the textures. For diffuse I use a Base color, the normal map as Bump and a metallic map as specular. For the reflection map I use an HDRI map. I also use two lights; one as key and another one as rim along with ambient occlusion.
Animating using iClone
Animating using iClone is the most fun part of this tutorial. I concentrate on 2 important parts of the iClone for the animation: Motion Puppet and timeline.
Using pre-existing preset and modify sliders, I can get my desired animation. For the camera animation I use timeline. Set the camera position at the 1st and last frame and we are done.
Thanks for following and I hope this is useful to your pipeline. Using iClone packages, we can build an animation pipeline which is faster for game or real-time animations. Simple movements like walking or running can be hard to achieve perfectly, but can be done easily with some simple slider changes, along with other hardcore animations techniques for motion capture and keyframe animation. There's no need to go through tedious rigging stuff; just bind your custom-made clothing to the body and you are done.