From: ph+@cs.cmu.edu (Paul Heckbert)
Subject: Re: Meta Balls
Keywords: meta balls, blob, implicit surface, soft object
Organization: School of Computer Science, Carnegie Mellon
Date: Mon, 9 Nov 1992 16:33:36 GMT

>pugliese@ghost.dsi.unimi.it (Marco Pugliese) writes:
> In the No. 1 (sept./oct. 1992) of Tech Images Internationales, they talk
> about "meta ball", a unique primitive that makes smooth-surfaced images,

Here are the papers I know about.
I'm sure this isn't a complete bibliography, however.
I'll point out some of the differences in terminology as I summarize the
papers below.

A BRIEF HISTORY OF BLOBBY MODELING

People have known for a long time that if you have two implicit surfaces
f(x,y,z)=0 and g(x,y,z)=0 that are fairly continuous, with a common
sign convention (f and g positive on the inside, negative on the outside, say)
then the implicit surface defined by f+g=0 is a blend of the shapes.
See [Ricci 1983] for a variant of this.

The van der Waals surfaces of molecules (roughly speaking,
iso-potentials of the electron density) are described
in Chemistry and Physics books and [Max 1983].
To create animation of DNA for Carl Sagan's COSMOS TV Series,
Jim Blinn proposed approximating each atom by a Gaussian potential, and
using superposition of these potentials to define a surface.  He ray
traced these [Blinn 1982], and called them "blobby models".

Shortly thereafter, people at Osaka University and at Toyo Links in Japan
began using blobby models also.  They called theirs "metaballs"
(or, when misspelled, "meatballs").  Yoichiro Kawaguchi became a big
user of their software and their Links parallel processor machine to
create his "Growth" animations which have appeared in the SIGGRAPH film show
over the years.  The graduate students implementing the metaball software
under Koichi Omura at Osaka used a piecewise quadratic approximation to
the Gaussian, however, for faster ray-surface intersection testing
(no need for iterative root finders; you just solve a quadratic).
I don't know of any papers by the Japanese on their blobby modeling
work, which is too bad, because they have probably pushed the technique
further than anyone.

Bloomenthal has discussed techniques for modeling organic forms (trees,
leaves, arms) using blobby techniques [Bloomenthal 1991]
(though he prefers the term "implicit modeling") and for polygonizing
these using adaptive, surface-tracking  octrees [Bloomenthal 1988].
The latter algorithm is not limited to blobby models, but works for any
implicit model, not just blobs.
Polygonization allows fast z-buffer renderers to be used instead of
ray tracers, for interactive previewing of shapes.
A less general variant of this algorithm was described in the "marching cubes"
paper by [Lorensen 87] and some bugs in this paper have been discussed
in the scientific visualization community in the years since.
In the sci-vis community, people call them "iso-surfaces" not
"implicit surfaces".

Meanwhile, in Canada and New Zealand, the Wyvill brothers, and grad
students, were doing investigating many of the same ideas: approximations
of Gaussians, animation, and other ideas.  See their papers listed below.
Rather than "blobbies" or "metaballs", they called their creations
"soft objects".  But it's really the same idea.

Bloomenthal and Wyvill collected many good papers on blobby and implicit
modeling for a recent SIGGRAPH tutorial (1991?).

-Paul

Paul Heckbert						    ph@cs.cmu.edu
Computer Science Dept., Carnegie Mellon University
5000 Forbes Ave, Pittsburgh PA 15213-3891, USA

--

%A A. Ricci
%T A Constructive Geometry for Computer Graphics
%J Computer Journal
%V 16
%N 2
%D May 1973
%P 157-160
%K blob, CSG

%A Nelson L. Max
%T Computer Representation of Molecular Surfaces
%J IEEE Computer Graphics and Applications
%V 3
%N 7
%D Aug. 1983
%P 21-29
%O reprinted in Nicograph '83 Proceedings, 1983, pp. 323-331.

%A James F. Blinn
%T A Generalization of Algebraic Surface Drawing
%J ACM Trans. on Graphics
%V 1
%N 3
%D July 1982
%P 235-256
%Z ray tracing "blobby" models: finding roots of sums of gaussians
%K ray tracing, blob, root finding

%A Paul S. Heckbert
%T Fun With Gaussians
%R (3DTM 12, NYIT Computer Graphics Lab, Mar. 1985)
%B SIGGRAPH '86 Advanced Image Processing seminar notes
%D Aug. 1986
%K filter, image processing, interpolation, spline, blob
%Z includes very brief discussion of approximating a Gaussian with
piecewise quadratic for faster ray tracing of blobby models

%A Jules Bloomenthal
%T Polygonization of Implicit Surfaces
%J Computer Aided Geometric Design
%V 5
%D 1988
%P 341-355
%K implicit, parametric, surface, blob

%A Jules Bloomenthal
%A Ken Shoemake
%T Convolution Surfaces
%J Computer Graphics
(SIGGRAPH '91 Proceedings)
%V 25
%N 4
%D July 1991
%P 251-256
%K blob, implicit model

%A William E. Lorensen
%A Harvey E. Cline
%T Marching Cubes: A High Resolution 3D Surface Reconstruction Algorithm
%J Computer Graphics
(SIGGRAPH '87 Proceedings)
%V 21
%N 4
%D July 1987
%P 163-170
%I implicit surface, isosurface

%A Brian Wyvill
%A Craig McPheeters
%A Geoff Wyvill
%T Data Structure for Soft Objects
%J The Visual Computer
%V 2
%N 4
%D 1986
%P 227-234
%K blob

%A Brian Wyvill
%A Craig McPheeters
%A Geoff Wyvill
%T Animating Soft Objects
%J The Visual Computer
%V 2
%N 4
%D 1986
%P 235-242
%K blob
%Z animating blobs

%A Brian Wyvill
%A Geoff Wyvill
%T Using Soft Objects in Computer Generated Animation
%B ?
%I Springer Verlag
%D 1986

%A Geoff Wyvill
%A Brian Wyvill
%A Craig McPheeters
%T Soft Objects
%B Advanced Computer Graphics (Proc. CG Tokyo 1986)
%D 1986
%P 113-128
%K blob

%A Geoff Wyvill
%A Brian Wyvill
%A Craig McPheeters
%T Solid Texturing of Soft Objects
%B CG International '87
%C Tokyo
%D May 1987

%A Brian Wyvill
%A Geoff Wyvill
%T Field Functions for Implicit Surfaces
%J Visual Computer
%V 5
%D 1989
%P 75-82
%K blob

%A Peter Burger
%A Duncan Gillies
%T Interactive Computer Graphics: Functional, Procedural,
and Device-Level Methods
%I Addison-Wesley
%C Wokingham, England
%D 1989
%Z color image quantization, quaternions, soft objects
this is a textbook
Newsgroups: comp.graphics