Metaball blending parameter proposal - [Ricci 73] blending method

Hello modeling group,

I just coded a feature to parameterize blending of metaballs using Ricci 73’s operator instead of the used addition’s operator (it is just more general and give more control to the user for metaballs’ blending).

More details about the composition’s method here :
Video of the result :

Here, I allow the norm parameter to be below 1.f (it makes bulgy joining of surfaces instead of strict limitation). It works with rendering methods, can be transformed into a mesh like before and is saved and recovered while loading .blend.

I have started a new local branch for metaballs’ improvement (there are lots of other cool things to do).
Since I’m new in the community, tell me if the feature deserves to be added into the current git, if it needs more to be pushed or other things.



Currently, I think this is the most obvious issue with MetaBalls in Blender

I would love the ability to use metaballs to blend colors/materials smoothly, perhaps a shader parameter that assigns a “random per metaball” color or mask to the surface of the metaball object.


One thing which can probably solve this kind of problem is to change a bit the way we manipulate metaballs, one good way to combine metaballs was proposed by [Wyvill et al. 99] :
I believe this would give a better way to handle metaballs (control of operators, deformations, tree hierarchy of metaballs’ groups), to propose it to artists we can first group this in collections but proposing a node manipulation model would probably be even better. This can be the next thing I can start working onto.

For sure this would be cool to blend colors/materials, it is kind of things you can see with metaballs / implicit surfaces, as a example where I saw this : . So maybe this can be the next step about metaballs (using operator to control material blending would be even better to give more control to the user).


After writing that earlier post, I got bored and wrote a script that turns a curve object to metaballs. It even matches the curve’s bevel radius. It’s not production ready, yet, so I haven’t uploaded it to my gitlab, but if it sounds like something that would be useful, DM me and I’ll send it over.

1 Like

Yes for sure, it sounds really cool, it is kind of things that can be related to [Zanni 2013]'s work :
I invite you to share your script here to allow everyone trying it, otherwise if you prefer send it to me in DM.

Oops, I didn’t get a notification :frowning: I’m gonna send it to you now :smiley:

I will share it on gitlab when it is feature complete!