POV-Ray : Newsgroups : povray.general : Help with still water effects Server Time
2 Aug 2024 14:17:43 EDT (-0400)
  Help with still water effects (Message 1 to 3 of 3)  
From: Ghost Dog
Subject: Help with still water effects
Date: 27 Oct 2004 04:45:01
Message: <web.417f5fc5229b5bef563d27f50@news.povray.org>
I'm kind of stuck. I'm doing a Pov that's sort of a cell. in it, a chess
board sits on a plain pedestal. There is a rusty pipe that is filling the
place up with water, and I would like to have a big puddle and the water
spilling out of the pipe. Here's the problem : I don't have a clue how to
write up the water effectively. Should I use a lathe, isosurface, media,
etc, etc... ?
Please Help!!!


Post a reply to this message

From: Tom Melly
Subject: Re: Help with still water effects
Date: 27 Oct 2004 15:37:50
Message: <417ff90e@news.povray.org>
"Ghost_Dog" <gho### [at] hotmailcom> wrote in message
news:web.417f5fc5229b5bef563d27f50@news.povray.org...

> board sits on a plain pedestal. There is a rusty pipe that is filling the
> place up with water, and I would like to have a big puddle and the water
> spilling out of the pipe. Here's the problem : I don't have a clue how to

I would go with an isosurface - it's fairly easy to shape isosurfaces around
a particular point, and to make turbulence, etc. dependant on that
particular point.

What you want is a function that peaks suddenly in y when it reaches a
particular point of x,z, and is relatively flat outside that region.

Turbulence decreases in a similiar, although gentler, way.

I'll have a play and try and post a demo later on...

By no means take this as gospel in terms of the most sensible approach...


Post a reply to this message

From: Tom Melly
Subject: Re: Help with still water effects
Date: 28 Oct 2004 12:21:09
Message: <41811c75$1@news.povray.org>
"Tom Melly" <pov### [at] tomandlucouk> wrote in message
news:417ff90e@news.povray.org...
>
> I'll have a play and try and post a demo later on...

Not complete or perfect by any means...

#version 3.6;

#include "colors.inc"
#include "functions.inc"

global_settings {
  assumed_gamma 1.0
}

// ----------------------------------------

camera {
  location  <0.0, 10, -40.0>
  look_at   0
}


light_source {
  <0, 0, 0>            // light's position (translated below)
  color rgb <1, 1, 1>  // light's color
  translate <-30, 30, -30>
}

// ----------------------------------------


// create a isosurface object - the equipotential surface
// of a 3D math function f(x, y, z)
#declare NScale = 3; // increasing this will make the noise busier (i.e.
more noise per inch! a sort of noise freq.)
#declare NMax = 0.75; // decreasing this will make the noise noisier (i.e.
more extreme - a sort of noise magnitude?)
#declare NDropoff = 0.1; //decreasing this will make noise drop-off
shallower (i.e. it will remain turbulent further away from x=0,z=0)

#declare RFreq = 2;
#declare RAmp = 5;

#declare fn_A = function(x,y,z) {
 ( y*(pow(x,2) + pow(z,2)) - 1 ) // basic shape
 + ( f_noise3d(x*NScale,y*NScale,z*NScale) *  (1/
max(pow(x*NDropoff,2)+pow(z*NDropoff,2),NMax) ) ) // noise
 + ( sin(pow(x/RFreq,2) +
pow(z/RFreq,2))*RAmp*min(pow(x/10,2)+pow(z/10,2),1) ) // ripples
 }



isosurface {
  function { fn_A(x, y, z) }        // alternative declared function
  contained_by { box { <-20,-1, -20>,<20,20,20> } }  // container shape
  accuracy 0.001                      // accuracy of calculation [0.001]
  max_gradient 300                      // maximum gradient the function can
have [1.1]
  max_trace 5                       // maybe increase for use in CSG [1]
  pigment{Green}
}


Post a reply to this message

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