Exclude scene layer in render layer


I’m looking for a way to exclude a visible scene layer in a render layer (using Blender render). I know that I can select the scene layers included in each render layer, but it’s not the same result as making a scene layer invisible.

Here is my scenario: I want to render a render layer with smoke, then render another render layer with a Zmask of smoke (rendering only the smoke in front of a plane or other object), and in the end composite both render layers using a 2D alpha mask/alpha stencil for the background and foreground smoke. These are effects that will be used for 2D drawings, so I’m roughly creating the 2D environment in 3D, add smoke and combine the rendered result with the original drawing.

Here’s the result I want to get to (from several render layers, but NOT composited in Blender):

To save time I’m hoping to composite the result above only in Blender using several render layers as a composite.

Render layer settings for all smoke:

And the render result of the settings above:

Render layer settings for a ZMask layer (note that I had to change the Scene layers from the previous render, which is the only reason why I can’t properly composite these two render layers in one go):

Render result of the settings above (the Zmask is for a number of trees):

Result (composite smoke over 2d drawing):

I hope this explains what I’m trying to do and what the problem is.

It seems that in Cycles it’s possible to choose what layers to exclude , but I think for now I’m stuck with the Blender render. I don’t think smoke material renders yet in Cycles.

Any help would be highly appreciated.