Top Banner
Blobby Modelling Alex Benton
24

Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

Jan 14, 2016

Download

Documents

Amos Johnston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

Blobby Modelling

Alex Benton

Page 2: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

What is it?

“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem more ‘organic’ or ‘blobby’ than conventional models built from flat planes and rigid angles”. --me

Page 3: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

Examples--

Paul Bourke (1997)

Page 4: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

Examples--

“New Train” - Wyvill

Page 5: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

Examples--

“Cabrit Model” - Wyvill

Page 6: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

Uses of Blobby Modelling

Organic forms and nonlinear shapesScientific modelling (electron

orbitals, some medical imaging)Muscles and joints with skinRapid prototypingCAD/CAM solid geometry

Page 7: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

How does it work?

Each point in space generates a field of force, which drops off as a function of distance from the point.

A blobby model is formed from the shells of these force fields, the implicit surface which they define in space.

Page 8: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

How does it work? (Bourke 1997)

Several force functions work well. Examples: “Blobby Molecules” - Jim Blinn

F(r) = a e-br2

Here ‘b’ is related to the standard deviation of the curve, and ‘a’ to the height.

Page 9: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

How does it work? (Bourke 1997)

Several force functions work well. Examples: “Metaballs” - Blinn again (I think)

F(r) = { a(1- 3r2 / b2) 0 <= r < b/3{ (3a/2)(1-r/b)2 b/3 <= r

< b{ 0 b <= r

Here ‘a’ is a scaling factor and ‘b’ bounds the radius of effect.

Page 10: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

How does it work? (Bourke 1997)

Several force functions work well. Examples: “Soft Objects” - Wyvill & Wyvill

F(r) = a(1 - 4r6/9b6 + 17r4/9b4 - 22r2 / 9b2)This function is basically the first few terms in

the series expansion of an exponential function.

‘a’ scales the function, and ‘b’ determines radius of influence.

Advantage : rapid computation.

Page 11: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

How does it work? (Bourke 1997)

Force functions comparison:

Page 12: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

How does it REALLY work?

Once you have your force function, the next task is to actually find the implicit surface.

You already know one technique for this : Marching Cubes.

However, marching cubes is very accurate and detailed; working at lower levels of precision is difficult.

Page 13: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

How does it REALLY work?

Introducing : OCTREES.An Octree is a recursive subdivision of

space which “homes in” on the surface, from larger to finer detail, and then uses similar techniques to Marching Cubes approximate the implicit surface with polygons.

Octrees can display initial approximations of the surface immediately.

Page 14: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

How does it REALLY work?

Because the octree is a cube in space, you evaluate the force function F(r) at each vertex of the cube.

This allows you to polygonalize the cube, in the same manner as Marching Cubes.

To refine the polygonalization, you subdivide the cube into eight subcubes, discarding any child whose vertices are all hot or all cold.

Page 15: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

How does it REALLY work?

Recursive subdivision:

Page 16: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

How does it REALLY work?

Recursive subdivision:

Page 17: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

How does it REALLY work?

Recursive subdivision:

Page 18: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

How does it REALLY work?

Find the edges, separating hot from cold:

Page 19: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

How does it REALLY work?

For each Octree with hot and cold corners, you can find the best-fitting polygons that approximate that surface. The edges of the polygons pass through points linearly interpolated along the edges of the cube. T = (0.5 - F(P1)) / (F(P2) - F(P1)) P = P1 + T * (P2 - P1)

Page 20: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

Pros and Cons

Benefits: Very rapid general shapes Allows rapid manipulation at multiple

levels of detail Surface complexity is not a function of

data complexity Enables a “poor man’s” solid geometry

Page 21: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

Pros and Cons

Downsides: Flat surfaces, sharp angles, etc. are

difficult Difficult to precisely achieve targetted

features “popping” between levels can be

misleading

Page 22: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

What else?

Complex primitives! Why settle for a point when you could

have a line? Or a spline?Colors and textures

The same math that blends forces can blend textures and colors as well.

Many other avenues of research currently open...

Page 23: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

YAMM (Yet Another Metaball Modeller)

YAMM is my hobby and research work.

It’s not polished software. It’s home made.

Available from J:\Staff Folders\Alex Benton\YAMM

Page 24: Blobby Modelling Alex Benton. What is it? z“Metaball, or ‘Blobby’, Modelling is a technique which uses implicit surfaces to produce models which seem.

Sources for more info...

http://astronomy.swin.edu.au/~pbourke/modelling/implicitsurf/ http://pages.cpsc.ucalgary.ca/~blob/ http://www.cs.wisc.edu/~schenney/courses/cs638-f2001/lectures/cs638-11.ppt -

Octrees D. Ricci

A Constructive Geometry for Computer GraphicsComputer Journal, May 1973

Jules BloomenthalPolygonization of Implicit SurfacesComputer Aided Geometric Design, Issue 5, 1988

Brian Wyvill, Craig McPheeters, Geoff WyvillAnimating Soft ObjectsThe Visual Computer, Issue 4 1986

Brian Wyvill, Craig McPheeters, Geoff WyvillSoft ObjectsAdvanced Computer Graphics (Proc. CG Tokyo 1986)