Convolution Surfaces: A better alternative to metaballs

k and i are basically settings we have to put as programmers. i makes the fusions tighter or looser, k seems to be some sort of control for the math. (k’s purpose is not well explained in any paper, I think it might be for recurrence, an integration thing)

I suppose in terms of interface, yes you could use the data of metaballs as weights and positions for points in the convolution skeleton, and then connect the dots automatically so you`re are not traumatizing players with animation rigging basically. It’s just, as you can probably see, convolution happens in an order and does lots of Vector math.

Yeah, I can see the ordering. I was thinking anyway that we need metaballs to have order in them to make animation and bones work. So I guess metaballs connected with bones would be a reasonable first go at making a 3D editor, then?

Yes I think that works- I could make models for different kinds of bones, and the animations they need.

sure, as long as it’s reasonably ordered / structured it can be made into convolution surfaces.

1 Like

no you can`t, metaballs don’t take triangles nor animation data as input. You would have to do something completely different which is you’d have to shift metaballs around in the code.

Gotcha… Would your idea work for that instead? Are they able to be influenced by bones? Convolution surfaces I mean.

not animation bones which are actually vertex groups. In any isosurface algorithm, the vertices are made on the fly with different numbering than the animation file is gonna have. In the end we are going to have to make animations by shifting around those points of the convolution surface or in the case of metaballs, entire metaballs.

Oooof gotcha- ok- Ig I’ll have to work in godot instead of blender for animating then?

i have no clue. I imagine the animations are largely going to be procedural, meaning they would come from formulas.

I remembered a discussion had on the theory team which @Nunz mentioned should be chronicled on the forums, so I wanted to do that before I forgot. It mostly had to with how we can use convolution surfaces and mapping skeletons across different types of body plans, more expressly animals with exoskeletons instead of internal/hydrostatic skeletons. There isn’t really much, it’s just good to have on record.

Formatted in Discord-chat form:

Deus: One of the reasons I tried to lay a bit of groundwork in discussion how the body plan editor could work was to bring into circulation the fact that the vast majority of animals don’t have endoskeletons, with most being soft-bodied and most others having exoskeletons. As such the way their limbs and skeletons are structured (if they even have a skeleton) look a bit different. So I wonder how much of a hassle it would be to make sure a skeletal system properly works across these multiple structures

Nunz: Mechanically speaking, you have to differentiate between joints (a connection of 2 or more rigid lines) and Curves.
I guess geometrically speaking, it makes the most sense to make everything out of lines and points, and then apply things like bezier Curves where appropriate:
Mechanically speaking, you have to differentiate between joints (a connection of 2 or more rigid lines) and Curves.
image

Deus: I guess that would be pretty universal to all body plans no matter the basic building blocks then. Only thing that makes me pause is differences between how for example joints in arthropods work differently than joints in soft-bodied and endoskeletal organisms, where in arthropods everything almost looks like interconnected armor and thin lines on some occasions
Thin lines being demonstrated by arthropod limbs in general and in the skinny section of the wasp and the armor-like puzzle quality shown in lobsters as examples


Nunz: For that, you’d have to divide the convolution surfaces into sections and use subtractive convolution surfaces to make that effect.
To help imagine negative convolution surfaces:
image

Deus: Oh interesting. So you would subtract along the edges of where each segment is defined to make it look like its own piece? Reminds me of masking in sculpting or something.

Nunz: Yes

Deus: Sounds pretty clever. I’d think organisms with endoskeletons and soft-bodies would be somewhat similar in the underlying method but arthropods are the weird ones. So if they get figured out then the rest should be easier

Nunz: I guess in the end arthropods would use a line skeleton since they can’t move except at joints between sections.
Unless it’s a hybrid type of deal, then it would need checks to make sure some segments are converted to a curve and some aren’t.
Somebody should probably record this ideation in the forums.
:+1:

2 Likes