Blender Freestyle: How to Create NPR Art in Blender
No matter what your preferred style may be, not all designers are after true-to-life, photo-realistic scenes in their renderings. Non-photo-realistic (NPR) art is also in demand for 3D artists, and sometimes they want a more expressive, comic-like final render; perhaps like an animated film for kids. Blender’s solution comes in the form of Freestyle. Let’s take a closer look at what it can do, as well as a simpler option for achieving similar effects.
Using Blender Freestyle
Blender’s Freestyle is an edge/line-based function that uses mesh data and depth information to draw lines on user-selected edges. An endless amount of line styles can be produced to create all sorts of hand-drawn, hand-painted, or drafted looks.
Once enabled in your rendering settings, Freestyle provides its own set of Global Settings, as well as Line Set and Line Style settings in the View Layer tab. Freestyle will also activate its own panel to allow for further adjustment of its internal viewing and rendering settings.
Line Set Settings
The Line Set tab is the main setup for your Freestyle line presentation — where your lines will appear and on what edges. You have the option of choosing to render out with any of these Selection Modes, each of them selecting a different set of edges in your scene.
- Visibility
- Edge Types
- Face Marks
- Collection
- Image Border
Underneath these selection modes, you can change the visibility type of the line. You can choose more than one Line Set for your composition, and you can then apply an edge type to each mode you’ve selected. Edge types are where the majority of the Line Set settings are made. They allow you to have more control over the selected edges based on parameters set by each type. These types are as follows.
- Silhouette
- Border
- Contour
- Suggestive Contour
- Ridges & Valleys
- Crease
- External Contour
- Edge Mark
- Material Boundary
Each option has both a checkbox and an “X” on either side of the edge type option. The checkbox, when ticked, tells Blender to render this edge type, but if many types are selected, the “X” box can be ticked to counter an edge type if two types intersect or overlap in the camera view.
Beneath these is the Face Marks section, which gives you the choice of marking or unmarking a particular polygon face or set of polygon faces to be rendered in Freestyle. The options to make these selections inclusive or exclusive are also available.
Finally, the Collection section is found beneath Face Marks. This section enables you to select groups of layers, or collections, that will be rendered with your designated line set. To use it, select it in the Line Set options and the interface will expand. Select the collection that you want to include or exclude.
Line Style
The Line Style settings define the appearance of your Line Set setup using the following properties.
- Strokes
- Color
- Alpha
- Thickness
- Geometry
- Texture
Each property has its own independent settings on its own separate tab.
These allow you to create many different styles and renders (technical layout, rough sketches, cartoon style, calligraphic). Line styles can be augmented and changed to your heart’s content, giving you access to a great range of possibilities and effects.
With all of this creative control, things can seem a little daunting at first, so take time and tinker with the parameters to get a feeling for what each option can do for your render.
Rendering with Freestyle in Cycles
Once your render is complete, the only real way to view the resulting image is to combine it with other passes to create the full effect in the compositor. In many cases when using Freestyle, you need to combine it with tools like toon shaders and compositing nodes, or work with multiple scenes and view layers.
Cycles makes this very easy as it lets Freestyle have its own render pass. When rendering locally, it’s important to render the Freestyle lines on a separate layer with an alpha background. The only way to do that is with the compositor.
- In the compositor, add a new Render Layer node.
- Select the new Render Layer node and find the Render Layer tab in the Properties panel.
- In the Filter section, uncheck all except for Freestyle.
- In the Render tab, find the film section and check “transparent,” and confirm that Freestyle is enabled.
Rendering with Freestyle in Eevee
Eevee, on the other hand, has only recently provided this capability. Since the 2.80 Beta version of Blender, Eevee has been an internal rendering engine available for the software but has not had the ability to filter independent passes for Freestyle. However, as of this article’s publishing, Blender 2.83 and more recently 2.90 have corrected this issue. Eevee now allows for Freestyle to have its own render pass, so the compositor setup mentioned above will work as well.
Pros & Cons of Freestyle
If you’re looking to add a more cartoony, comic-like, or illustrated aesthetic to your work, or if you’re seeking to achieve a technical look to your architectural visualization blueprint, Freestyle may be what you need to achieve the look you’re going for.
Though seemingly intimidating, the significant amount of user control over line weight, shape, color, and location is a strong positive for Freestyle.
One issue, perhaps, is that it takes some time to augment and shape the type of lines you want, with as much creative control as it affords, you can spend hours tinkering with settings to get everything exactly to your desired result, which some may find frustrating.
Note: A major conflict can happen if you use Radeon ProRender as your primary rendering engine. Freestyle’s functions are currently unavailable to ProRender users, but there is an alternative that may pique your interest.
Using ProRender’s ToonTrace as an Alternative to Freestyle
ProRender’s ToonTrace is a free-to-use toon outline function that is available for all Render Pool members. Like Freestyle, ToonTrace can create lines on the edges of your pre-existing models without you having to do a thing. Though not available inside Blender itself when using the ProRender engine, this function is offered to anyone who utilizes Render Pool’s rendering services.
While you may not have as much control as you would with Freestyle, ToonTrace simplifies the outlining process. With RenderPool’s UI, you can change the line size and thickness, and choose either Material ID or Object ID render passes for render exports.
Pros & Cons of ToonTrace
The simplicity of ToonTrace is its greatest advantage. Everything is already built in and ready to use in Render Pool. Once your .rpr file is uploaded, simply activate ToonTrace in your render export settings and set your line width and AOV selection in the submenus provided.
If you’re looking for options such as stroke, color, or geometry, you won’t find them in ToonTrace. However, if you’re looking for an Architectural Visualization (Archviz) technical look, this may not be much of an issue for you.
The ability to view the result prior to rendering is also unavailable in ToonTrace. In order to change any details regarding the lines, you will have to tweak the settings and render out the scene again.
Render Pool Makes NPR Art Easy with Freestyle or ToonTrace
Whether you prefer the control and customizability of Freestyle or the speed and simplicity of ToonTrace, with Render Pool now allowing both .rpr and .blend files for upload, native Blender users have more rendering options available to them than ever before.
Happy Rendering!