POV-Ray : Newsgroups : povray.general : 3dnoise: help me understand. Server Time
11 Aug 2024 03:29:22 EDT (-0400)
  3dnoise: help me understand. (Message 1 to 10 of 13)  
Goto Latest 10 Messages Next 3 Messages >>>
From: Greg M  Johnson
Subject: 3dnoise: help me understand.
Date: 5 Oct 1999 16:54:06
Message: <37FA64D8.6F1532FE@my-dejanews.com>
I'm having fun making flythroughs of the 3dnoise function in the
superpatch for povray.

I am trying to understand this mathematically.   If I use:
3dnoise(x,y,z)
I get something with a uniform distribution of porosity.  As the
threshold approaches 1.0, the percent porosity approaches 0 (% density
approaches 1.0).  However, if the threshold is 0.0, there is not 100%
porosity.

I want to understand how to change the radial density of the noise
function.  Suppose I want to make a sphere where the density approaches
0 at r=R.  How would I do this?  Intuitively, I might try:
3dnoise(x^0.5,y^0.5,z^0.5)
. So far, nothing is yielding precisely the results I'm looking for.


Post a reply to this message

From: Buckaroo Bill
Subject: Re: 3dnoise: help me understand.
Date: 5 Oct 1999 18:13:54
Message: <37fa7822@news.povray.org>
I am probably the wrong person to answer this, since I don't understand the
question.  But I just figured out something about noise3d that maybe you
already know but if not.. maybe it will help, it might even be correct.

noise3d<x,y,z>  gives one iteration of noise acros each face.
noise3d<x*3, y*3, z*3> gives three.
noise3d<x*3, y*3, z*3> *0.5 gives half the depth,
noise3d<x*3, y*3, z*3> *5.0 gives five times the depth

At least that is what it seems like. See "Noise3d" in p.b.i.


Greg M. Johnson <gre### [at] my-dejanewscom> wrote in message
news:37FA64D8.6F1532FE@my-dejanews.com...
> I'm having fun making flythroughs of the 3dnoise function in the
> superpatch for povray.
>
> I am trying to understand this mathematically.   If I use:
> 3dnoise(x,y,z)
> I get something with a uniform distribution of porosity.  As the
> threshold approaches 1.0, the percent porosity approaches 0 (% density
> approaches 1.0).  However, if the threshold is 0.0, there is not 100%
> porosity.
>
> I want to understand how to change the radial density of the noise
> function.  Suppose I want to make a sphere where the density approaches
> 0 at r=R.  How would I do this?  Intuitively, I might try:
> 3dnoise(x^0.5,y^0.5,z^0.5)
> . So far, nothing is yielding precisely the results I'm looking for.
>
>
>


Post a reply to this message

From: Greg M  Johnson
Subject: Re: 3dnoise: help me understand.
Date: 5 Oct 1999 19:16:09
Message: <37FA8615.F61BA986@my-dejanews.com>
Yes, you are linearly scaling the structure. Your density will not change as a
function of position if you make scalar operations like those.  I want to make
a sphere that is "100% dense" at r=0, but gradually tapers off to zero or a
minimum density at r=some R.   This is easy to do with media.

Where does 3dnoise come from? It's not in the superpatch docs or documented
anywhere that I know of...

Buckaroo Bill wrote:

> I am probably the wrong person to answer this, since I don't understand the
> question.  But I just figured out something about noise3d that maybe you
> already know but if not.. maybe it will help, it might even be correct.
>
> noise3d<x,y,z>  gives one iteration of noise acros each face.
> noise3d<x*3, y*3, z*3> gives three.
> noise3d<x*3, y*3, z*3> *0.5 gives half the depth,
> noise3d<x*3, y*3, z*3> *5.0 gives five times the depth
>
> At least that is what it seems like. See "Noise3d" in p.b.i.
>
> Greg M. Johnson <gre### [at] my-dejanewscom> wrote in message
> news:37FA64D8.6F1532FE@my-dejanews.com...
> > I'm having fun making flythroughs of the 3dnoise function in the
> > superpatch for povray.
> >
> > I am trying to understand this mathematically.   If I use:
> > 3dnoise(x,y,z)
> > I get something with a uniform distribution of porosity.  As the
> > threshold approaches 1.0, the percent porosity approaches 0 (% density
> > approaches 1.0).  However, if the threshold is 0.0, there is not 100%
> > porosity.
> >
> > I want to understand how to change the radial density of the noise
> > function.  Suppose I want to make a sphere where the density approaches
> > 0 at r=R.  How would I do this?  Intuitively, I might try:
> > 3dnoise(x^0.5,y^0.5,z^0.5)
> > . So far, nothing is yielding precisely the results I'm looking for.
> >
> >
> >


