An attempt to address the full sample anti-aliasing (FSA) issue in Freestyle was made over the last two weeks. The outcome is in revision 27805 of the Freestyle branch. As far as we have tested, the FSA works fine with Freestyle stroke rendering.
In order to address the FSA issue, Blender’s render pipeline underwent careful modifications, which indeed required lots of code reading with regard to the overall data flow in the render pipeline. On one hand, it was a tough task to understand the render pipeline’s implementation details as it is whenever one has to go through a large and unfamiliar code base. During the code reading, we examined several different approaches to a solution of the FSA issue. Some approaches turned to be inappropriate just because of a lack of proper understanding of the render pipeline internal, while other approaches were impractical due to possible performance degradation. The present solution is intended to be as conservative as possible in terms of memory consumption as well as the amount of file I/O in the EXR image file format. On the other hand, the code reading was a nice experience in the sense that it helped us to have a clear picture of the render pipeline internal. Now we feel like the render pipeline is not a black box.
As usual, user-side tests and problem reports are very welcome with regard to the FSA issue as well as other issues.