Making Of 'Joker - Undead Version'
This Joker model was actually in my head for a long time before I was able to create it. For about one year I didn't have the time for any personal projects, but this year I took ten days' breaks and happily started work on my vision of the Joker! Right from the beginning my goal was to create a slightly different look for Batman's enemy, the Joker, and I chose Glenn Fabry's "Die Laughing" artwork as the main source of inspiration for my own interpretation of the character.
Before I start modelling (and before I get my side views, front views and blueprints, etc.) I try to figure out how and where I can apply the materials in my artwork. When I'm sure, I start collecting references, as you can see from Fig.01, covering most of the areas of the model that I eventually want to texture. (Fig.01)
Base Mesh & Mapping
The base mesh was modelled and mapped in 3ds Max. When I start any new personal project, I always try to create proper mesh flow and mapping right from the beginning - it's easier and quicker in the later stages of work. In Fig.02 I have tried to mark in red some of the modelling mistakes which caused problems later on. The next problem I came across and figured out (when I decided to use my high poly model in the final render), was the UV layout. With the UV laid out, the textures were very small for each part of model - even 4096 resolution textures were hard to work with! For a better UV layout I had to separate the head, body, legs and arms, and I decided there that that would be enough mapping! When modelling, it's necessary to keep good topology. In my case, I had problems with the head where, in modelling stage, I lost details on the hair and mouth parts. It's also crucial to keep your mesh in quads, to avoid any problems. If more than four edges are connected to one vertex, it's a problem! (Fig.02)
ZBrush Modelling Tips
I used the Move and Clay brushes in ZBrush for the basic shapes. The Clay brush has nice organic surface and it's my favourite tool! For the veins I used the Standard brush with alpha and Lazy Mouse on step five. For small wrinkles, threads in the vest and similar details, I used the Pinch brush with alpha (Fig.3a - b). The Inflat brush was also used here in lots of places, for example on the folds in the trousers, on the hair, and on the wrinkles too. For skin pores and details, I found it good to use the Spray brush with a noise alpha.
Posing, Exporting and Normal Map Exporting
I used Transpose, Move and Rotate modes in ZBrush - it was quick and easy in the Joker's case! For the final render I exported a fourth object level (about 900K polys) to an OBJ file. To export the normal map I used the default setup "default_tangent_space" with the Seam overpaint and Sharpen parameters. The final normal map was 4096, and with a bump map combination it was adequate. (Fig.04)
Here you can see the setup of the layers used. I mostly used Overlay or Multiply blending modes. For the purpose of this Making Of I used the xNormal programme to bake Ambient Occlusion, but you can use ZBrush-generated displacement maps with high contrast. (Fig.05a)
Here are the default diffuse textures from ZBrush (Fig.05a - b): examples of where details were added in Photoshop (Fig.05a); Ambient Occlusion from xNormal (Fig.05b - top right); final diffuse texture (Fig.05b - bottom left), e) final ZBrush Normal map on third subdivision level (Fig.05b - second from left, bottom row) (the Joker mesh has four levels, but I baked it on the third because, from my point of view, it has more depth); example of the normal map detailed in Photoshop and heavily used parts from the diffuse map (Fig.05b - third from left, bottom row) (I used the NVIDIA Normal Map Filter for this and blended them with Overlay on the original ZBrush normal map; and the brush setup used for the threads of the vest (Fig.05b - bottom right).
ZBrush Texturing Pipeline
(Fig.05c) I had two options here, the first of which was the Projection Master, and the second was direct surface painting and then baking it to a texture. I'm going to describe the second way, as this method was better for me:
1. Switch on MRGB, switch off Zadd and Zsub and setup the brush
2. Turn the texture off
3. Choose a white (or another) colour and press Fill Object
4. Choose Brush and Alpha
5. If there's a need for a larger texture than 1024x1024, create the resolution you want and then press New
6. In the Texture menu press Col > Tex, and voila! - you have a diffuse texture baked from the surface materials! (Thanks Maxko!)
For the Joker's skin I used the Brazil 1.2 skin shader - it's very simple and looks superb! I'd like to share a few points for the raytrace material which I used on the trousers; using 3ds Max 8 there was a problem, as I couldn't use a normal map in a Bump Map slot in the raytrace material, so I used bump only. For the final tuning of all maps in shaders, I used the sliders in the texture Output options. This was easier than going back to Photoshop and levelling. And for rendering, it went smoothly without any problems! (Fig.06)
Rendering and Lighting
The lighting setup used in the scene has been described in Fig.07. The lights were default Spots with Shadows turned on, with slight colour differences, 2048 Shadow Maps, and a Bias value of 0, 01. For rendering I used the 3ds Max default renderer, because I'm not so familiar with third party renderers and, after all, Scanline is really fast! You can see a few white boxes here; these were for the reflections on the latex trousers, and for extreme highlighted speculars on the jaw and on the spit. The special material setup for this has been described in Fig.07. (Fig.07)
Final Render and Post-Production
(Fig.08) I decided here that describing all of the compositing process would take too long, and I figured it would be better if you could see it for yourself. I'm giving you the ability to open the final PSD directly and see how it works! Download here!
In the end, the ideal resolution of the image was 2800 x 3805 pixels, and I chose this because it's the resolution of an A4 page at high resolution.
I hope to see you again in a future Making Of! Thanks!
Vit "Diablo" Budin