(by Tamito Kajiyama)

In December 2009, we defined a list of things that should be finished before the merge into the trunk is asked [1].  This to-do list included fixes of stability issues, recovery of missing features, and additions
of a few new functionalities.

Among these things, a strong emphasis was first put on addressing the stability issues.  Most critical bugs were fixed in the first two months after the definition of the to-do list.  These fixes addressed: (a) a long-standing source of various instability issues related to 2D-to-3D inverse projection transformation [2, 3], (b) crash due to objects behind the camera [4], and (c) fatal instability related to the orthographic camera [4].  Problem reports from branch users also helped the consolidation of the branch a lot.  As a result, the stability of the renderer has been substantially improved.

After these stability improvements were made, the development moved on to the recovery of missing features, including (a) transparent strokes [5], (b) image-space density and Z depth information [5],
(c) full-sample anti-aliasing [6], and (d) border rendering [7].

Some documentation work was also done to migrate the Freestyle API reference manual into the new Sphinx-based documentation system for Blender 2.5 [8].
Having most of the initial to-do items addressed, we refined the list of final targets in June 2010 based on users” requests and available human resources.  Less important missing features were dropped from the list, while a key element was included.  The updated to-do list [9] consists of three items:

1. An artist-friendly GUI for interactive manipulation of line style parameters
2. Feature edge detection at the intersection of two faces
3. Completion of Freestyle Python API improvements

The new GUI aims to provide artists with an intuitive and easy-to-use line stylization toolset.  To start with, several GUI design approaches were discussed [9], and GUI designs of commercial NPR software
were reviewed [10].  The basic framework for Freestyle in Blender has been implemented as documented in [11].  The GUI is functional and ready for tests by users.

As of this report, subjective achievement rates of the three to-do items are 40%, 0%, and 80%, respectively.  Taking the amount of unfinished work and available resources into account, the completion of all the to-do items is unlikely to happen earlier than the next summer.

As cited above, updates on the development work have been posted to the Freestyle integration blog:

http://freestyleintegration.wordpress.com/

The Freestyle branch has been kept in sync with the trunk code base by regularly merging changes from the trunk.  Branch users have been actively exchanging techniques, application ideas, and rendering results through the Freestyle thread in BlenderArtists.org:

http://blenderartists.org/forum/showthread.php?t=89986

Thanks to volunteer builders, up-to-date Freestyle builds are available at:

http://www.graphicall.org/

Those who are interested in the reported new elements of Freestyle are highly encouraged to test and review this branch.

January 17, 2011
KAJIYAMA, Tamito (T.K.)

[1] http://freestyleintegration.wordpress.com/2009/12/21/new-to-do-list/
[2] http://freestyleintegration.wordpress.com/2010/01/10/weekly-update-december-28-january-10/
[3] http://freestyleintegration.wordpress.com/2010/01/18/weekly-update-january-11-17/
[4] http://freestyleintegration.wordpress.com/2010/02/01/weekly-update-january-25-31/
[5] http://freestyleintegration.wordpress.com/2010/02/17/weekly-update-february-8-16/
[6] http://freestyleintegration.wordpress.com/2010/03/29/weekly-update-march-15-28/
[7] http://freestyleintegration.wordpress.com/2010/04/07/weekly-update-march-29-april-4/
[8] http://freestyleintegration.wordpress.com/2010/04/18/weekly-update-april-5-18/
[9] http://freestyleintegration.wordpress.com/2010/06/07/weekly-update-may-24-june-6/
[10] http://freestyleintegration.wordpress.com/2010/06/27/weekly-update-june-7-27/
[11] http://freestyleintegration.wordpress.com/2010/08/11/weekly-update-july-12-august-11/