BACK TO TEACHING HOMEPAGE

BACK TO COURSE HOMEPAGE

   
     

MAA 4435: Advanced 3d Modeling and Texturing

The Purpose of this course is to introduce advance concepts for modeling and rendering through the combination of Maya, Photoshop and Zbrush. Focusing on various pipelines, this course covers concepts such as displacement mapping, normal mapping, Zspheres and their skinning processes, and 2.5 illustration.

 

 
     
JUMP TO A SPECIFIC WEEK:

 

Week 5: Displacement Mapping, creating Color Maps from Displacement Maps

Displacement maps are going to differ from bump maps based on their ability to create self-shadowing and extend the form past the silhouette and into the surrounding alpha of the render. The are able to do this becuase they are not just a shading illusion like bump maps are, but physically create new polygons at render time. Because of this though, there are several other factors that come in to play to make sure that these extra polys are handled correctly.


Creating Displacement Maps in Zbrush4:
Creating Displacement Maps in Zbrush 4 can now be done at the same time that maps are created for Normals, Polypaint Texture, AO, and Cavity using the Multi Map Exporter.
Once the Multi Map Exporter Plugin is installed from the Download Center <----link, you can then access it under the Zplugin Palette. The options are intuitve from there!

Creating Displacement Maps in Zbrush 3.2 and 3.5R3:

GENERATING THE MAP IN ZBRUSH------

-Since we are calculating the difference between the HIGH and LOW poly models, we will need to roll down our Geometry level.
-In Tool Palette's Geometry Subpalette, set your SDiv level to level 1.
-Obviously, you'll need UVs on your model first, so make sure those are established.
-Then we need to establish the size of our Map. Go to Tool-UV Map and click on one of the presets (in this case, 2048)

-Open up the Tool-Displacement Map sub-palette
-Choose Adaptive, BUT NOT SmoothUV, set your DPsubPix to 2 (if your map is 2048, 1 if 1024, 4 if 4096... you get the idea)
-Hit Create Displacement Map.


-Again, within a short period of time, the map is created.


EXPORTING THE MAP TO MAYA USING GoZ FILE FOR EXPORT------


If GoZ is installed, you can use the GoZ Icon in the Maya Shelf to send your selected objects over to Zbrush Automatically.


Then in Zbrush, you can use GoZ to send the mesh back to Maya



GoZ Video Tutorial:

 

EXPORTING THE MAP TO MAYA USING .MA FILE FOR EXPORT------