Post a reply to this message

From: Jerome M  BERGER
Subject: Re: 3dnoise: help me understand.
Date: 5 Oct 1999 19:18:39
Message: <37FA8744.3901A72C@enst.fr>
"Greg M. Johnson" wrote:
> 
> I'm having fun making flythroughs of the 3dnoise function in the
> superpatch for povray.
> 
> I am trying to understand this mathematically.   If I use:
> 3dnoise(x,y,z)
> I get something with a uniform distribution of porosity.  As the
> threshold approaches 1.0, the percent porosity approaches 0 (% density
> approaches 1.0).  However, if the threshold is 0.0, there is not 100%
> porosity.
> 
> I want to understand how to change the radial density of the noise
> function.  Suppose I want to make a sphere where the density approaches
> 0 at r=R.  How would I do this?  Intuitively, I might try:
> 3dnoise(x^0.5,y^0.5,z^0.5)
> . So far, nothing is yielding precisely the results I'm looking for.

	noise3d (x*f, y*f, z*f)*(R-sqrt(x^2+y^2+z^2)) where f adjusts the
regularity of the noise (the smaller, the smoother). Note that this will
give you some noise outside the sphere too, to avoid this, you could use
noise3d (...)*max(0, R-sqrt(...)) instead.

		Jerome

-- 
*******************************

* they'll tell you what can't * mailto:ber### [at] inamecom
* be done and why...          * http://www.enst.fr/~jberger
* Then do it.                 *
*******************************


Post a reply to this message

From: Ron Parker
Subject: Re: 3dnoise: help me understand.
Date: 5 Oct 1999 21:09:03
Message: <slrn7vkn7t.56p.parkerr@linux.parkerr.fwi.com>
On Tue, 05 Oct 1999 19:13:26 -0400, Greg M. Johnson wrote:
>Where does 3dnoise come from? It's not in the superpatch docs or documented
>anywhere that I know of...

That must be an omission.  It's been in there since the original isosurface
patch, where it was (marginally) documented.  I must have just missed it,
along with cool things like &, |, and %.


Post a reply to this message

From: Greg M  Johnson
Subject: Re: 3dnoise: help me understand.
Date: 5 Oct 1999 21:18:16
Message: <37faa358@news.povray.org>
noise3d (x*f, y*f, z*f)*(R-sqrt(x^2+y^2+z^2))

Nope.  This is a solid sphere.
I've used R=500 and a dozen orders of magnitude for f.

I've had a little luck with adding an "*f" term to the right side.  But this
is not the concept, although intuitively the math must be VERY CLOSE....


"Jerome M. BERGER" wrote:

> "Greg M. Johnson" wrote:
> >
> > I'm having fun making flythroughs of the 3dnoise function in the
> > superpatch for povray.
> >
> > I am trying to understand this mathematically.   If I use:
> > 3dnoise(x,y,z)
> > I get something with a uniform distribution of porosity.  As the
> > threshold approaches 1.0, the percent porosity approaches 0 (% density
> > approaches 1.0).  However, if the threshold is 0.0, there is not 100%
> > porosity.
> >
> > I want to understand how to change the radial density of the noise
> > function.  Suppose I want to make a sphere where the density approaches
> > 0 at r=R.  How would I do this?  Intuitively, I might try:
> > 3dnoise(x^0.5,y^0.5,z^0.5)
> > . So far, nothing is yielding precisely the results I'm looking for.
>
>         noise3d (x*f, y*f, z*f)*(R-sqrt(x^2+y^2+z^2)) where f adjusts the
> regularity of the noise (the smaller, the smoother). Note that this will
> give you some noise outside the sphere too, to avoid this, you could use
> noise3d (...)*max(0, R-sqrt(...)) instead.
>
>                 Jerome
>
> --
> *******************************

