Plastic rendering in Arnold for Maya

Plastic toys – and more especially LEGO – represent a common subject for students and CG artists. Lately, I did like everyone and practiced rendering in MtoA on a Christmas themed scene. Here are a few aspects that could eventually improve beginner’s workflow and render.

Bringing variation

Grunge map setup

Using grunge maps to bring variation to your material is capital. That’s a common process that usually relies on softwares like Substance Painter/Designer. The idea is to map the texture to the specular roughness (and eventually weight) channel. Actually, this can be achieved inside maya’s hypershade without editing the texture in another software, even in Photoshop. That way, you will be able to tweak the values as much as you need.

The luminance node converts an RGB input into a greyscale value (0-1). The set range node allows you to remap the values into a specific interval.

One material, different colors

Ai UserData Color

Maya doesn’t seem to offer the possibility to apply different diffuse colors to meshes with a single material. It can become annoying and when you have to duplicate your material every time you change a parameter. Actually, there is a way to set that feature up in a few click, and it’s clearly described in MtoA online doc : aiUserData node. I personally also added 2 extra nodes. The first one divides values by 255, allowing me to enter RGB values in 0-255 format instead of 0-1. The second one applies a gamma correction of 1/2.2. That way, the values are to be given in color corrected RGB space instead of linear rendering space.

Other aspects

The full scene

I used the layered texture node to mix a discrete dirt texture, the costume texture and the color from the Ai UserData node. Since there only is one plastic material in the scene, the costume texture should be applied on every mesh, which I don’t want. The trick is to translate the texture in the place2dtexture node from 1 U or 1 V unit (or more). The texture won’t be on the main UV frame and will appear only if you move your UV further to match the image.

Don’t forget to bevel your shape (before doing the UV). It will catch specular and highlight the details on it. SSS is also important.