Making Of 'Garage'


Hi all! It's a pleasure for me to give you an overall view of this project!

I started this image last summer. During to the vacation, I decided to take a model from a short I was developing and use it to study lighting and shading with a cartoony look.

I wanted to create an ambient, alien look. The principal character is from another world (the one with the big feet that you can just see under the garage door) and I wanted to communicate that with little details here and there.

As usual I asked Giovanni Lo Re (a really good friend I used to work with in Italy) to make a little sketch of the scene and to design the objects.

After collecting some reference images (especially from other 3D artists) and after some emails he ended up with this drawing (Fig.01a) and was a really good starting point!

Fig: 01a

Then he sent me some detailed drawings of the tools and the car (Fig.01b & Fig.01c).

Fig: 01b

Fig: 01c


Modeling was pretty straightforward - it was all poly modeling and a lot of little pieces!

For the car, after the body was finished (Fig. 02a) I started modeling the interior and the details (Fig. 02b).

Fig: 02a

Fig: 02b

As to the environment, I modeled every object separately and then imported them as references. I wanted to find a good camera angle, similar to the one of the drawing. In the end I decided to turn the wall on the right side about 45 degrees to have more space and get a nicer shot (Fig. 02c & Fig. 02d).

Fig: 02c

Fig: 02d

Texturing & Shading

For texturing I used the 3DTotal Textures collection. These textures are amazing and it is a huge library! Many times I just started browsing through them without any idea of what I was looking for until I found something that fitted the scene.For the wall I took the base layer from Total Textures V01:R2 - General Textures ", some dirt from Total Textures V02:R2 - Aged & Stressed and Total Textures V05:R2 - Dirt & Graffiti and mixed them in Photoshop following the UV layout (Fig.03a).

Fig 09

Fig 09

Total Textures V1:R2 General Textures

Fig 10

Fig 10

Total Textures V2:R2 Aged & Stressed

Fig 11

Fig 11

Total Textures V5:R2 Dirt & Graffiti

Fig: 03a

I then did the same for the tires (Fig.03b).

Fig: 03b

For the sky Giovanni started with a base from the Total Textures V15:R2 - Toon Textures and continued adding details, painting clouds and little planets.

For the car paint and tires materials I decided to go with layered materials. This gave me the ability to add dirt, scratch and all the little details I wanted with minimum effort. The textures mostly came from Total Textures V05:R2 because they're full of dirt masks. After importing them into Photoshop I reduced the details to make them more cartoony and I made a lot of masks to control the layering.

Fig 14

Fig 14

Total Textures V8:R2 Vehicles

Fig 15

Fig 15

Total Textures V15:R2 Toon Textures

The shaders were quite simple: lots of fresnel effect for the glass and metal and then simple shader trees layered with a mib_color_mix node (Fig.03c).

Fig: 03c

Lighting & Rendering

At the beginning I wanted to try the new Mental Ray pass system, but after a while I liked the raw render from Maya so I decided just to use a beauty pass, an occlusion pass, and one pass for light fog, as well as some masks. I ended up with 16 passes (Fig.4a), mostly masks, because I wanted to be able to do separate color correction while still producing an image ready for animation without hand-drawn masks or retouching in Photoshop.

Fig: 04a

Lighting was really fun but also time consuming... I think I spent most of my time on this and on compositing. I rendered a lot of different versions with different colors and light rigs (Fig.04b) going back and forth between versions until we found a good combination of mood and details.

Fig: 04b

I used a technique I saw in a DVD from Jeremy Vickery ( on the use of Ambient Occlusion to simulate bounce/fill lighting. All you have to do is to connect the output of the AO to the ambient color of all the shaders in the scene (Fig.04c). You have to think about it like this: the light color is going to light the non-occluded parts, while the dark one is going to light the occluded ones, so avoid pure black and pure white! I also put some orangish tones in to warm the image up.

Fig: 04c

After establishing the key + fill I started adding bounce lights for the sunLight and a lot of rim light to separate the objects from the background. This is a screenshot of the scene and a list of all the lights in the scene (fig. 04d). I also added some reflectors with a white surface shader to give that cartoony look to the reflections on the glasses.


This was the first time I'd tried to use Nuke and I really learnt a lot! I rendered some passes as 32bit floating point openEXR (beauty, zDepth) to have more freedom and the rest as 8bit iff.

Nuke gives you the possibility of creating new channels from images, so I used the colorID passes to put new channels into the pipe in order to be able to select the various objects with just one click through the whole script. This was especially useful while doing color correction. Height passes and the light fog helped me to improve the atmosphere while the vignetting allowed me to concentrate the attention on the car, which was supposed to be the most important spot of the image. In Fig.05a you can see a screenshot of the whole script with some explanations!

Fig: 05a


I'm really happy about writing this tutorial and sharing what I've learnt with you! I think that this has been a little like a production workflow because we had to get feedback from each other by mail ... sending progresses and trying to understand each other just by reading. Maybe if we had been able to work side by side we wouldn't have done all those tests, but I think that this has been a nice research piece and I'm just looking forward to starting a new project,

If you have any questions, feel free to write to me!

Thank you to everyone!

Enter content...

Fetching comments...

Post a comment