Page 1 of 2

Implicit surfaces

Posted: Fri Apr 20, 2012 1:10 pm
by lycium
I've been working on experimental support for implicit surfaces in Indigo the last couple of days after hours, and there's a reference implementation now (pictured here). Thanks to Fused for the late-night modelling help! :D

This object is the tanglecube: http://mathworld.wolfram.com/Tanglecube.html

To-do:

1. Hook up ISL/Winter evaluation (0-based potential function for position+time)
2. Render some 3D fractals with Indigo 8)

Re: Implicit surfaces

Posted: Fri Apr 20, 2012 1:27 pm
by CTZn
Do you mean that the surface is never approximated using triangles ? How much parametric is what we see here ? *incredulous*

edit: I sense the big thing, like infinitely smooth surfaces with a small memory footprint, integral nurbs support and crazy stuff like that ? Astonishing then !

Re: Implicit surfaces

Posted: Sat Apr 21, 2012 1:16 pm
by lycium
It's for a (theoretically) black-box implicit surface where you define a potential function for (x,y,z,t) that's postive outside, negative inside and 0 on the boundary. the normal is everywhere the gradient of this potential function.

Work on this is suspended until certain important other work is done tho :wink:

Re: Implicit surfaces

Posted: Sat Apr 21, 2012 2:10 pm
by FakeShamus
Oh man, awesome possiblities though.
procedural mountains and landscapes somewhere in the future, maybe?

Re: Implicit surfaces

Posted: Sat Apr 21, 2012 2:18 pm
by lycium
All kinds of procedural stuff is possible :) The big push for this is procedural planets, but see the attached images for examples of other implicit surfaces i rendered some years ago...

Re: Implicit surfaces

Posted: Thu Apr 26, 2012 8:05 am
by subpixel
Great work!
I would love to see implicit blob surfaces or hair primitives (hopefully supporting deformation blur).
Any information on incorporation to Indigo?

Re: Implicit surfaces

Posted: Thu Apr 26, 2012 10:51 am
by Headroom
I love that sort of abstract fractal art. Great stuff lycium!!!

Re: Implicit surfaces

Posted: Thu Apr 26, 2012 6:41 pm
by Zom-B
The interesting part here is how a user can export stuff from his 3D app into something controllable & useful...

Re: Implicit surfaces

Posted: Tue May 01, 2012 12:29 am
by lycium
I've done some more work this past weekend on making implicits a normal object type (alongside the sphere etc) with proper XML tags, however it's still a ways from being integrated into a normal Indigo build. It's now also working with an ISL potential function, which is where all the flexibility will be coming from! I'll drop a replacement Indigo.exe here first for those brave explorers wishing to try it early, however ;)

Finally, about the "practicality" of this implementation: it's not intended to be an important core feature, and it surely won't be the way to render NURBS or subdivision surfaces directly, besides which I'm not aware of any 3D modelling packages which directly support general implicit surfaces in this way. So its "practical" use is quite limited, in a sense.

Re: Implicit surfaces

Posted: Tue May 01, 2012 2:55 am
by CTZn
lycium wrote:Finally, about the "practicality" of this implementation: it's not intended to be an important core feature, and it surely won't be the way to render NURBS or subdivision surfaces directly
I hoped it would but that's still intriguing !
lycium wrote:besides which I'm not aware of any 3D modelling packages which directly support general implicit surfaces in this way.
Not even Maya I recon. Comparison doesn't hold reason however ;)

Okay, is it possible for instance to generate a bunch 3d peebles via ISL with this implementation ? Peebles, because they're simple enough to define usually.

Looking forward for this new ground to be explored !

Re: Implicit surfaces

Posted: Sun May 06, 2012 5:52 am
by Cheesestraws
Houdini supports this.

Image

Re: Implicit surfaces

Posted: Sun May 06, 2012 12:05 pm
by lycium
Cheesestraws wrote:Houdini supports this.
Awesome! That's great to know, and Houdini looks really interesting 8)

Re: Implicit surfaces

Posted: Thu Aug 16, 2012 5:24 am
by kalyan
Hi lycium,

Could you post the equations for the implicit surfaces which you rendered...Thanks..

Re: Implicit surfaces

Posted: Fri Sep 14, 2012 5:29 am
by lycium
Hi kalyan, welcome to the forum! The equation used for the first image is actually referenced in the original post: http://mathworld.wolfram.com/Tanglecube.html

For the others, they are highly experimental (and procedural, i.e. not fully algebraic) ones hacked into a rendering system of mine I worked on before coming to work on Indigo.

edit: Clarified which ones I haven't got equations for.

Re: Implicit surfaces

Posted: Fri Sep 14, 2012 5:53 am
by galinette
lycium wrote:2. Render some 3D fractals with Indigo 8)
lycium wrote: the normal is everywhere the gradient of this potential function.
Hmmm... How do you define the gradient of a fractal? :roll: