You're blocking ads, which pay for BlenderNation. Read about other ways to support us.

Google SoC Progress Report: Modifier Stack


subsurftest01b.pngThe Blender Google Summer of Code (GSoC) projects are still in full swing and the projects are usually quiet until they are finally released.  We've looked at the very early stages of the Sculpt tool, and now I ask Ben Batt (artificer) about his Modifier Stack Upgrade.

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!

About Author


Just a guy really into 3D, especially where Blender is concerned.


  1. About the Linux test build:

    "Not Found
    The requested URL /builds/builds/userbuilds/000185_blender-artificer-20060724.tgz was not found on this server.
    Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request."

  2. I became a fan of Artificer for his work on the array modifier. :) Normally I don't use CVS builds, but for this feature I didn't hesitate! ;)

    I believe his work on the modifier stack is very crucial !

  3. Hi, apologies for the stuffed up graphicall build, I've uploaded it again and it seems to work now.

    peter: animatable modifier parameters were not part of my SoC proposal, but I would like to work on them at some stage once SoC is finished.

    Thanks for the encouraging comments, everyone :-)

  4. Nice progress report.. hehe, it's (partially) my fault that the current implementation doesn't allow fully arbitrary order of modifiers, since we asked for the vertex group feature for project orange, which imposed the limitation. I'm glad to see this work towards a more flexible architecture.
    To the blendernation writers, these updates on the SOC projects are great! perhaps you could revisit each project periodically with an update, as their progress continues?
    Sorry I may have missed it,Ben, but you already know what (new) modifiers you are going to code? or is this still in the planning stages?

Leave A Reply

To add a profile picture to your message, register your email address with To protect your email address, create an account on BlenderNation and log in when posting a message.