[Bf-committers] GSoc 2008 Proposal: Freestyle integration into Blender

Jean-Luc Peurière jlp at nerim.net
Fri Mar 7 18:53:16 CET 2008


Le 7 mars 08 à 16:20, Maxime Curioni a écrit :

> Hello,
> I am a Master's student studying computer graphics at Tsinghua  
> University, in Beijing, China. Studying rendering algorithms and  
> wanting to participate in the Google Summer of Code 2008, I have  
> been looking for interesting projects for Blender. I stumbled upon  
> the Freestyle project (http://freestyle.sourceforge.net) and its  
> call for developers for integrating it into Blender. I have since  
> then contacted one of the original authors, Stéphane Grabli, and  
> asked him if he was still interested in acting as a mentor for such  
> a pursuit. Stéphane told me that he would be available to supervise  
> that endeavor. I am now turning to the Blender community to make  
> sure it is still interested in the project, gather some feedback  
> and see whether someone from the developer team could also be  
> involved as a mentor.
>
> Besides participating in the Google Summer of Code, my motivations  
> are many. First of all, ever since Blender was released to the open  
> source community, I have wanted to participate in the developer  
> team but haven't taken the time to do so. This would be a  
> tremendous opportunity to jump onboard, especially getting deeper  
> in the source code and learning about how a 3D graphics engine is  
> structured and coded. My second motivation is to continue learning  
> about my field of study. I am currently learning about global  
> illumination implementations and I think working on this project  
> (even though I know it is not GI related) could teach me a lot  
> about other areas of rendering. Finally, I see this project as a  
> tremendous challenge on many levels, technically of course  
> (implementing shading languages, understanding Blender's  
> architecture...) but also scientifically (learning about NPR  
> algorithms)  and humanly (managing a decentralized project, getting  
> involved in an open source project...). Stéphane has also mentioned  
> to me that many people from the Blender community have requested  
> this feature in Blender, so the level of expectation is also a  
> great motivation factor.



Hello,

I have seriouslty considered porting freestyle myself and i have  
several remarks about it :

- A good NPR line draw system would be indeed a great improvement  
over the crude edge renderer we have now.
- Freestyle approach is very interesting, but is not a full solution,  
only complimentary to a solid renderer.

However, I now feel it will need profound modifications to be used in  
blender in an artist friendly fashion. So it cannot be a simple  
porting in my opinion.
The python method, while powerfull, is really not adapted to an  
artist tool.

Freestyle works the following way :

1/  create a "view map" of all edges and objects according to the  
camera view, marking edges with some flags (contour, sugestive,  ...)
2/ mutate the database created earlier by chaining and spliting edges  
according rules & predicates
3/ draw strokes with graphic style of the result

1/  could be integrated as a separated renderer or replace the edge  
pass of the actual internal renderer, with the possibility of adding  
more flags in edit mode, so under artist control (adding or exluding  
edges to the view map).
2/ & 3/ are done in freestyle with python scripts (which is why SWIG  
is needed) but could be replaced in a much more friendly way with  
nodes like those of compositor. And pynodes like the material ones  
are still possible. Again, the advantage is easier artist control and  
modications without reinvoking the renderer

So, all in all, i think it is quite a big project for the timeframe  
involved, and probably more demanding than you anticipated. That dont  
make it not worthwhile

Now, you say you have no prior experience of coding for blender. This  
is something you have time to correct before GCOC ;)
Stéphane Grabli support would be great, but you will have/need a  
blender mentor too.

Jean-Luc Peurière
jlp at nerim.net



-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.blender.org/pipermail/bf-committers/attachments/20080307/bfb35ffd/attachment.htm 


More information about the Bf-committers mailing list