Google SoC Progress Report: Modifier Stack

From the original announcement: 

In Blender 2.40 we saw the inclusion of the mesh modifier stack, and while this great new feature has enabled a lot of new customization in how a mesh is formed and rendered, there are still a number of features that it lacks. Looking to change that is Ben Batt, a Computer Science/Computer Systems Engineering student in Melbourne, Australia. His project will involve upgrading the modifier stack, upgrading the current modifiers to work with the new modifier stack, and adding 3 new modifiers.

I asked Ben a few questions I had on his project, how it came to be, and what it will do for Blender users.

What was it that made you interested in doing this project for Blender. (Did you find that these additions were sorely needed, did you see them requested a lot, etc.)

When I was working on the Array modifier, I found that I couldn’t do everything that Cam (Ideasman) and I had discussed due to the limitations in the modifier stack. For example, the ability to apply a Curve modifier after an Array modifier in the stack makes the Array modifier much more useful, but is not possible at present. While looking for a way to fix this, I realised that the current modifier stack could do with an upgrade. Rather than just coding a single hack to fix one modifier, I would prefer to make the whole framework more flexible, so I decided to apply for SoC.

How do you think your additions will help Blender users over current methods?

The modifier stack upgrade means that modifiers can be applied in any order, expanding the possibilities for modellers. Removing the ordering constraints will also make the modifier stack’s behaviour more sensible (e.g. it makes sense to apply a Curve after a Subsurf, so you should be able to do it), and hopefully help new users to learn it a little faster. Finally, with modifiers being extended to potentially affect any aspect of a mesh, more powerful and innovative modifiers will be able to be written. The next stage of my project is to write several new modifiers, which should help iron out any remaining wrinkles in the modifier stack.

Are there any test builds/screen shots with your modifiers in action? Do you have a link so people can see the progress made so far.

You can see information about the modifier stack upgrade on the wiki – there’s a progress log at the bottom of the page. I’ve just put a linux build up at graphicall, and there’s a windows build and a sample blend (try editing the curve object and watch the array resize to fit [with the test builds]).

Thanks to Ben, it looks like this project is on its way to becoming a greatly needed part of Blender.  So take a test drive of the builds and see into Blender’s future!

Advertisement