The future of the Lightcuts GSoC project

Next week the Google Summer of Code 2008 will be conclusively over. I will sum up my thoughts on this wonderful experience in a future post, adding some suggestions for prospective applicants as well.

Here, instead, I would like to detail my plans for the future of this project.

Development — Development will continue, but necessarily at a slower pace. At the end of October I’ll be attending the Blender Conference where I would like to show a couple of new features. Apart from that, though, what this project needs now is some “boring” refinement.

Blender Internal features — I’ll have to go through all the Blender Internal features and for each of them ponder if it is possible to support it. Unfortunately the very nature of the algorithm makes it impossible to support all features (some of which are pure hacks) but what’s in and what’s left out must be clearly stated to users.

Workflow design — In my opinion if you want to use Lightcuts, especially if you want to obtain indirect lighting, you have to plan ahead a bit; I can’t see, in general, the same light rigs being successful in both Blender “vanilla” and Blender Lightcuts. Matt Ebb, and many others for that matter, would be happier to see Lightcuts as a less invasive tool. Of course mine is a statement while Matt’s is a desire, so it’s easy to agree with both. Anyway, however this “fight” ends, I need to figure out how to integrate Lightcuts in Blender from a UI point of view. In this particular area I would like to hear opinions from users.

Merging — Some people are afraid that a project living in its own branch is at a greater risk of dying; for sure it’s at a greater risk of going out of sync. While it’s true that this project is fairly isolated code-wise, and that development could continue also on trunk, I feel more free to experiment in my own branch. As my confidence with the Blender codebase increases, I could also attempt some bolder refactoring of some rendering engine internals — and that would be better tested in a branch.

My idea is to merge after the Blender Conference, while the aim for the entire project is to be released in Blender 2.50.

Ok, enough words. Here’s a Sponza test, provided by Melon on blenderartists:

Sponza

A Sponza rendering lit by a single area light, with 5 bounces of indirect lighting

The entire thread is worth reading in my opinion.

Ps. — Next week I won’t be working on this project, but this is a planned break as I resume my duties so don’t think I’m running away!