-Now, if you export your Tool as a Maya file(.ma), the Displacement map (along with any other created maps that are stored in their palettes (texture, normal too) will get hooked up for you automatically.
-If you export a Maya file, you need to make sure that you have Mental Ray loaded in Maya before importing, otherwise it will not establish the file links correctly
-Doing this method will automatically hit "3" for you, creating a subdiv proxy.
-By Using an .ma file, all of the approxmiation and scaling elements should be linked up for you, but to understand how to control them, you can read on....


EXPORTING THE MAP TO MAYA USING .OBJ FILE FOR EXPORT------

-If you are reimporting as an OBJ or if you you are hooking your Displacements up to a Maya file on your own, you will need to establish a couple of things, using Mental Ray, to assure quality renders.
-First, Hit "Clone Disp" to send this map to the alpha palette, where it can be exported. Then Export it as a Tiff

When Importing, make sure to open the Options Box. Under File Type, Switch from Best Guess to .OBJ.
Then, scroll down in the window till you get to the File Specific Options. UNCHECK "Create Multiple Objects".
If left on, this will screw with your vertex order and could mess up our rendering or future animation needs!!!!!!



First thing out, Hit "3" with your mesh selected to turn it into a subdiv proxy. Once you have it "smoothed", you can add in the displacement map.


 

MANUALLY HOOKING UP DISPLACEMENT IN MAYA------

Time to add the displacement map. Assign a material to your model (I used a Blinn), and click on the Go To Output connections button, seen below:

This will take you to the Shading Group node. Here you will want to add a Displacement Map. Clicky on the Checker Boxy!

Find your file:

Make sure you are using Mental Ray, and set your Quality Presets to Production.

Hit Render Current Frame!... and OMG, what the Hell happened?????

Don't Panic! What you see based off of the fact that by default, there are several things wrong with Maya's interpretation of Displacement Maps from Zbrush. First of all, we haven't set a scale to determine the relative amount that our Displacement map needs to displace the surface (remember from the theory reading above???). Zbrush creates Alphas with Black as 0 (no change to the surface) and white being 1 (severe change to the surface). Maya does something wholly different. It says that 50% Gray is no change, that Black is a severe downward change, and that white is a severe upward change.

We are going to have to adjust our settings to reference this. Instead of our Alpha Gain being a value of 1 and the Offset being a value of 0, (the default values) we are going to have to make the Gain twice the negative of the Offset Value. See Diagram Below:


As you see in this image, I have gone into the color balance section of my Displacement Map, and Set the Gain at 0.2 and the Offset to -0.1. These values were generated using a guess and check method. Alternately, try using a height field node to narrow in on what you need. The only rule here is that the Gain should always be twice a negative version of the offset. Since this is constant, try using the following espression to generate the changes for you. In the alpha offset field, type:

=-file(#)alphagain/2
If your texture is named file3 you would type =-file3alphagain/2, or if it is file14, it would be =-file14.... and so on.

One of the things you might notice in the render above is that the displacement might still look a little angular around the edges. This is becuase Maya prefers to render displacement off of a subdivisional surface, and not off a polygon mesh. First, we must turn off Maya's regular Feature Displacment however. Select your mesh. Go to the Attribute Editor and click on the Shape Node's Tab. Under Displacement, uncheck Feature Displacement!!!!

Good News Everybody! We can get out mesh to behave as a Subdivision surface with Mental Ray Surface Approximations. We will use just a Displacement Approximation (this is different from previous generations of Maya and Zbrush where we also used a Subdiv Approxiamation) to generate a smooth surface with which to displace from. In Maya, go to Window--Rendering Editors--Mental Ray--Approximation Editor, as seen below:

With the mesh selected, click create for a Displacement Approximation. This will assign the approximation to the mesh.

For Displacement Approximation, set the Approx method to Spatial which will allow us to set a range of levels with which it can subidivide the model at render time to make it look smoother. I set my range to be no less than 2 and no more than 3, but these values can be adjusted for speed or for quality. I next set my length to 0.100. This value determines the length of the smallest triangle when the model is tesselated. Too small, and your render will take too long. Too big, and you will suffer from poor quality. Next I check the box for View Dependent meaning what we don't see, won't do anything (saving render time).

And here's my render now, slightly smoother, AND notice how we can see a little more detail in a few of the features (I'm looking at the head crest) and also notice how my render time has DROPPED!!!!! to 0:06 seconds from 0:14 seconds when we started.

Now, just light your scene, add your other maps, and you are good!

Advanced lighting 03 - studio lighting from CG Bootcamp on Vimeo.

 


Creating a Color Map from a Displacement Map, "Crop and Fills":

Color Maps for a Character:

Baking that Material to Texture (video) ---- click below:

Crop and Fills for the Vespa Demo:

Using the process covered above in the tombstone demo and floundress demo, I created these "Crop and fills" from my Vespa Displacement map, which was assembled from the separate subtool-part maps in Photoshop. Here are 4 of the 9 crop and fills I exported:


From there, I was able to put together my 2048x2048 maps (the assembled displacement map is lower right, which was used to create the Crop and fills above).



and here are the final rendered images of my set of props (seat, wheels, ground, license plate, plate cover, lights/reflectors, grips):

 


Creating Skin Shaders:

 


SPEC MAPPING:

Specular maps are the maps you use to define a surface's shininess and highlight colour.
The higher the value of a pixel (from black to white), the shinier the surface will appear. Therefore, surfaces such as dry stone or cotton fabric would tend to have a very dark specular map, while surfaces like polished chrome or plastic would tend to have lighter specular maps.
The colour of a pixel is also used, to calculate the resulting colour of the surface. A very saturated specular map will have a very different visual effect than a grey specular map. If you need a more "neutral" highlight on a surface, your specular map should use the inverse of the diffuse map's colour. Using the same colour on the specular as on the diffuse will result in a more saturated highlight when viewed in the game.
You can use contrasts in specular to make a surface appear more visually interesting - for example, this door has a very dark specular for the wood while the metal parts are much lighter, which will make the metal stand out more as a shinier surface when light hits it. This sort of contrast can help make surfaces in the game appear more realistic too.

 

 


Using Sub-Surface Scattering (SSS) Shaders:





SubSurface Scattering Video Tutorial:

Video from Linh Nguyen:

How to create a Zbrush Eyeball. Click on the Image Below:



Hair using Paint Effects: The eyebrows:

To create the eyebrows, I usually use Maya's Eyebrow PaintEffects brush which you can find by going to Window-General Editors-Visor-Hair. Here I have it selected. It will draw right onto any selected surface, so I trace out a few PFX strokes onto the brow line. I can also modify the shader settings in the Attribute editor to control the color and transparency of the eyebrow.

Note: there is also an Eyelash brush (second icon on the second row as seen in the image below) and while I won't be covering it here, the process is essentially identical.

Now the problem with PFX is two fold. 1-They don't render in Mental Ray. 2-They won't move with the skin underneath because there is no easy way to bind them. To remedy this we will convert them to Polygons... Modify-Convert-PFX to Polygons as seen below:

Once they are polys, we can perform a Mesh-Combine operation. The trick then becomes (since now they will render), "how do we get them to move with the head when they face blenshapes into a brows-up position for instance? To do this we will use a wrap deformer:

Problem is, wrap deformers are very expensive to use computationally because they require the whole model to deform a whole other model. To speed up this process, We can use the Paint Memebership tool:

Choose wrap1Set as the set memebership to paint and first remove all the verts. Then I go back in a second pass and add just the verts surrounding the eyebrow geo.

Now, thats all you have to do to get the eyebrows to move when the blendshapes are targeted.


Short Hair using Fur: Skull and Beard:

For this character who has a recently shaved head and facial stubble, a fur simulation is the best option.

Because my UVs for the head look like the below image (notice there are seams right through where the hair fits), I am going to have some problems painting the fur. The biggest problem with using Fur is the UV seams. Note my current UV layout. I have marked three arrows (UP1, UP2, UP3) and each point up in Tangent Space (aka in the UV texture editor). Maya's fur properties are baked to texure maps which mean that they are painted with regards to this tangent space setup.

BUT, look at how these three vectors are applied into 3d space!!! all of a sudden, they are each going in different directions. This means when I try to paint directional properties, the hair will be near impossible to get growing at a consistent angle.

To remedy this, I am going to apply the fur simulation to a separate mesh that I will generate from extracting out the skull cap area of the head.
As soon as the geo is extracted I delete the history, assign a black surface shader, and set the render stats all to off so this geo does not render.
Don't forget to also turn off the mental ray render stats!!!!

Here are the UVs of just this area. Still problematic, but since this geo won't render, I can reset them up just for fur.

With a little bit of cutting and reprojection, I can set the UVs up like this, so not only do they have more area to use, but they also are oriented to the best possible ability in Tangent Space.
Note how the "sideburns" come down to a similar angle as the beard area comes up to.

Now I can attach fur this area:

I alter my U and V samples to get a better estimation of where the fur is growing from:

And here are my properties for the fur itself. I have turned down the global scale to make it shorter, and upped the density to make it thicker.
I have also set my map width and height to 1024sq.

Now, one would think that to apply a texture map to the main areas: Baldness, Length, etc... one could just apply them maps as seen here in Details-Baldness-Maps-Add Item.
The problem is, Maya has a long standing bug which doesn't allow you to directly add maps. You have to "trick" it into beleiving there is already a map there.

To do this, Go to Fur-Paint Fur Attributes Tool, then choose the appropriate category. Paint a little bit then exit and you will see that there is now a spot for you to input a map in Details-Baldness-Maps.

I can now paint my own maps for baldness and length after I first "pretend paint" them with the paint fur attributes tool.

I do use this tool however to paint direction, and If you UVs are set up with few seams and correctly oriented tangency across seams, you should have no problem "combing" your fur from here.
To finalize the creation of your fur, you must BAKE it. To do this, select the fur, and hit the bake button. Then immediately save out your scene. On scene-save, your maps will be generated.

Make sure to take this maps with you in your project directory!!!!

 


Fur Simulation-Painting Attributes:

Painting a fur simulation can also be an effective way to surface a character. In the case of this monkey-creature below, 350,000 hairs were used for the final render, which is VERY COST EFFECTIVE.

However, if you have the rendering time, and also the working time to paint a simulation, it can be done rather effectively, pretty quickly. The first step is to analyze 4 things:

1. Where is the hair growing from/where is the character going to be bald?
2. How long is the hair? Will it vary in lenghts across the character?
3. What color will the hair be at both the root and the tip?
4. Which direction will it be growing in?

For question number one, you must create a black and white baldness map (see image below, left). White indicates where fur will grow, and black indicates where the character will be bald. Note as well that in the images below, there is a bald spot on the monkey's belly which was removed later on.
For the second question, you must create a black and white length map (see image below, right). The brighter the value, the higher the growth of fur.

For question 3, color can be determined by mapping the Base Color and Tip color sections as seen in the image below. For a character with more constant fur color, these colors can be solid. It should also be noted that for every option, a special attribute section is present below in the Details section of the Fur Attribute Editor where you can reload your maps, and tweak your varriables more closely.

For question 4, the Paint Fur Attributes tool can be utilized (Rendering-->Fur-->Paint Fur Attributes). Here you can choose direction which will paint two maps for you, a Polar map and an Inclination map. These are generated as you use the brush to groom the fur, and are used in combination at render time to determine growth direction.

WHEN YOU HAVE ADDED ALL OF YOUR ATTRIBUTE MAPS, YOU MUST HIT THE BAKE BUTTON (SEEN ABOVE IN THE LEFT PANEL). THIS WILL BAKE ALL OF YOUR LOADED TEXTURES INTO RENDERABLE FUR ATTRIBUTE MAPS!

WHEN RENDERING, SPECIAL CONSIDERATION MUST BE TAKEN TO ASSURE THAT THE FUR CASTS SHADOWS (if you are using Maya Software):

To set up a light for fur self-shading and detailed shadow maps for the Maya Software renderer (Mental Ray will do this automatically as of Maya 2009):

  1. Select the light you want to set up.
  2. In the light’s Attribute Editor (Ctrl+a), go to the mental ray section and in the Shadow Map Attributes subsection, turn on Shadow Map and click the Take Settings from Maya button. (This does not take the shadow map bias details from the above Shadows section.)
  3. In the Render Settings window, go to the mental ray tab and select ProductionRapidFur from the Quality Presets drop-down list.

For more info about setting up Fur for rendering,
please click on the either of the images below:

Creating Hair Using Maya Fur Simulations---

 


Longer Hair using Maya Dynamic Hair:

For this character I needed longer hair, and that meant Maya Dynamic Hair.

OVERVIEW:

To create Maya Dynamic hair (which does not have to be used dynamically as seen in this example) you first need to create guide curves from which the hair can be rooted and "grown". Once the curves are generated, we can apply a hair system to them. This hair system has "global" properties which control everything for all the hair, and also has "local" override properties that can be controlled on a per-follicle basis. Every curve gets it's own follicle when you assign a hair system. Lastly, to make this system renderable, we assign a special paint effects stroke (this type IS renderable in Mental Ray) which has texture and material properties. The final result is the creation of what you see below (hardware view) and above (rendered).

Here are the properties that we are going to need to use to create the Hair. The Hair menu can be found in the Dynamics Menu set.
Once we create our curves, we will use the Create Hair option to assign a hair system.
To make the curves dynamic... we'll you should be able to guess which option that is.
Then finally to make the hair renderable we will use Assign Paint Effects Brush to Hair.

So first we obviously need to create some curves. I do this by selecting the head and making the surface live using the large magnet on the status line.
Using the EP Curve tool (ciricled below left), I can then draw right on the head the direction of the hair. For any guide curve needs that do not stick to the head, I simply turn off "live" mode by again clicking hte magnet draw freely in an ortho view, then use the CVs to move/rotate into 3d space. Here is a look at the curves I have created. Note, its not 1 curve for EVERY hair on the head, each curve will have a clump of hairs it controls, so maybe a 1-50 ratio or so? We can set those preferences later.

I created about 200 curves for this head.

IMPORTANT: I always draw from the root to the tip. This insures that I don't have to reverse the curve layer when I apply the hair. If I draw from tip to root, my hair will grow backwards.

Once I have these curves created, I put them in a group and HIDE the group. Then I remove one curve from that group and put it in an unhid new group. The reason I do this is that editing hair can be cumbersome when you are trying to figure out which curve controls which group of PFX hairs. So I hide what I don't want to see. I then select the 1 visible curve and Assign a new hair system (one you have created your first system you will see them show up in the listing seen below and can choose those to automatically reapply the same properties)

You should never really have more than maybe 2 or 3 hair systems per character, and for most characters could probably use just one. For this character I have two types of hair, thick and thin which I can choose to use. I used the thick hair for the bun and top of head (as I wanted it to have very little gaps) and I used the thin hair for any little "trailers" or "wisps" like the sideburns or very back near the neck. You may also want to use two systems if you have something like a ponytail where the hair on the top of the head is static and the ponytail is dynamic.

***Hair systems control properties that you want identical on large sections of the hair***

For any other small changes, you can use the per-follicle overrides which we will look at in a minute. Once you have assigned your hair system to the initial curve, you will now see two curves. One will be the original dark blue, the new one will be a light blue. The new one is your dynamic curve which is attached to the folicle. Select this new curve and Assign the PFX:

That should give you something like this (seen below). You can edit the CVs of the curve to change to the clump of hair and make sure the roots dip into the head, and the rest of the hair never dips back in while contouring the way you want.

Repeat this process for many more curves, and you will get a setup that looks like this:

A-These are your original curves that I have manually put into a labeled group. Keep them for use later in case you want to duplicate and make more hair clumps.

B-These are your hair systems and associated PFX nodes (for instance, thick_hair is the actual dynamic node for the hair, thick_hair1 is the PFX "material" node). These are the general properties of all the hair and are the master controllers.

C-These are your clumps of hair called Follicles. Each curve from column A has a duplicated curve that gets created automatically and gets grouped under the corresponding follicle. The follicles have individual override settings for the hair system, and their curves will disply dynamic properties if played back.

Below is an image showing properties of the Thick Hair system used in this demo. Graphs and sliders control dynamic elements, shading, and draw qualities. These should be experiemented with in your own scene via render test to find the values that work for you as the needs will change from character to character and lighting setup to lighting setup. Thusly, I cannot recommend specific values to use, and need to recommend personal experimentation instead.

Note that each of these values can be overridden in the Follicle. Here is a look at the settings you can control on a per-follicle level.

Using this process should give you a manageble, lifelike, full head of hair.


Here is another offside demo on how to create paint effects hair. Click on the Image Below:

And if you want to know more about the dynamic properties of hair, including how to use this system to drive your geometry, you can use this video of mine here:


Creating Hair using Textured Planes (also great for games):

check out this video from Linh Nguyen:

For this character I decided to use textured hair planes. The advantage to this is 2 fold: I have direct texture control over the look of the hair, and also that this type of hair works in a real-time enviornment.

Here is what the geometry looks like for this head of hair. It is made of 300 or so overlapping NURBS planes (but Polyplanes can also be used of course). I have the freedom to sculpt and model them however I want. However, It is important to note that they are ALL ORIENTED THE SAME WAY as seen in the second image where I have applied a ramp texture to the material. Notice that red is consistently the tip side of the texture plane, and blue is consistently the root side.

I created these planes by generating EP curves, exactly the same as in the demo above on long hair using Maya Dynamic Hair. Except this time, instead of creating a hair system and attaching it to the curve, I am creating geometry from the curve using Surfaces-Surfaces-Loft. Select the two curves and choose this option to output NURBS geo by default. Remember when you do this though that your EP curves need the same number of spans and need to be drawn out the same way (root to tip) to make sure the UVs orient correctly too.

If you care to output to polygons, you can do so by swapping these options. For curly or wavy hair, you will need a higher count. For straight hair, set the count as low as you can go which will make just a single face plane.

From here we can now make the texture for the hair (assuming that you have now created all of the geometry). Go to Window-Paint Effects:

Click on the "double brush" icon shaped like a "V" to open the Visor. Choose the hair type you desire:

We want to set the canvas size under Canvas-new (I choose 1024 square here), and VERY IMPORTANTLY you should edit your background color to roughly match the color of your hair. Leaving it white usually makes the hair look "fringed" as the white blends with the alpha creating a 1 pixel "Stroke" of white around each hair. UGLY.

Click the Pain Effect Brush Settings Icon shown below to open the Settings window. To straighten the hair, you will want to edit the number of Multi Streaks, Segments, and Length Min and Max shown in the two images below. You can also edit the color under shading. Draw out on your canvas to test, you can always crop these out to separate images later.

Now the cool part about this process is that when I create a color map, it also SIMULTANEOUSLY creates a matching alpha channel for transparency!!!! Just save your texture as a targa when you are done.

Now lets move on to hooking up the texture. For simplicity's sake, I am going to do this to a single plane in a test scene. I create a new Blinn material and drive the outColor and outTransparency from the texture into the Color and Transparency nodes of the blinn. When I hit "6" to enter textured mode, it gives me the following look in the viewport. Looks great, right???

Well when I render, there are two apparent problems. 1 is the blown out specularity since the Blinn is completely shinny the surface looks laminated in plastic. 2 is the fact that the shadow takes on the shape of the square plane, not the shape of the hair.

So, I head to photshop where I make a specular map out of the alpha and color maps combined. I hue shift it blue to give the sheen off the hair a slight bluish tint. I put black in the "alpha" area and then load this into Maya where I apply it into the Specular Color channel of the Blinn. And now.... NO laminated look. Hooray! But, one problem still remains, the square shadow....

To fix this, I need to create a Mental Ray shadow shader. See... mental ray is kinda dumb. It needs your help to figure out what this shadow is really supposed to be doing.
Go to the Blinn's shading group node by click the "spaceship exiting the stargate" button (just to the left of Presets). Open up the Mental Ray section and under custom shaders hit the checkerbox for Shadow Shader. Here, create a Mib_shadow_trans (as seen in part 2 of the image below). In the Transparency section of the Shadow Shader, you can input the Alpha from your color map (outalpha to Transparency).

But then you render and this happens..... Um... Dear Mental Ray... WTF???
Ok, so MR is, for some god-forsaken reason, BACKWARDS from Maya when it comes to alpha detection. What this means is that where there is black, Mental Ray sees white.

Seriously, WTF....

So what we need is a Reverse node between the Color texture and the Shadow Shader:

Take the Color node and MMB drag it onto the Reverse node. Connect OutAlpha to Inputx/y/z as seen below. Then hook the reverse into the transparency of the shadow shader, and finally that shadow shader into the shading group of the Blinn (which you should have already).

And finally, your hair will render with proper transparency!


Here is a another demo on how to create Polygon hair. Click on the Image Below:

Creating Hair, the Epic Studios Way with Maya's Visor:

 

 

 

 


Creating Render Passes:

To create the look needed for the final render, we can't rely on the regular render alone, we'll need to create additional render layers and passes to composite in Photoshop and/or After Effects. Later on, we'll render out whole image sequences for each of these passes to composite. This way we'll have full control over the look of the scene.

Here are the Render Layers that I am going to create.

-The Master Beauty layer gets created by default, and we will assign a Depth Pass to it as well.
-The Alpha layer will be a cut out "on/off" mask to be used in compositing.
-The Reflections layer will be a super shiny blinn and the enviornment map to gain pure reflections.
-The Surface layer will be just the color map applied to a surface shader.
-The Wireframe layer (optional and not discussed here) will create a wireframe overlay.


Purpose:
When working with rendering out files, up until this point you are probably used to just hitting the button in the render window or doing a batch render, and accepting whatever image(s) come out. While this can sometimes produce sufficient results, it is by no means the most efficient way to control your scene output. By seperating your Scene into Passes (different than Render Layers which are an older form of this techinique), you can achieve specific tweaks without having to re-render your whole scene. For instance, the standard render is refered to as a Beauty pass, but it, itself is actually comprised of several other parts that get "composited" at render time. See the diagram below:

What happens is that diffuse (Which is "direct irradiance" plus "material color") gets mixed with specular highlights. These become the color pass, that when mixed with cast shadows, equals the beauty pass that we are used to seeing. While this is normally where we pick up the process, we can take these individual elements, separate them out, and tweak them individually in post (which is what we will do in a few momments). However, we can add even more information into this flow chart to create an even more dynamic render. Below is an image representing a few more of the effects that we can add into our render to increase quality:


The great part of Render Passes is that they aren't actually seperate renders. Since they are all part of the final image, we don't have to render out multiple times (as long as they are on the same layer, .... more on layers in a momment). These Passes are able to render out all at once because they are really just a part of Mental Ray's Frame Buffer System. Sometimes you will hear "Passes" and "Buffers" used interchangably as a result.

 

Creating the Depth Pass:

To create our first pass which will render depth, we first need to determine the depth in the scene from the camera to the object. You can do this by using a Distance Tool (Create-Measuring Tools-Distance Tool).
In the orthographic top view, place one locator near your camera and the other just behind the character's head. Below you see that our distance is 56.78328 units, which we will convienently round up to say 57 units.

Next, open up the render settings window and go to the passes tab:

Click on the icon seen circled below and create a Camera Depth Remmaped pass. This will create this type of pass to be usable in the scene. However, it is not yet assigned to the Master Beauty Layer, thus it will not render out.

To Associate the pass, make sure you have the Master Beauty Layer selected in the Render Layers Menu of the Channel Box and hit the down arrow seen here in the Render Settings window.

Next, we will double-click on the words "depthRemapped" as seen above to open the attribute editor. Here, plugin in the number you received from the distance tool (in this case "57") into the Far Clipping Plane and 100 into the Maximum buffer value.

When you batch render, you should get an image like this which we can use later as a mask for blurring the render based on distance to create camera focus.


 

Creating the Alpha Layer:

Select your head geometry (no backround or lighting elements) and assign it to a new render layer. Call this layer alpha.

Create a new Surface Shader, leave it all black, and assign it to the head while in this layer. This will create a shader override.


Render Layers are just like display layers in many ways. We can add objects to them, and turn them on and off. However, instead of being just visibilty selectors, they can have shader and render overrides. For example, imagine you had a scene with just a basketball, a light and a wood floor (court). In your master layer you could have a ball that looks like a ball, a light which is on and cast shadows, and a court that looks like wood, just like you see in image A:


In image B, we can make a new layer and provide a shader override (just in this layer) for the ball. This image demonstrates the equivalent of applying a white Surface Shader to the sphere, which previously might have been a Blinn with a texture attached. If we go back to the master layer and render, the image will still look like image A, but if we are in layer B at the time of render, then the ball will be all white.

In image C we see the effect of a render settings override. Here I could turn off cast shadows (by disabling it in the light, or in the render settings window... either way would work). Only when I am in this render layer will my objects render without shadows.

When we render now, we will get a straight up mask to use to isoate for compositing (more on that soon).

 


Creating the Ambient Occlusion Pass/Layer:

Select your head geometry (no backround or lighting elements) and assign it to a new render layer. Call this layer AO.


AO is meant to simulate where light bounces do not reach, darkening areas between objects. It calculates indirect illumination only, so as a result, we must include only the objects and not the lights when rendering this pass. There are two methods that can be used to Create an AO pass. While we can use the newer "pass system", I prefer to use the older "layer based system with shader overrides" as it creates an easier to control setup.

Lets make a new render layer as before and rename it AO. At the top of the attribute editor, under the Presets button, select Occlusion (as seen below left). This will create a new surface shader texture as a material overide, assigning it to all objects in the scene that are in that layer only (see below right).

Set the AO texture settings (in the Out Color channel of the Surface Shader) to the following settings:
If when you render it is too noisy, up the samples even further.
IF when you render it is too dark, turn down the Max Distance Value from here.

You can manually recreate this shader override network too:

This will give you an image that looks like this:

 


Creating the Reflections Layer:

Select your head geometry, lighting elements and background environment image and assign it to a new render layer. Call this layer Reflections.

Create a new Blinn material and assign it to your head in this layer creating a shader override.
Plug your Spec map into both the Color and Specular Color slots.
Turn the diffuse way down.
Hook up your normal/bump map


Now when you render, you should get an image that looks like this which we will blend to add some shine to the head later.


Creating the Surface Pass:

I like to create one final pass to show just the skin texture without any lighting that I can use to blend into for extra control. This one is easy to do.
Simply make a new render layer with just the head geo and call it "surface"
Create a new surface shader and hook up the color map to the out color slot.

That should spit you out a render which looks like this:

 


Compositing the images:

Ok, so once we've Batch rendered out all the images we can composite the together. Here I will be using Photoshop becuase we are just testing a single frame, but when you do your composite for the actual animation speech sync, you will need to use After Effects to control the whole sequence of images.

I start out making a backround and Vingette as seen here in the top and bottom layers (the Vingette layer is set to multiply down onto anything underneath).

If you want to add other background elements, you can do so using a quick mask from the Alpha layer we rendered out:

Ok, now we throw down the Master Beauty Render. This will show all our lighting and skin shader settings and all our texture together:

If your skin looks too translucent, you can dial it back with the Surface Layer, here applied at 40%:

Next, we screen the reflections layer on to add some shininess to the skin. Here it is as 43%:

Now's a big one, the Ambient Occlusion Image, which I multiply on at a full 100%:

If you created a Wireframe Layer .....

Rendering clean wireframes with the Mental Ray Contour Shader
Click on image below for tutorial:

You can now composite IT on as a multiply layer as well:

 

If you have a depth pass you can blur based on that, otherwise, you are now done with your composite test.

 

 

BACK TO TOP

JUMP TO A SPECIFIC WEEK: