POV-Ray : Newsgroups : povray.advanced-users : Isosurface planets Server Time
29 Jul 2024 12:28:33 EDT (-0400)
  Isosurface planets (Message 1 to 4 of 4)  
From: Rohan Bernett
Subject: Isosurface planets
Date: 28 Jul 2002 22:10:01
Message: <web.3d44a3c1a584b11ed02c7b870@news.povray.org>
I made a planet using an isosurface using f_sphere and f_noise3d, and the
resulting ball was smaller than the radius of the sphere specified in the
function. As more levels of noise were added, the ball became smaller
still.

The function I used was something like this:
function{
f_sphere(x,y,z,6400000)+100000*f_noise3d(x/100000,y/100000,z/100000)}

Any ideas on why this happens, or how to get around it?

Rohan _e_ii


Post a reply to this message

From: Mike Williams
Subject: Re: Isosurface planets
Date: 29 Jul 2002 01:43:33
Message: <Yf896CAwUNR9EwXw@econym.demon.co.uk>
Wasn't it Rohan Bernett who wrote:
>I made a planet using an isosurface using f_sphere and f_noise3d, and the
>resulting ball was smaller than the radius of the sphere specified in the
>function. As more levels of noise were added, the ball became smaller
>still.
>
>The function I used was something like this:
>function{
>f_sphere(x,y,z,6400000)+100000*f_noise3d(x/100000,y/100000,z/100000)}
>
>Any ideas on why this happens, or how to get around it?

That's exactly what you should expect.

Each time you add some noise, the value of the function at any
particular point increases, so the location where the value of the
function is equal to the threshold moves inwards.

One way to fix this would be to increase the value of "threshold" to
allow for the average value of the noise function. The
"+100000*f_noise3d(..." adds an average of 50000 to the value of the
function, so set "threshold 50000".

Another way to do it is to replace the calls to f_noise3d() by
0.5*f_snoise3d(). f_snoise3d() returns noise values in the range [-1,1]
instead of [0,1] so the average value of noise added is zero.

-- 
Mike Williams
Gentleman of Leisure


Post a reply to this message

From: Christopher James Huff
Subject: Re: Isosurface planets
Date: 29 Jul 2002 10:01:54
Message: <chrishuff-DF8D64.08544929072002@netplex.aussie.org>
In article <web.3d44a3c1a584b11ed02c7b870@news.povray.org>,
 "Rohan Bernett" <rox### [at] yahoocom> wrote:

> I made a planet using an isosurface using f_sphere and f_noise3d, and the
> resulting ball was smaller than the radius of the sphere specified in the
> function. As more levels of noise were added, the ball became smaller
> still.
> 
> The function I used was something like this:
> function{
> f_sphere(x,y,z,6400000)+100000*f_noise3d(x/100000,y/100000,z/100000)}
> 
> Any ideas on why this happens, or how to get around it?

The surface is displaced, so the sphere has to either get bigger or 
smaller anywhere the noise function is not equal to 0. As you use more 
levels of noise, the number of areas that equal 0 get fewer and fewer.
By adding to the sphere function, the points where the threshold value 
is reached get pushed further toward the center of the sphere. 
Subtracting would pull them outward. Just compensate by adjusting the 
sphere radius or by subtracting half the peak noise level from the 
function (this will makes some areas depressions and other areas 
mountains).

BTW, an isosurface doesn't seem like a good idea for a planet...for most 
planets, the largest features are tiny bumps on the surface.

-- 
Christopher James Huff <chr### [at] maccom>
POV-Ray TAG e-mail: chr### [at] tagpovrayorg
TAG web site: http://tag.povray.org/


Post a reply to this message

From: Rohan Bernett
Subject: Re: Isosurface planets
Date: 29 Jul 2002 23:51:02
Message: <web.3d460d1d42feadbdd02c7b870@news.povray.org>
Christopher James Huff wrote:
>
>BTW, an isosurface doesn't seem like a good idea for a planet...for most
>planets, the largest features are tiny bumps on the surface.
>

It looks good when you're near the surface of the planet though, with a
realistically curving sky and landscape. And you can go and fly right round
the planet! :-)

Rohan _e_ii


Post a reply to this message

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