ok, its a long time. so some thoughts on implicit surfaces and their topology. so why do we talk about it in first place, its becouse of its ugly topology. metaballs are so cool, but hardly usable in animations and in other fields cos of irregular and ever chaging mesh topology, so what do we do? lets think.

first, a description of implicit surface as i understand it.

2.2.3 Implicit surfaces (Bloomenthal 1987)

Implicit surfaces are also known as “Metaballs”, “Blobbies” or “Soft objects”.

Implicit surface is a technique first introduced by Jim Blinn in 1980. The idea is to have control objects, which determine the resulting surface. Each control object generates a sphere around itself. When two or more controller objects are close together, the resulting surface will “melt” together. So instead of two spheres one will have two spheres which are connected and form a “blobby” single surface shape. How much the resulting surfaces blob together is a result of distances from controlling objects and of weights of these control objects. (Maestri. 1999 43-44)

so i had few ideas on the matter. pls look at a picture and tell me what u think.

ok. now as far as i understand the poligonization of such mathematical substance :) as metaball, it works like this (and pls correct me if i am wrong) the algorithm “checks” certain points in worldspace to see if that point is in or outside of this mathematical descriptio0n of metaballsurface. so basically, user determines “resolution” or level of detail he or she wants, and based on that, algorithm generates planes, to see where are boundaroes of this object in that particular plane. and planes are generated in x, y, and z. so pls look at picture beneath. so what i thought of is, why user is not able to determine how these planes are distributed and aligned? why dont we have such simple control as in uv ordinates, u know we would choose box, cilinder, sphere just like in uv layout (imagine box uv layout as a traditional plane distribution for imlicitsurfaces).

so people who have read, and understood, some of papers about implicit surfaces, including old john blinns texts, tell me do i bulshit or that could be a very small step towards better topology?

and some links to read more: here

and as usual link to my other website here


9 thoughts on “implicit surfaces, aka blob mesh, and metaballs.

  1. Yeah, that’s a pretty good way of looking at it. Should be possible, not even that difficult really.

    You’ll want to look into the marching cubes algorithm, which is what produces the actual triangles from the implicit surfaces. Modifying that to sample cylindrically should be pretty straightforward, except at the degenerate pole, where you might need to add a few cases for the triangles at the top.

  2. hay, Finnigan, thank you very much for comment.
    but tell me, if this idea is any good, i mean, its nice to hear its possible, but do u think it could be beneficial to implement?
    and if so why no one did?
    any other opinions?

  3. You have a good idea. Usually these methods (like you saw on my website) are automatic, based on regular sampling of a grid. More recent versions, like Dual Marching Cubes try to adaptively refine to hold detail, but still try to use sampling heuristics to work out the best topology.

    Your idea recognizes that if an artist made the shape, or can study it, the artist should be able to make a better judgement than a heuristic algorithm on how to perform sampling.

    I think that the reason no one has attempted such an approach is that blobbies are not often used in art pipelines for reconstructing surfaces. Medical graphics use marching cubes, but their data is already in a grid, and if they need better topology they just increase the fineness of the sampling.

    Perhaps your idea would make blobbies more popular as a modeling tool. If you try it, you should imagine a user interface that does not involve tons of clicking by the user, I think.

  4. I think you are missing some big points.

    First metaballs are *implemented* as a implicit surface. An implicit surface is a surface that uses a math equation to, well impilitiy define a surface.


    The surface is where this equation is true. In this case it is a sphere.

    There are different ways to visualize such a surface. On way is to polygonize it. In POV ray and AoI you can directly ray trace the surface so there are no polygones.

    But the plane thing you are getting is due to the marching cubes algo. There are others that don’t result with cutting planes aligned with the global/local. Also you can “filter” the mesh after polygonization as well to smooth out the “poping”.

    And this is where your idea has problems. If i animate the metaballs then it still will generate poping. So your are back to subdividing enough to make that invisible.

    As per your comment that I should do my code for blender. I in fact use blender *a lot* and have used it since the NaN days. But its all C/C++ (reasonably readable) and I really don’t want to go back to coding that stuff.

  5. Oh further to that comment. Once you have more than two blobies and they are not in a line. There will not be a coordinate system that will work for all blobies.

    In your example, it works because there is rotational symmetry. But this is hardly the norm.

  6. hey Deltor, i see your point. thinking abut it, and hope i will come up with some improvements to my proposal. btw, out of topick question , if someone could or would take time to write, what is
    * Pingback
    and * Trackback
    why people write coments like the first one on this post?

  7. In general, it’s too difficult to animate blobby objects and have any kind of decent meshes.

    I think the goal was more to use blobby objects as a modeling tool – I don’t think two different blobby shapes in the same scene is an issue, you just mesh each separately. maantas’ idea is just to get meshes that aren’t so completely horrible out of blobby models, and I think it would work pretty well for that.

    As for the pingback and trackback, it’s your blogging software notifying you that someone posted on their blog about your blog. In this case, it’s spam (splog).

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s