Start learning with our library of video tutorials taught by experts. Get started
Viewers: in countries Watching now:
Creating Textures and Shaders in Maya with Eric Keller shows how to create textures and materials, and then apply them to models to render realistic surfaces. The course covers working with the mental ray shading nodes, including the mental images architectural node, subsurface scattering nodes, occlusion, and car paint shaders, as well as how to incorporate these nodes into shading networks using the Hypershade editor. It also explores using textures, Maya software nodes, normal maps, and displacement maps for adding detail to models. Exercise files accompany the course.
In this movie, I am going to show you how to hook up a normal map to a shader network applied to a surface in Maya. Now Maya's Transfer Map tool does a decent job of creating normal maps, but professionally speaking, I prefer to create my normal maps using a third-party program. I personally use ZBrush to sculpt the objects, create the texture maps, and generate the normal maps because I find it easier to use and the normal maps generated by ZBrush are superior to those that are created in Maya. Other artists will use programs such as Mudbox or xNormal or CrazyBump.
They are all good ways to create normal maps for your characters. So in this case, I've created a normal map and I'm going to apply it to the surface as a file texture. So let's start by taking a look at how we can preview the normal map in Maya. I am going to create a blinn texture for this character. So I am going to expand the old man in the outliner, make sure I have oldManShape selected, and I'll click on the Blinn material to assign a new blinn to the surface. In the Shading menu, I'm going to turn off Use default material so we can see the blinn shader on the surface correctly.
I've selected the surface and I am switching over to the blinn3 tab. In the Bump Mapping section of the blinn3 tab, I am going to click on the little checkerboard icon. This brings up the Create Render Node window. Under 2D Textures, I'll choose File, and this is going to pull up the bump2d attributes in the Attribute Editor. I need to make sure that Use As is set to Tangent Space Normals, so that it calculates a Tangent Space normal map correctly, and now I'll click on the icon to the right of Bump value.
The little arrow, this will switch me over to the File node. And to cook up the image, I'm going to click on the folder next to Image Name. Switch to the sourceimages directory of the current project. I am going to use the file called madHatter 1_NORMAL, and then the last thing I am going to do is set Filter Type to off. The filter adds a slight blur to the texture which sometimes can kind of destroy the detail in the normal map. Once I have that setup, I am going to go into the Perspective View and turn on the Texturing Bump button.
This is a little checkered sphere at the top of the Perspective View. Now, you can also press the 6 key on the keyboard. I am going to set the Renderer to High Quality Rendering, and now we can see the normal map, and all the details that I have sculpted into the surface of the skin. So I have got a lot of veins here and some pores and wrinkles and that kind of stuff. So now I want to hook this up to my skin shader network. So I am going to go Rendering Editors > Hypershade and I am going to middle-mouse button+drag the fast skin shader.
This is the misss_fast_skin_maya shader. I am going to rename this just skinShader. You can see under Bump Shader, I actually already have the normal map connected, but I will show you how to recreate the connection. So I am going to break the connection here just by right-clicking and go to Textures. I am going to pull down file4. Middle-mouse button+drag file4 down into the Work Area. I am going to Shift+Select both of these nodes here in the Work Area. Choose Graph Input And Output Connections.
So now we can see the graph of the shader is also normal map. I am going to expand the Work Area. Then what I need to do is select the skinShader, so I can see its attributes in the Attribute Editor and I will just middle-mouse button+drag the Bump node on top of the Bump channel here, and this will hook up the normal map. So now I will create a render, and I'll see how this looks. Oh! Yes, I need to apply the shader to the surface.
Still have the blinn shader attached to the surface of the old man, so I want to select the oldManShape, and then the Hypershade, right-click over skinShader and choose Assign Material To Selection and now that has been assigned. Now let's create a render and see how it looks. There we go. You can see some of the detail here in the lips, and some wrinkles on the skin, and some pore textures as well as on the some of the veins here, as well as the detail on the ears. So why would you choose to use a normal map over a bump map? One, they have their advantages and disadvantages. You could use a bump map to create the same kind of detail and the advantage of the bump map is that you can easily paint them in a program such as Photoshop, because it just uses dark and light values, and it's very easy to sort of figure out as you're painting the texture how light values will create little bumps like pimples, and that kind of stuff in the skin, and dark values can create things like pores and wrinkles and that kind of stuff.
But a normal map tends to be a little bit more accurate because a normal map actually uses a vector to change the normal on the surface in order to create the surface detail. So it uses a red, green, and blue value as opposed to a simple grayscale value. So for instance, if I select the normal map here in the Work Area of the Hypershade, right-click, and choose Test Texture. this will open up the normal map in the Render View and you can see what the normal map looks like. So you see how it is using color values.
Red, green, and blue color values to alter the surface. This is not something that you could easily paint by hand in Photoshop because it is very difficult to figure out how these red, green, and blue values are going to accurately deform the surface. But normal maps do tend to render faster, their bumps are little bit more accurate, and the reason that I use them is I tend to sculpt the detail directly in ZBrush on the surface of the object, because ZBrush can handle objects that are millions and millions of polygons much more than Maya can.
Then I just basically use their normal map conversion method to convert the sculpted high-frequency detail into a normal map that I can then use in my lower resolution object in Maya. It's kind of a personal preference thing. You might want to experiment using normal maps, and bump maps, and see which one you prefer, but that's the basic idea of how to hook up a normal map to a surface in Maya.
There are currently no FAQs about Creating Textures and Shaders in Maya.
Access exercise files from a button right under the course name.
Search within course videos and transcripts, and jump right to the results.
Remove icons showing you already watched videos if you want to start over.
Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.
Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.