 |
 |
|
 |
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
One thing right away: thats not the sphere
interacting with the surface. Haven't implemented
that yet.
But in cases as these, actual object-water
interaction might be somewhat overkill for the
process. So, what the newest addition does it
take a point, map it onto the surface, and cause
an emitter there. It does this for every calculation
step, but only raises a single point (and the
adjacent ones, the water-algorithm doesn't work
too well with raising only one node). Also, the
magnitude can be adjusted along with a radius.
For example, if the radius of the position just
touches the water, the wave will be smaller than
when the position sits right on the surface. This
also makes it possible to have no wave-emitter when
the path leads too far astray (that animation is currently
being rendered).
For a main part, this new addition was a testing
ground for the object-interaction, cause I needed
to test the accessing of independent steps, and
if the calculations for that would work. It does! :-)
--
Tim Nikias v2.0
Homepage: http://www.digitaltwilight.de/no_lights
Email: Tim### [at] gmx de
Post a reply to this message
Attachments:
Download 'water_path.mpg' (239 KB)
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Much more realistic than some of your previous ones :))
would have liked a longer anim tho :P
--
Rick
Kitty5 NewMedia http://Kitty5.co.uk
POV-Ray News & Resources http://Povray.co.uk
TEL : +44 (01270) 501101 - FAX : +44 (01270) 251105 - ICQ : 15776037
PGP Public Key
http://pgpkeys.mit.edu:11371/pks/lookup?op=get&search=0x231E1CEA
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Thanks!
Longer? The problem with this simulation
is that once you get a certain degree of
chaotic movement, new waves aren't that
obvious anymore, and the main effect gets
lost in the noise. This is definitely realistic,
but to show off the main effect, short
animations are sufficient.
Aside of that, I like to post very small
animations, so that many may have access.
Longer animations would be put onto my
homepage, but since the system is a WIP,
I'm not creating any longer scenes just yet!
But I might do something big with it, once it
is finished, and when its released, you could
even do something yourself!
--
Tim Nikias v2.0
Homepage: http://www.digitaltwilight.de/no_lights
Email: Tim### [at] gmx de
> Much more realistic than some of your previous ones :))
>
> would have liked a longer anim tho :P
> --
> Rick
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
This is getting better and better! I can't wait to see the splash when
something falls into the water.
Mark
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Mark Hanson wrote:
> This is getting better and better!
> I can't wait to see the splash when
> something falls into the water.
Not supported very well by the algorithm... For good results you'd have
to combine it with a particle system...
Rune
--
3D images and anims, include files, tutorials and more:
rune|vision: http://runevision.com (updated Oct 19)
POV-Ray Ring: http://webring.povray.co.uk
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Hey! That was for me to reply! You're ripping
me off, taking my fame, you... you... :-)
Hm. But perhaps this time I'll get my system
out in the open earlier than you! :-)
You've kept quiet for some time now... Any
serious RL business? Hope not.
--
Tim Nikias v2.0
Homepage: http://www.digitaltwilight.de/no_lights
Email: Tim### [at] gmx de
> > This is getting better and better!
> > I can't wait to see the splash when
> > something falls into the water.
>
> Not supported very well by the algorithm... For good results you'd have
> to combine it with a particle system...
>
> Rune
> --
> 3D images and anims, include files, tutorials and more:
> rune|vision: http://runevision.com (updated Oct 19)
> POV-Ray Ring: http://webring.povray.co.uk
>
>
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Tim Nikias v2.0 wrote:
> Hey! That was for me to reply! You're ripping
> me off, taking my fame, you... you... :-)
Heh...
> Hm. But perhaps this time I'll get my system
> out in the open earlier than you! :-)
As I'm not developing on mine, I think that's likely to happen. ;)
> You've kept quiet for some time now... Any
> serious RL business? Hope not.
Nothing negative, I just feel like focusing more on RL at the moment...
:)
Rune
--
3D images and anims, include files, tutorials and more:
rune|vision: http://runevision.com (updated Oct 19)
POV-Ray Ring: http://webring.povray.co.uk
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Way cool! Not frozen but looks very real. ;o) Now comes the usual
questions: Ease of use, render time? Is it possible to add wind without
slowing down things a lot? I guess it's easy to add something on the one
side (one angle) that cause disturbance. But the wind needs to continue all
over the area, otherwise it would fade out, the greater distance it reaches,
from the one side... What about making a sinus wind, affecting the points
every X steps? ... just some inspiration for you.
Regards,
Hugo
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
> Way cool! Not frozen but looks very real. ;o) Now comes the usual
> questions: Ease of use, render time? Is it possible to add wind without
> slowing down things a lot? I guess it's easy to add something on the one
> side (one angle) that cause disturbance. But the wind needs to continue
all
> over the area, otherwise it would fade out, the greater distance it
reaches,
> from the one side... What about making a sinus wind, affecting the points
> every X steps? ... just some inspiration for you.
Thanks!
Well, parsing time is always the same, cause it has
to check a lot of arrays for cross-referencing, if waves
occur and what to calculate when they do.
When certain arrays don't get modified, they won't be
saved to disk again (which can save considerable parsing
time).
Parsing time?
With 48x48 nodes its just about 10 seconds on my 1.4GHz
Athlon, this includes generating the mesh with my MMM. This
time doesn't vary to great extent. It takes longer when the
environment has to be parsed in the beginning, and when certain
other effects actually happen, they take their time as well, but
I've tried to keep the script checking if they actually need to
calculate that much. The time naturally increases with larger
resolution, but the amount of waves have no effect on the parsing.
Ease of use? Here's an example:
[Some few declarations for creating the initial
surface, like Node-Resolution, corners, etc,
but above all: Filename! like #declare Water_Filename="test"]
Water_Start()
//Whereever the water is inside the environmental object,
// the node is switched to off and never by the wave-calculations.
#declare Environment=
cylinder{<0,-1,0>,<0,1,0>,4 inverse}
Water_Environment("test",Environment")
//Set the rain
#declare Water_Rain_Beg=0;
#declare Water_Rain_End=1/25;
#declare Water_Rain_DropsPerFrame=3;
#declare Water_Rain_Magnitude=<.6,.75>;
Water_Rain("test")
//Default for dampening is .95, and setting it here
//changes that
#declare Water_Dampening=.95;
Water_Step("test")
//Retrieve the data
#declare MeshData=Water_GetMeshDat("test")
Then, MeshData is a 2D-Array with all indices of the
surface-mesh. I use my Mesh-Modifying-Macros
to generate the mesh, and thats it!
I've also got some smaller Macros, like
Water_Stomp("test",Magnitude,Time_Of_Stomp),
which produces a "stomping-effect" near edges of
the environment, the water is raised to create that
Jurassic Park T-Rex-Effect. :-)
I'm also planning on writing some macros to easily
create custom effects (the macros will then help in
modifying the data in the proper way).
After the MeshData is retrieved, you can of course
still alter the nodes, and add wind later on if you
don't want the wind to be calculated inside the
wave-algorithms. For example that multi-sine-wave
simulation for natural ocean waves could just
be superimposed onto the data. Once a wave is
created on the surface via the macros, you can't
modify them. You can just add and subtract heights,
both will move outwards as waves do, so superimposing
might be the way to go for wind.
Regards,
Tim
--
Tim Nikias v2.0
Homepage: http://www.digitaltwilight.de/no_lights
Email: Tim### [at] gmx de
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Very nice effect!
But please, enough of that awful awful marble already. POV scenes end up
looking so cheap with that kind of high contrast low quality stuff..
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Thanks. I'll create some new texture for the next post, I promise! :-)
--
Tim Nikias v2.0
Homepage: http://www.digitaltwilight.de/no_lights
Email: Tim### [at] gmx de
> Very nice effect!
>
> But please, enough of that awful awful marble already. POV scenes end up
> looking so cheap with that kind of high contrast low quality stuff..
>
>
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
I haven't looked in this group for months.
But...
I got broadband for my birthday - and I knew exactly where to come to
speed-test it ;-)
I haven't really read your descriptions, but I am *stunned* by the quality
of your water animations. Bloody hell it looks good! In fact, I'm not even
going to bother posting my useless little animation any more... (Wasn't a
water simulation exactly, but I was half thinking about that direction for
it.)
Anyway, keep up the good work!!!
Andrew.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Thanks a lot!
But would you mind posting the animation nontheless?
I'm interested in what you did and how you did...
--
Tim Nikias v2.0
Homepage: http://www.digitaltwilight.de/no_lights
Email: Tim### [at] gmx de
> I haven't looked in this group for months.
>
> But...
>
> I got broadband for my birthday - and I knew exactly where to come to
> speed-test it ;-)
>
> I haven't really read your descriptions, but I am *stunned* by the quality
> of your water animations. Bloody hell it looks good! In fact, I'm not even
> going to bother posting my useless little animation any more... (Wasn't a
> water simulation exactly, but I was half thinking about that direction for
> it.)
>
> Anyway, keep up the good work!!!
> Andrew.
>
>
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
I've uploaded another animation to my WIP section.
It makes use of the latest Macro, Water_Stomp(). It
creates a wave at the edges of the environment, to
get the effect of a heavy object hitting the water-container,
much like the effect portrayed in Jurassic Park, where
the T-Rex stomps' cause this (thus the name of the Macro).
The link to the animation is here:
www.digitaltwilight.de/no_lights/wip/water/water_stomp.mpg
You can comment on it here, if you like.
Regards,
Tim
--
Tim Nikias v2.0
Homepage: http://www.digitaltwilight.de/no_lights
Email: Tim### [at] gmx de
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Oh, forgot to mention that it is 882kb in size...
--
Tim Nikias v2.0
Homepage: http://www.digitaltwilight.de/no_lights
Email: Tim### [at] gmx de
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Tim Nikias v2.0 wrote:
> I've uploaded another animation to my WIP section.
> It makes use of the latest Macro, Water_Stomp().
This is very cool! :)
Are you using caustics? I can't quite tell, but it looks like you are...
Rune
--
3D images and anims, include files, tutorials and more:
rune|vision: http://runevision.com (updated Oct 19)
POV-Ray Ring: http://webring.povray.co.uk
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
I'm using photons to get the proper caustics, though
I've noticed some problems when using them:
1. Shadows don't look good.
The center object casts a shadow onto the floor,
but the edges where the shadow meets the box
is all soft and blurry (due to the photon-spacing, I
guess). I'd have to use VERY high spacing to get
proper shadows.
2. Lighting passes through thin objects
If the hull of the target object (or the object onto which
the photons are dropped) isn't thick enough, the other
side gets lit as well. This is a known problem with
the technique, cause photons don't undergo the
parsing-intensive light-tracing.
--
Tim Nikias v2.0
Homepage: http://www.digitaltwilight.de/no_lights
Email: Tim### [at] gmx de
> > I've uploaded another animation to my WIP section.
> > It makes use of the latest Macro, Water_Stomp().
>
> This is very cool! :)
>
> Are you using caustics? I can't quite tell, but it looks like you are...
>
> Rune
> --
> 3D images and anims, include files, tutorials and more:
> rune|vision: http://runevision.com (updated Oct 19)
> POV-Ray Ring: http://webring.povray.co.uk
>
>
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
> Thanks a lot!
No problem ;-)
> But would you mind posting the animation nontheless?
> I'm interested in what you did and how you did...
Hmm, well you don't know what I did, do ya? ;-)
But seriously... As I said, what I have isn't a water simulation by any
stretch of the imagination. It's just that it could eventually end up being
one. Maybe.
What I've actually got is a set of particles, linked together by elestic
strands. The strands themselves are massless, but the particles can have any
mass you like. So far I've made an animation that starts with a 2D grid of
particles, with the center one displaced. Then I let the forces of the
elastic do their thing. In this instance, they accelerate the center point
towards the others, and accelerate the immediate neighbors downwards towards
the displaced center. Currently the algorithm allows particles to pass
through each other.
What basically happens is that the whole grid goes into oscilation - with a
VERY short wavelength I might add. I suppose it's because I suddenly
displace just one point; would perhaps look better if I dragged a small
group of points up and down in a sineusiod motion and let the others follow.
I bet it STILL wouldn't look like ripples on water though. And I certainly
wouldn't know where to start if I wanted to render it as a surface rather
than a "wireframe". I suppose blobs might do it...
But anyway, it's naff compared to what you have.
But then, I guess I'm just a second-rate programmer and mathematition...
Thanks.
Andrew.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
> But then, I guess I'm just a second-rate programmer and mathematition...
Oh come on! If I hadn't begun with some crappy include-files,
I'd never have gotten where I am today. Besides, you can
always ask for help in the newsgroups, and much can be
learned when doing extensive googling.
About your simulation: you could always connect four corners
via two triangles, where the diagonal should be the shortest
possible diagonal. But since you're using a 2D-Grid, you
could also set your simulation to output a 2D-Grid filled
with positions of the nodes/masses, and then feed this to
my MMM, which was written for that kind of data.
Aside of that, you could still post an animation, and get advice
and help on how to solve it.
My first thought when hearing of the heavy oscilation: you might
want to limit the distance a node may be moved. Like, take its
old position, calculate the new one, but only move it one
POV-Unit towards the new location. Forces easily interact and
overreact. I've tried to create a cloth-simulation with POV once,
and either the cloth moved too fast and oscillated heavily without
ever coming to a rest, or I wasn't patient enough to wait for it to
end... :-)
--
Tim Nikias v2.0
Homepage: http://www.digitaltwilight.de/no_lights
Email: Tim### [at] gmx de
> > Thanks a lot!
>
> No problem ;-)
>
> > But would you mind posting the animation nontheless?
> > I'm interested in what you did and how you did...
>
> Hmm, well you don't know what I did, do ya? ;-)
>
> But seriously... As I said, what I have isn't a water simulation by any
> stretch of the imagination. It's just that it could eventually end up
being
> one. Maybe.
>
> What I've actually got is a set of particles, linked together by elestic
> strands. The strands themselves are massless, but the particles can have
any
> mass you like. So far I've made an animation that starts with a 2D grid of
> particles, with the center one displaced. Then I let the forces of the
> elastic do their thing. In this instance, they accelerate the center point
> towards the others, and accelerate the immediate neighbors downwards
towards
> the displaced center. Currently the algorithm allows particles to pass
> through each other.
>
> What basically happens is that the whole grid goes into oscilation - with
a
> VERY short wavelength I might add. I suppose it's because I suddenly
> displace just one point; would perhaps look better if I dragged a small
> group of points up and down in a sineusiod motion and let the others
follow.
> I bet it STILL wouldn't look like ripples on water though. And I certainly
> wouldn't know where to start if I wanted to render it as a surface rather
> than a "wireframe". I suppose blobs might do it...
>
> But anyway, it's naff compared to what you have.
>
> But then, I guess I'm just a second-rate programmer and mathematition...
>
> Thanks.
> Andrew.
>
>
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
> Oh come on! If I hadn't begun with some crappy include-files,
> I'd never have gotten where I am today. Besides, you can
> always ask for help in the newsgroups, and much can be
> learned when doing extensive googling.
Yeah... I found this paper by some bloke who apparently worked on the film
Skreik. It's a paper about the simulation of water using a combined
volumetric grid / particle system.
I have no idea what he's on about.
But hey, that's why I'm out here reinventing the wheel with this
particle-grid-thingy.
> About your simulation: you could always connect four corners
> via two triangles
Was already thinking about doing this... Might work better.
> Aside of that, you could still post an animation, and get advice
> and help on how to solve it.
Yeah, I guess... OK, I'll post it in a bit. (Once I figure out how to make
it small enough.)
> My first thought when hearing of the heavy oscilation: you might
> want to limit the distance a node may be moved.
Yeah, that could work... I think what I'll probably do is add some
disapative forces. Currently, there's no friction or drag or anything.
Systems like that tend to just accelerate and continually gain energy. I'm
not sure why. You might (possibly) remember my Chaos Pendulumn did the same
thing until I added fake air resistance (which is frame-rate dependent; have
to do better this time...)
>Forces easily interact and
> overreact.
Let me about it! LOL
> I've tried to create a cloth-simulation with POV once,
> and either the cloth moved too fast and oscillated heavily without
> ever coming to a rest, or I wasn't patient enough to wait for it to
> end... :-)
A cloth simulation was actually what I originally had in mind with this
project, not water simulation. It's just that when I saw this thing
oscilating and the ripples spreading outwards, I thought I could somehow
make it into a water's surface. Should probably add some kind of force that
tries to push all particles back to the average "surface" level to do
that...
But anyways, I'll sort something out and post an animation shortly...
Thanks.
Andrew.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|
 |