POV-Ray : Newsgroups : povray.animations : Isosurface 'water' but it goes concave : Isosurface 'water' but it goes concave Server Time
28 Jul 2024 10:25:11 EDT (-0400)
  Isosurface 'water' but it goes concave  
From: John D  Gwinner
Date: 7 Jul 2001 17:02:09
Message: <3b4778d1$1@news.povray.org>
Folks:

  (modification of post in general)

  I'm trying to figure out the best way to do an aquarium.  I want to show
the 'ripple pattern' of light moving across the top surface of the water.  I
want this to be in effect
a clear block (with an IOR) with a 'wavy' top surface.

  The closest I have so far is an Isosurface, which looks good but when I
animate it I get something odd: 'phase' identifier in the wrinkles (or waves
or ripples) causes the surface to move *down* not across, so it causes a
concavity.  I tried different combinations of functions, rotations, etc. and
it doesn't seem to work.   An example - I replaced 'clock' in the phase with
a .5 so you can see what it looks like.

  It's a neat effect but it's not what I'm looking for ;-)

  Any suggestions?

         == John ==

#version unofficial MegaPov 0.7;

#declare R=1.0;
#declare R1=R+0.01;
#declare Box = 1;

camera { location  <5*R, 5*R, -8*R> look_at <0, 0, 0> angle 20}

sky_sphere { pigment {
    gradient y
    color_map { [0.0 color blue 0.6] [1.0 color rgb 1] }
  }
}

light_source {<100,200,-100> colour rgb 1}


#declare WaveDepth = .5;

#declare WrinklesFunc =
function {
    pigment {wrinkles phase .5 // clock
        color_map {[0 color rgb 0][1 color rgb 1]
        }

    turbulence .1
    }
}
isosurface {
    function {
        //sphere
        sqrt(sqr(x) + sqr(y) + sqr(z)) - 1 -
        // y - // the xy plane...
        WrinklesFunc(x, y, z) * WaveDepth
      }
    //contained_by{box <-R,-R/2,-R> <R, R, R>}
    contained_by{sphere <0,0,0> R*2 }


    pigment {rgb <.2 .2 .9 >}
    finish {phong 0.5 phong_size 10}
}


Post a reply to this message

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