Is it possible to control the shading via a node in the compositor? I would like to generate two output images, one which has material shading and one without any shading - just the colors from the texture.

So far I only found how to control this option with the UI (of course) and with Python, but with these methods I have to render the image twice, which is somehow an overhead.

# Cycles:

You can do this in cycles by enabling the Color passes in Renderlayers > Passes:

Then add them together in the compositor with Mix nodes:

Original image:

Post composite:

You can get only the shading of the render by dividing the full render and the color pass:

The reason the large cube appears as if it is still textured is that it has a Glass material, so that is the shading result. To prove this we can multiply it back with the color pass and we will get the full render again:

# Blender internal:

You could get a "shadeless" pass in BI with the Color pass in Renderlayers > Passes:

Result:

# Saving multiple images from the compositor:

You could then save the shadeless images in a separate directory with the File output node:

Note that the output connected to the composite output node will be saved to the path specified Render settings > Output. In the absence of a Composite node, the raw render will be saved.

The above node setup the raw render is saved to the path in Render settings > Output (in this case /tmp/) and the shadeless image is saved to /tmp/shadeless/.

• But how do I get a "noiseless" rendered image? – Masala Oct 31 '13 at 15:03
• or is it even possible in Blender Render? – Masala Oct 31 '13 at 15:16
• @Masala What do you mean by a "noisless" image? – gandalf3 Oct 31 '13 at 20:45
• For example your original image. I have the same problem with my model. If I use Blender Render, the result looks much cleaner. – Masala Nov 1 '13 at 8:44
• @Masala I added a way to do this with BI. To reduce noise in cycles you have to increase the number of samples in Render settings > Sampling. Note that this will increase the rendertime. – gandalf3 Nov 1 '13 at 18:07