Can anyone tell me if it's possible to adjust freestyle in the compositor?

I'm using it in my short film and its a drag to actually render the whole thing every time to see the changes I made.


  • $\begingroup$ You can also composite your own lines, you will have more control over the whole line setup. This technique also speed up your render times because you avoid the extra freestyle line calculation. I am just using this technique so I am not really sure if Freestyle gives you more or additional line settings. To get good results you also will need good over-all compositor skills. Blender Tutorial - Rendering Contours $\endgroup$ Apr 21 '20 at 8:21

Yes, it's possible. I mostly render my freestyle stuff on a separate Freestyle-Renderlayer and recombine it with the ordinary one in the Compositor. If you just want to rerender your FreeStyle strokes you can just render the Freestyle Renderlayer.

I've only done it in Cycles so far, so the following is only for Cycles.

To separate it:

  1. Activate Freestyle in Render Settings > Freestyle.
  2. Tick "Transparent" in Render Settings > Film to have the background transparent.
  3. Create a new Renderlayer (eg. "FreestyleLayer").
  4. Create the Freestyle settings you want.
  5. Override samples with 1 (for example).
  6. Turn off "Use Environment", "Use Surfaces" and "Use Hair" in the Layer panel. That way basically nothing gets rendered except the Freestyle strokes.

In the ordinary RenderLayer:

  1. Delete the Freestyle LineSet so you don't get any strokes here.
  2. Activate the "Environment" pass, so we can readd the background if we want to (because we just made it transparent above).

enter image description here

So far for separating. We now have a renderlayer that's transparent and only the Freestyle stroke will be visible.

To recombine it, do it like this in the Compositor:

enter image description here

Note that the Environment Pass is also readded here. This can just be left out if one doesn't want it.

Hope this helps.


Since Blender 2.83 there is an option to set Freestyle as a render pass in "View Layer Properties".

Shows the relevant "As Render Pass" option in "view layer properties"

In the compositor, Freestyle can then be processed separately.

Shows the "freestyle" render pass in the compositor

For the default cube, the content of this render pass would look like this.

shows freestyle lines with a transparent background


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.