Experiments with Implicit Surfaces


Implicit surfaces allow for interesting models to be created from simple primitives. These are some experiments I’ve done exploring the usage of implicit surfaces for modeling.

One of the problems with implicit surfaces is the “blobbiness” that occurs at the intersection of line segment primitives. Here are the results of varying the isolevel and the “offset”, where the line is pulled back slightly from the intersection.


And at the intersection of 3 lines:


The previous two images used the field function 1 / r². I also experimented with the “Soft Objects” function by the Wyvill brothers, which is also listed on Paul Bourke’s Implicit Surfaces page. This time I vary isolevel and the b parameter.


One of my goals was to achieve a “webbed” effect between line segments. I attempted to achieve this by using a force function that sums the dot product of every pair of vectors to each primitive. This somewhat works, but is much much slower because of number of calculations required for each point in space, and I still wasn’t able to quite get the effect I was looking for.



The second model (the “web”) took over 6 minutes to generate.

I also experimented with field functions that take into account where “on” the line segment the point is.



Leave a Reply

Your email address will not be published. Required fields are marked *