Part 4: Textures and Shading
With the models in place, and the lighting setup at an advanced stage, I can move on to finalizing the texturing and shading. As the lighting is already in place, I can now see how the colors I'm choosing for the surfaces will appear in the lit scene.
As shading and lighting are so closely linked, it's easy to get lost in endless tweaking of lighting values or shader parameters. I like to lock down the lighting as much as possible to give me a stable base to work with when editing shader parameters.
Similarly, it can be useful to view the lighting on even grayscale surfaces, so that it's easy to keep track of the coloring coming from the lighting uninfluenced by texture colors. This can be done by creating a new render layer with a material override of a mid-gray material.
My main intention for this scene is to have a vibrant room with a fairly wide color range that suggests a youthful, fun environment. It's important that the colors in the room work together and are not too jarring against one another. I'm going for a warm, inviting look rather than something epic and dramatic, so the color choice should reflect that. I'm aiming to match the color choices to the art direction of the rest of the scene, to get the shapes, lighting and the colors all working together to tell the story of the room.
Something that works well for me is to try not to push the saturation too far on any particular color, so that it allows for some color from the lighting to still come through. I find that this helps to bring some unity to the room.
Similarly, I always avoid making any colors overly bright or dark, keeping generally to the middle ranges. This is to ensure that the lighting has somewhere to go when it comes to shading a surface. If you make a texture too close to white or back, light or shadow coming from your scene lighting can't have much effect on it and that can lead to washed out or overly dark areas.
One trick I use in this project to quickly add color to the room is to make a large texture page of color swatches that could be used for any colored plastics or paper in the scene. This helps me keep to a nice controlled range of colors.
I made two shaders: one for glossy plastic and one for matte plastic, and used the same texture page for both. These materials were then assigned to objects around the scene and by moving the UVs of objects around different swatches I could block in colors and experiment with different combinations really quickly.
For this scene, many of the texture maps are clean and simple colors, but I've tried to offset by giving some of the textures a hand-painted look, like the wood, painted surfaces, labels and drawings. I want to add some character to the scene with the textures, and things like the invented board game boxes and kids' artwork on the walls are a good way of putting in some personality (Fig.17).
Usually I quickly paint a base color pass and then overlay some grain and detail from photographs to bring back a little realism.
For this scene (Fig.18), I use the mia_material_x_passes shader for pretty much every surface. This is a very versatile shader that is good at portraying a number of surfaces, so it's a really good base to work form. I'm using mia_material_x_passes over mia_material_x because I want to render out my final image in separate passes later on.
My approach to shading is to try to use contrast in the way the surfaces shade to catch the eye. For example, a mistake I see in a lot of scenes is that every object is either shaded very shiny and reflective, or very flat/matte, meaning that the eye isn't really drawn to any one particularly nice instance of shading. I find that having noticeably different shading on a few surfaces is far more effective when it comes to creating an interesting environment.
Personally, I like to find one or two areas where the shading can be really eye-catching – such as glass, metals or water – and exaggerate those a bit. I usually try to look at real life examples of how a particular surface responds to light as a starting point, and use a bit of artistic license to exaggerate or downplay certain surfaces until I feel that the overall scene shading looks good.
For example, in my scene, the plastic ball in the foreground is more reflective than any of the other glossy plastics are. I've done this based on its position in the scene and the feeling that some interesting shading was needed in that area.
Also, the wooden floor in the scene was originally far more reflective, based on how that kind of surface would appear in real life, but I decide to really tone down the reflection on the floor, to get more contrast with the ball. Having the floor with an almost mirror-like reflection is a bit too distracting in what is already a busy scene.
It's worth noting that almost all the surfaces in my scene have some reflection present in the shading, though the more matte surfaces have a low value and usually a very diffuse reflection. As I'm using fairly clean color textures for many objects in the scene, I've found that having a little reflection can help to break up the flat colors a bit.
Before rendering the final frame, I decide to add some geometry outside the windows to give a bit of depth to the scene. I also add some planes textured with an out-of-focus photo of a park to create a background image.
I render the image at 4096 x 2214 with a nice high quality Final Gather and Anti-aliasing setting. For Final Gather I use an Accuracy of 1000 and Point Density of 2 with 2 diffuse bounces.
I like to try to and push my Maya render as close to final quality as I can, but it's always useful to have separate render passes for elements such as the direct and indirect light, reflection and refraction as this allows for a certain amount of flexibility in post-production. I always render out my image in 32-bit formats in order to have an image that holds up better to adjustments and color correction in post-processing. For this image I've also rendered out a separate Ambient Occlusion pass to use in my final composition (Fig.19).
For this scene, my post-processing work is pretty minimal, and simply consists of a bit of color correction, multiplying the AO pass at a low opacity, and adding a bit of glow and bloom to the bright areas.