|
![](/i/fill.gif) |
Le 2011/07/16 18:09, David Given a écrit :
>
> Here's a fascinatingly failed attempt to perturb the spheres into random
> locations:
>
> http://twitpic.com/5r9ejh/full
>
> #declare f_obj = function(x,y,z) {f_sphere(x,y,z,0.05)}
> #declare f_grid = function(x,y,z) {f_obj(2*f_noise3d(x, y, z)-1, y,
> 2*f_noise3d(x, y, z)-1)}
>
> Which is cool, and an effect worth remembering, but not what I was
> looking for.
In this case, the f_noise3d functions overwhelm the base sphere.
>
> I've been having a look at pigment functions instead; as I can think
> about these in a forwards direction I'm having better luck. I can create
> a perturbed terrain that's just below my planet's surface which sticks
> out above at particular points. Given that my trees are only going to be
> viewed from a distance, extended ovoids will do fine, and something like
> crackle would help here.
>
> This just gives me the problem of how to try and vary the density of
> trees according to some external function (probably going to be a
> heightmap lookup table combined with random noise). This requires me to
> make my crackle lumps get closer or further apart from each other. So
> far this is evading me...
>
> Here's another interesting image I managed to generate:
>
> http://twitpic.com/5r29s1/full
>
> The isosurface that's modelling the spheres is, more or less:
>
> terrain - 10m + leopard(x, y, z)
>
> Leopard produces a rectilinear grid of blobs, and right now the camera's
> at about 20⁰N, so you can see the lines are all slanted. (Life would be
> so, *so* much easier if planets were flat.) The blobs are all about 100m
> across, and I hate to think how many of them are visible in that image.
>
Counting the ones that are sub pixel sized (intrinsic size or distance),
the ones that are hiden by others or the terrain... It can easily exceed
a few millions ;)
You can use a warp{spherical} to wrap your pattern around a sphere.
A warp{cylindrical} may also be interesting.
Post a reply to this message
|
![](/i/fill.gif) |