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

Parametric Objects in Blender

20

param_mod_star.pngMatt has done some work to attempt to emulate 3DS Max functionality in Blender. This functionality is parametric objects.

What are parametric objects? Well one example Matt gave is creating a star object. The advantage of a parametric object is that you can edit the number of points of the star, resolution, dimension, etc all interactively. And in Matt's proposal making the object a modifier would allow this interactivity to remain throughout a modeling process. Currently, this functionality is just a test. And a patch is not available. He hopes it could be inspiration for things to come. Kind of like the other neat goodies that he has shown us in the past.
Matt says:

It's basically using a modifier at the bottom of the stack to create geometry, which you could then just apply to edit the mesh directly, though that's not always necessary. This is a bit similar to how Max and Cinema 4D work. When you add an object, you can still manipulate dimensions, resolution, other parameters as a whole. Then if you want to edit it manually, you convert it to an editable mesh with a click.

Find his blog post on it here.

20 Comments

  1. Well done, I love parametric objects this is really usefull to go back and adjust primitives after editing (like max or xsi)

    XSi is a bit powerfull with parametric than 3dsmax so this kind of funcs in blender will be a great add-on to current modeling tools.

  2. That would be nice. I had the occasion to work with parametric object with Max and I admit these would fit well in the modifier stack system...

  3. so is this like say for example you have a shere with some many faces, but you can apply a modifier to it and the number of faces will go up? kinda like sub-surf but not as dramatic?

  4. Awesome! I use 3ds Max at my job doing arch vis, and even though I love blender there are things that make so much more sense in Max... One thing that I would really like to see is Edit Mesh or Edit Poly modifiers, as they are incredibly useful; either way, parametric objects are a step in the right direction!

  5. I'm inclined to agree on the edit mesh and edit poly subsets on max are pretty boss. But in blender we just have to get a bit old school (or get a nice python script written) to achieve that kind of functionality.

    Nice to see another string to blenders bow being stretched!

    Awesome stuff!

  6. Modifiers are very useful, but 3DSMax has way too many modifiers (in my opinion). I think Blender should have a more innovative approach, than creating a modifier for every problem that comes along. If that happens you end up with Max with its one mile long modifier list.

  7. Antiwhine- context sensitive categories sounds like a great idea!

    Too bad a small company like Autodesk can't figure that out.

  8. Context sensitive categories would be very good. 3dsmax's modifier list is - well - extensive. A big thing that would help would be a little '?' button next to each modifier that brings you to its wiki page. That way if you try a modifier out and it doesn't do what you expect (or does nothing), you can check out what it's /supposed/ to do and how to get it to work.

    I love the idea of having a modifier that basically loads geometry from another file. As long as you can pack that file in order to upload to your friendly neighborhood render farm :-) And as long as packing it from multiple objects results in only 1 packed copy of the file.

  9. Another advantage of parametric objects: smaller file size.

    For example, consider a spiral staircase. If you had, say, a spiral staircase parametric object, the file would contain only a few bits of information:

    spiral staircase tag
    inner radius
    outer radius
    stair height
    stair thickness
    handrail height

    Compare that to the amount of info to store it in polygonal form. Granted, you can't edit the handrail directly without converting to polys, but if you need to, just do the conversion!

  10. How about defining the parametric objects in a .py script?
    There has been some development lately in exporting and importing objects through Python. So how about putting these two concepts together?

    The python script would have to handle returning list of parameters, with type and range of values. Blender would then read it and display the parameters in a button window (I'd go for a separate panel in edit buttons, I would not necessary mix it wit the modifier stack)

    It will rebuild the mesh on the a parameter change (yes, it would undo changes done in edit mode, so some change in there to display a popup would be a good idea).

    The mesh would have to store a refference to the script (perhaps with version) and the parameter values.

    This way one could create a blender mesh, export it to .py, then tweak it to change some constant parametrs into variables, and here we go - you can start cerating a library of parametric objects that can be shared on the web. For Architecture: staircase, windows, doors, shelves, staircase, charis. You could modify style ("I" shape staircase or L or U or spiral. Dimensions, number of steps etc... and it would calculate it for you, then you can remove the script refference (convert to static mesh) and further tweak it.
    To think even further...you could change the parameters in NLA, so you could do sort of shape keys controlled through python...

    I've been thinking myself to do that for some time, but a) I am not yet familiar with the blender code much and b) This seems like a major feature and I would not like to spend weeks of my time on this so somebody then kills it on tre tracker in 5 minutes. That's why I thought I'd perhaps throw for a discussion first....

    Cheers

    Bruxy

  11. I have some experience with "simple geometry plugins". I used to work in MaxScript before (in 2-3 weeks I will add my collection of scripts to my website). This is a fantastic thing. The Autodesk knew what they are doing.
    Greetings to all Blenderheads!

Leave A Reply

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