> * they'll tell you what can't * mailto:ber### [at] inamecom
> * be done and why...          * http://www.enst.fr/~jberger
> * Then do it.                 *
> *******************************


Post a reply to this message

From: Ron Parker
Subject: Re: 3dnoise: help me understand.
Date: 5 Oct 1999 21:25:22
Message: <slrn7vko6h.56p.parkerr@linux.parkerr.fwi.com>
On Tue, 05 Oct 1999 20:44:13 -0400, Greg M. Johnson <> wrote:
>noise3d (x*f, y*f, z*f)*(R-sqrt(x^2+y^2+z^2))
>
>Nope.  This is a solid sphere.
>I've used R=500 and a dozen orders of magnitude for f.
>
>I've had a little luck with adding an "*f" term to the right side.  But this
>is not the concept, although intuitively the math must be VERY CLOSE....

Try adding some linear function of the radius instead of multiplying.
As you shift the "field" of noise3d through the threshold value it 
will appear to cause the "solid" chunks to grow and shrink.  

What you get also depends on what threshold you use; if you use zero 
with the above formula you'll always get a solid sphere.


Post a reply to this message

From: Jerome M  BERGER
Subject: Re: 3dnoise: help me understand.
Date: 5 Oct 1999 21:32:20
Message: <37FAA694.62A743B4@enst.fr>
"Greg M. Johnson" wrote:
> 
> noise3d (x*f, y*f, z*f)*(R-sqrt(x^2+y^2+z^2))
> 
> Nope.  This is a solid sphere.
> I've used R=500 and a dozen orders of magnitude for f.
> 
> I've had a little luck with adding an "*f" term to the right side.  But this
> is not the concept, although intuitively the math must be VERY CLOSE....
> 
	What about noise3d(...)-sqrt(...)/R ?

		Jerome

-- 
*******************************

* they'll tell you what can't * mailto:ber### [at] inamecom
* be done and why...          * http://www.enst.fr/~jberger
* Then do it.                 *
*******************************


Post a reply to this message

From: Greg M  Johnson
Subject: Re: 3dnoise: help me understand.
Date: 5 Oct 1999 21:36:43
Message: <37faa7ab@news.povray.org>
Whaaaaa. I give up.  Could you or Jerome provide an idiot's version that I could
just cut and paste, including threshold, etc.etc.etc.etc.

Even more confused.  I either get

A) cool-looking uniform coral-like(*) stuff, OR
B) a solid sphere.

Nothing inbetween.

Ron Parker wrote:

> On Tue, 05 Oct 1999 20:44:13 -0400, Greg M. Johnson <> wrote:
> >noise3d (x*f, y*f, z*f)*(R-sqrt(x^2+y^2+z^2))
> >
> >Nope.  This is a solid sphere.
> >I've used R=500 and a dozen orders of magnitude for f.
> >
> >I've had a little luck with adding an "*f" term to the right side.  But this
> >is not the concept, although intuitively the math must be VERY CLOSE....
>
> Try adding some linear function of the radius instead of multiplying.
> As you shift the "field" of noise3d through the threshold value it
> will appear to cause the "solid" chunks to grow and shrink.
>
> What you get also depends on what threshold you use; if you use zero
> with the above formula you'll always get a solid sphere.

(*) Whoa: cool idea for underwater scene........


Post a reply to this message

From: Greg M  Johnson
Subject: Re: 3dnoise: help me understand.
Date: 5 Oct 1999 21:39:48
Message: <37faa864@news.povray.org>
SPHERE!

"Jerome M. BERGER" wrote:

> "Greg M. Johnson" wrote:
> >
> > noise3d (x*f, y*f, z*f)*(R-sqrt(x^2+y^2+z^2))
> >
> > Nope.  This is a solid sphere.
> > I've used R=500 and a dozen orders of magnitude for f.
> >
> > I've had a little luck with adding an "*f" term to the right side.  But this
> > is not the concept, although intuitively the math must be VERY CLOSE....
> >
>         What about noise3d(...)-sqrt(...)/R ?
>
>                 Jerome
>
> --
> *******************************

> * they'll tell you what can't * mailto:ber### [at] inamecom
> * be done and why...          * http://www.enst.fr/~jberger
> * Then do it.                 *
> *******************************


Post a reply to this message

Goto Latest 10 Messages Next 3 Messages >>>

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.