Freestyle integration into Blender

July 12, 2010

Weekly update June 28-July 11

Filed under: Update — The dev team @ 12:54 AM

Since the last blog update, the dev team was working on the design and implementation of the new GUI framework (referred to as the Parameter Editor mode), while important updates in the trunk were merged and some compilation issues were fixed.

The Parameter Editor mode has now a set of UI controls for better specifying feature edge selection criteria.  The Freestyle tab in the Render buttons has a pair of radio buttons named Inclusive and Exclusive, as well as another pair of radio buttons named Logical AND and Logical OR.  The Inclusive button allows you to select feature edges that satisfy the given selection criteria, while Exclusive is to select those that do not satisfy the given conditions.  The Logical AND and Logical OR buttons are for combining selection criteria by logical “and” and “or” operations (i.e., logical conjunction and disjunction), respectively.  These UI controls allow you to easily select desired feature edges that will be fed to subsequent stroke rendering.

The trunk has recently adopted a new installation path structure, and the Freestyle branch has already incorporated the path changes.  For branch users, this means that standard style modules are installed in a different path.  Old paths in your blend files may need to be fixed manually.

In the mean time, Stéphane Grabli, one of the coauthors of the original Freestyle, kindly provided us with a set of patches for fixing bugs that existed in both the original Freestyle and the Blender Freestyle branch.  One of the fixes is concerned with stroke construction, which is now capable of generating better feature edge topology thanks to more robust visibility tests.  The improvement is salient when you look at external contours.  The following image shows a comparison of external contours generated by the old revision 29733 and the new improved revision 30169.  The red and blue colors are intended to show where each stroke starts and ends, respectively.  The old version generated 55 strokes, showing lots of stroke fragmentation.  The new version yielded only 22 strokes (most of them were out of the camera view), demonstrating a much better stroke quality.  Thank you Stéphane for the wonderful contributions!

In the next weeks, we are going to keep up the work on the new GUI stuff.  Additions of new UI controls into the Freestyle Line Style tab are planned.



  1. I RELLY enjoying all the recent commits to the branch, thank to TK, Stéphane, and everyone else contributing to bring FreeStyle to Blender artists around the world! Cant wait to use the new UI work you’re designing. Thank you again!

    Comment by blenderificus — July 12, 2010 @ 1:35 AM

  2. Excellent work! I suppose the new parameter editor is still not totally working (I couldn’t make it output anything) but it’s exactly what I would expect to find in freestyle. Congratulations, I have the impression freestyle is entering a very mature phase…

    Comment by Yorik — July 12, 2010 @ 4:09 PM

  3. Wish you best of luck guys :D
    Can’t wait to use Freestyle in some animation projects :)

    Comment by Jack RED — July 17, 2010 @ 2:48 AM

  4. I am really looking forward to using those extra controls. Getting lines where I need them and avoiding them where I don’t can be quite tricky at the moment, particularly for sharp geometry (cubes and things) which I use a lot. Keep up the good work!

    Comment by justposted — July 20, 2010 @ 12:20 PM

  5. Just a suggestion, but I’ve really enjoy JWilkins sculpt and texture paint preset thumbnails for quickly selecting presets. Is there any plans to do something similar for freestyle?

    Comment by nrk — July 24, 2010 @ 7:07 PM

  6. Great Progress the new UI changes are so damn great!
    Looking forward to this!

    Comment by TUNGEE — July 25, 2010 @ 3:06 PM

  7. Thanks for your great work
    Do you think it is possible that in a future Freestyle support this? (blur lines)


    Comment by Ciriaco — August 12, 2010 @ 9:29 AM

  8. Hi Ciriaco,
    Thank you for the message. Although I don’t know the detail of the motion blur technique, it is my impression that the technique is unlikely to be part of Freestyle. Basically Freestyle does stroke rendering based on user-defined mesh geometry and does nothing about time coherence. The motion blur technique seems to do a lot of work on time coherence and rely on a number of things other than mesh geometry. If a free implementation of the motion blur technique is available, integrating it into Blender would be another interesting GSoC project.

    Comment by The dev team — August 19, 2010 @ 1:11 PM

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Create a free website or blog at

%d bloggers like this: