POV-Ray : Newsgroups : povray.binaries.images : craters : Re: craters Server Time
3 Oct 2024 17:16:17 EDT (-0400)
  Re: craters  
From: Mike Williams
Date: 2 Jan 2000 03:53:37
Message: <46+5hKAdGxb4EwVi@econym.demon.co.uk>
Wasn't it Remco de Korte who wrote:
>The attached image is not raytraced, it's a snapshot of the preview
>window of a utility that is supposed to create planet(oid)s and add
>craters and stuff. I tried doing this in POVRay but it took days to
>parse at a reasonable resolution. In this case a preview only takes a
>couple of minutes with the displaying part being the most time
>consuming. 
>Finally I ran into problems with the amount of data. Apparently the
>program can't handle datastreams larger then 8(?)/10(?)/16(?)Mb (I don't
>know exactly what the limit is) and the resulting files are enormous.
>The example here has some 130000 triangles, which is more or less the
>maximum, but it still doesn't look quite right.
>The program is supposed to write all data to an inc-file with either a
>couple of data-arrays or a mesh, but I'm afraid the filesize will be a
>problem.

I'd try to approach it with an isosurface made up of a sphere, a few
leopard pigments, and a bit of noise. Something like this:-


#declare Crater=pigment {
  leopard 
  color_map { [0 rgb 1]
              [0.2 rgb 1]
              [0.3 rgb 0]
              [0.4 rgb 1]
              [1 rgb 1] }
}

#declare Sphere=function{"Sphere",<1>}
#declare C1=function{pigment{Crater scale 0.04}}
#declare C2=function{pigment{Crater scale 0.07}}
#declare C3=function{pigment{Crater scale 0.10}}
#declare C4=function{pigment{Crater scale 0.20}}


  isosurface {
  function { Sphere(x,y,z)
             +C1(x,y,z)*0.005
             +C2(x,y,z)*0.01
             +C3(x,y,z)*0.005
             +C4(x,y,z)*0.01
             +noise3d(x*100,y*100,z*100)*0.003
   }
  eval
  accuracy 0.001
  bounded_by{sphere{0,1}}
  pigment {rgb 0.5}
  }




-- 
Mike Williams + #
Gentleman of Leisure


Post a reply to this message

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