Freestyle integration into Blender

May 17, 2008

Substituting libQGLViewer

Filed under: Update — The dev team @ 9:41 AM

I am currently trying to generate a first render and the process is of course more complicated than the previous steps. While Freestyle’s non-UI code is pretty much self-sufficient, the UI parts are unfortunately not; there is high coupling between the functions demanding a render and the methods actually producing the images. This is of course the challenge of the first phase and I am not surprised that it is not as easy as I thought.

I started by modifying Blender’s render interface to call Freestyle’s Controller methods. I originally wanted to make Freestyle independent of libQGLViewer, constructing an image using the Canvas class. I have come to understand that it is not possible: libQGLViewer is at the core of the rendering process, hence I must not remove it but substitute it. I have to replace much of AppGLWidget‘s functionality and I need to reimplement the basic methods and classes that it is based on (QGLViewer). On top of that, I need to continue removing QString and QImage dependencies.

I have not finished correcting all the compilation errors. I am going to continue all of this week-end and I hope to generate an image by tomorrow. Of course, the big unknown is how much time will be required to replace libQGLViewer’s methods. As I am replacing them, more and more dependencies come up. As soon as I have an image generated, I will commit my progress.

Leave a Comment »

No comments yet.

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 )

Twitter picture

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

Facebook photo

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

Google+ photo

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

Connecting to %s

Create a free website or blog at

%d bloggers like this: