Making Of 'Lost Trinity'
Hello!Â In this tutorial I'm going to show you my process on how I created my latest render, "Lost Trinity" using:
- 3dsmax8 with Brazil R/S
- Zbrush2 with Zmapper
- Richard Rosenman's Depth of Field Generator Pro
- 3D Total Textures
The very first step I took was finding a ton of reference and imagery to be used as inspiration during the entire creation process.Â From the beginning I knew I wanted to tackle a cave... then I thought of something that would be cool to stumble across while exploring a cave... a 40's-era atomic bomb.
The next important step was finding the right composition and mood.Â Laying this out now saves tons of time later by focusing on what's going to be seen by the camera.Â A sketch can do, but for this piece I used a simple 3D scene.
I created the concept in 3dsmax by starting with a GeoSphere of 40 iterations with back-face culling off and placing a camera with a very wide angle inside.Â I then converted the geosphere into an editable poly and began using paint deformation to rough out the basic shapes of the cave.Â At this stage I'm constantly trying different camera angles as I model.
Once the modeling is done, I threw in some lighting to aid in the composition and mood. Also during this stage I try different lighting techniques that could carry over into the final render such as using global illumination or faking the bounce light manually. Lately I have been trying to simulate bounce light as much as I can using area lights, ambient lights, and negative lights.Â To help in this process, I try to imagine everything in the world as a reflector of light and color based upon the intensity of light touching the objects.Â This train of thought mixed with light-linking aids in a less realistic and more painterly render in the end depending on how much you push the radiosity principle.Â In this case, for the primary lighting, I used one directional light for the sun and two omni lights set to ambient only with an adjusted far attenuation for the bounce light.Â Here's an image of those lights better isolated:
Modelling the Cave
The very first technique I tried for the render-ready cave was to re-use the geometry from the concept render.Â This ended up not working at all because of the wide lens used.Â Had I used this wide lens for the final render, a ton of distortion would have happened to any foreground object causing undesirable stretching.
I began re-creating the composition using very simple objects such as distorted spheres, planes, and renderable splines.
The next step was deciding how I was going to chunk up the cave so I can sculpt the highest level of detail in Zbrush and output the highest resolution textures and normal maps.Â Also, I had to keep in mind the size of the chunks so I could maintain texel density throughout the entire scene.Â Treating the chunking-up process similar to that of a character, I followed discrete crevices and roots to hide my geometry seams. Below is an image color coded, showing how I chunked the cave up.
Then, using these objects as 3D blueprints, I created proper topology on top using 'snap to faces' and splines.Â Once I had my spline cage drawn, I converted them to editable polys, combined them all and then merged the vertices with a weld threshold of .001.
After I finished this I discovered there are several scripts out there for 3dsmax that emulate Maya's create polygon tool which shaves off a few steps and some flipped normal problems.
For some of the surfaces such as the roots on the ceiling and the foreground elements I used Power Booleans. This amazing addition to max allowed me to combine the primitive objects together and output a relatively clean quad mesh. After using Power Booleans, I applied a MutiRes modifier to simplify the shape followed by a turbosmooth to get the final base mesh.
Once all of my cave elements were modeled it was time for UV'ing.Â I used Pelt mapping for everything which was incredibly quick and gave me exactly the layout I needed for each chunk due their organic nature.
Below is an image of the base models ready for Zbrush and texturing:
ZBrushing the Cave
My concept of using Zbrush on the cave stemmed from wanting to create the most geometrically detailed rock/dirt terrain as possible. I played around with the option of using old fashioned 2d painted displacement which would have worked just as well. Also, because I was using Brazil 1 for rendering, micropolygon displacements were not available but normal maps were. By using Zbrush I was able to extract highly accurate normal maps from my hi-res meshes using the free Zbrush plugin, Zmapper. I also gained instant feedback, the ability to switch between sculpting and painting on the fly, and overall speed boost. Well, the real reason is because Zbrush is so fun to use.
Before bringing all chunks of the cave into Zbrush, I added a turbosmooth modifer to each chunk with an iteration of 1. The reason for this is to help keep the original form and preserve the seams better after my Zbrush work
However there were other steps I took to help in form preservation in Zbrush before sculpting. For each of the imported OBJs, I first creased the edges immediately after importing the OBJ and going into edit mode. (Tool>Geometry>Crease). This preserves the mesh border before subdividing further.
After dividing the chunks once or twice I began the initial sculpting. I played off the technique of getting as much as you possibly can out of each subdivision level before dividing again. My technique was slightly different because I had already done the blocking out in max so diving into major surface sculpting was not necessary, and I instead focused on the surface details in the 5-8 subdivision range.
At this stage I used only the basic edit tools such as std, inflat, layer and smooth with varying curves. After I was happy for each chunk, I then began a popular technique of "sculpting with my texture." First, I subdivided the mesh as high as it can go. I then imported my texture maps into Zbrush and immediately flipped the texture horizontally and rotate 90 under the Texture menu. This is needed because of 3dsmax's coordinate system. With the texture looking correct on the mesh I pulled a mask from the texture (Tool>Masking>Int). Below is an example of the untouched OBJ going through the steps.
Next, I modified the geometry, experimenting with the deformation tools (Tool>Deformation). There was no exact science to get the right look but I used the size, inflate and smooth deformers the most. I also inverted the mask and played with negative values in the deformers as well. Here's a Zbrush render with some of the final chunks done:
Once I was happy with my detailed chunks, I created a new texture with a size of 2048 or 4096 depending on the scale of the object, with a color of 50% grey. Then it was onto Zmapper. In Zmapper, I loaded the 3dsmax's setting for best quality tangent space, and adjusted the scan distance max range an average 40% above the default. After generating the normal map, Zmapper kicks you back to the main Zbrush window with what looks like a screwed up transfer. It's actually 100% ok and will look correct once you save out the texture (normal map) from zbrush and apply the map in 3dsmax. Finally, I exported out subdivision 3-4 for each chunk out of Zbrush and replaced the base models in 3dsmax with higher poly versions. Here's an image of the chunks back into 3dsmax, color coded. You can see the vines in the scene which were created using 3dsmax's hair plug-in on renderable splines with some noise. They would later be rendered separately with some grass in a pass along with their shadows.
Texturing and Materials for the Cave
My texturing process was split up in two stages. The first stage was constructing the base color texture. Then I used that base in Zbrush to aid in my normal map creation.
For creating my base textures I used the awesome 3D Total Textures. Specifically for the textures in the cave, Vol . 1 and Vol . 12 were used. I used basic Photoshop techniques to blend and adjust the textures to get a consistent base for all chunks. Below is an example of the texture breakdown for the "hole" chunk:
I ended up using slight variations of the base texture for each chunk, painting and adjusting the texture where the roots are located. I also extracted specular maps from the final bases by simply de-saturating and adjusting the levels.
Back in 3dsmax, I made a generic dirt/rock material that I would instance for each chunk. Below is a test render of the material and its settings:
Creating the Bomb
The bomb started out as a simple sphere and then I used basic polygonal modeling techniques such as extruding, insetting, beveling, renderable splines and turbosmooth to finish it. Once again pelt mapping was used for each element which worked out perfect. Below is a breakdown of the creation of the bomb.
Shading the bomb was a little more involved than the cave and required several mixed Brazil Advanced Materials with glossy reflections, mostly using Falloff. My goal was to create a surface that still had some shine to it, but had a layer of dust/dirt along with a substantial amount of rust. To aid in reflections, I used an HDR panoramic I photographed from a probe and compiled using HDRshop. Below you can see the material network and a sphere with the material applied, along with the textures used.
Also here's an image showing the shiny/reflective material of the bomb using the Brazil Advanced Material.
Lighting and Rendering
My goal for lighting and rendering was to create a painterly image with depth and atmosphere in a sfumato flavor. I began lighting by using my concept piece as reference. First, I had to place the direct light source. In this case, the sun is the direct light source, but most of the illumination from the scene is going to be caused by the sun's light bouncing off the sand/rock resulting in soft diffuse shadows. My solution for tackling this was using area lights, faking the bounce.
Before lighting I decided that for the final composition I was going to use a primary beauty pass along with other passes including diffuse, z-depth, light rays, ambient occlusion, vegetation, and several custom masks to isolate and color correct sections such as the bomb in Photoshop. Also, by saving my renders off in a floating point format such as openEXR I would be able to re-expose and pull details that might get blown out or too dark. By using passes and floating point images, I can spend less time re-rendering and more time tweaking my image in Photoshop.
Below is a screen grab of the viewport with the lights in place followed by a top view of the scene with a summary of all the lights used and their core settings.
Below is a rendering of the light setup shown with a simple grey diffuse material (no normal maps) applied to all the geometry.
Here's an ambient occlusion pass using the occlusion mental ray shader with a max distance set of 4 so the whole cave wouldn't be in darkness and would really capture those contact shadows (rendered using mental ray).
For every pass other than Ambient Occlusion, I rendered using Brazil. Here's what my settings were for most of the passes:
Here's an image of the passes used for creating the final composition.
And finally, after some final touches such as painted glow, some dodge and burning, and Richard Rosenman's Depth of Field Generator Pro (awesome bokeh photoshop plugin) for the foreground defocus, the piece was done! Thank you so much for looking over my process and hopefully you found this useful!
You can read feedback from Zbrush crews from this link http://126.96.36.199/zbc/showthread.php?t=037503