|
|
In article <36B4B43C.DDAA6648@sitc.net>, Tig### [at] sitcnet says...
> I've read the docs over and over again about the concept of phasing, and
> I have never figured it out.
> The problem is that I want a water pigment to ripple and I can't figure
> out how to do it properly.
> I've tried using a normal map, but the reflection is not right. I would
> also like to know if there is anyway to fade an entire color to another
> (IE without using a pigment modified like gradient, so the color is
> solid and changes to another solid color). Any help with either would be
> apreciated! :)
>
> Thanks,
> Tim Soderstrm
>
>
>
Hi Tim,
Here's a water animation (3.0 syntax source code - not a binary) I once
did as an experiment. This may not be really what you're after, since
this doesn't use phasing, but it's a surface I like on water. Anyway,
Josh has already answered your phase question.
I was looking for a surface that would move in riplets in a passably
realistic fashion like calm open water. It's a standard surface normal
method, but I discounted using waves or ripples as the normal pattern
because they produce a geometrically perfect series of concentric circles,
and I've never seen a lake look like that yet!
I used the "bumps" surface normal instead, and with the changing clock
value, it translates at a sloping angle up through the surface of the
water. This produced the effect of general ripple drift in one direction
with blowing wind, but the surface pattern is always changing.
I've thrown all of the scene in, not just the water definition. The
moonrise idea came from artwork that really struck me on the Chris Rea
album "The Road to Hell", released sometime back in the '80s. And yes,
the moon does rotate a bit eccentrically - never fixed that either :~)
Still, I loved its reflection: it really surprised me.
Be warned, the scene is VERY DARK. It is a night scene after all. To see
everything better, you'll probably want to change it to a sunrise (just
shift the clock on your PC forward 12 hours :-) :-)
Before I put in the scene file, and since this scene is geared for
animation, may I offer an INI file I use for anims? It makes my life
easier anyway. As well as rendering anims of various lengths, you can
render a single frame at various points on the way, ie. start, 25%, mid,
75%, or end frame.
It's name is "anim512.ini": for 512x384 resolution. If you want it, place
it in your "renderer" directory, and load it into POV-Ray with the Render
Settings dialog (<Alt-C> keystroke or Render/Edit Settings from the menu).
From there you can choose your render options from the drop list in the
toolbar. The scene file comes second and is called "moonrise.pov".
Oh christ! Bedtime! Another day tired at work coming...will I ever learn?
Ciao,
Brian.
--
"Strictly UNIX" To dance is to live.
bel### [at] gilcomau
==========anim512.ini : 249 lines==========
; Animate file for Persistence Of Vision raytracer version 3.X.
; Brian Elliott - Oct 1998.
[Start Frame @512, no AA ]
Width=512
Height=384
Antialias=Off
Antialias_Threshold=0.3
Antialias_Depth=3
Test_Abort_Count=384
[25% Frame @512, no AA ]
Width=512
Height=384
Clock=0.25
Antialias=Off
Antialias_Threshold=0.3
Antialias_Depth=3
Test_Abort_Count=384
[Mid Frame @512, no AA ]
Width=512
Height=384
Clock=0.5
Antialias=Off
Antialias_Threshold=0.3
Antialias_Depth=3
Test_Abort_Count=384
[75% Frame @512, no AA ]
Width=512
Height=384
Clock=0.75
Antialias=Off
Antialias_Threshold=0.3
Antialias_Depth=3
Test_Abort_Count=384
[End Frame @512, no AA ]
Width=512
Height=384
Clock=1
Antialias=Off
Antialias_Threshold=0.3
Antialias_Depth=3
Test_Abort_Count=384
[10 frames @512, no AA]
Width=512
Height=384
Antialias=Off
Antialias_Threshold=0.3
Antialias_Depth=3
Test_Abort_Count=384
Initial_Frame=1
Final_Frame=10
Cyclic_Animation=off
Pause_when_Done=off
[10 frames @512, AA 0.3]
Width=512
Height=384
Antialias=On
Antialias_Threshold=0.3
Antialias_Depth=3
Test_Abort_Count=384
Initial_Frame=1
Final_Frame=10
Cyclic_Animation=off
Pause_when_Done=off
[20 frames @512, no AA]
Width=512
Height=384
Antialias=Off
Antialias_Threshold=0.3
Antialias_Depth=3
Test_Abort_Count=384
Initial_Frame=1
Final_Frame=20
Cyclic_Animation=off
Pause_when_Done=off
[20 frames @512, AA 0.3]
Width=512
Height=384
Antialias=On
Antialias_Threshold=0.3
Antialias_Depth=3
Test_Abort_Count=384
Initial_Frame=1
Final_Frame=20
Cyclic_Animation=off
Pause_when_Done=off
[50 frames @512, no AA]
Width=512
Height=384
Antialias=Off
Antialias_Threshold=0.3
Antialias_Depth=3
Test_Abort_Count=384
Initial_Frame=1
Final_Frame=50
Cyclic_Animation=off
Pause_when_Done=off
[50 frames @512, AA 0.3]
Width=512
Height=384
Antialias=On
Antialias_Threshold=0.3
Antialias_Depth=3
Test_Abort_Count=384
Initial_Frame=1
Final_Frame=50
Cyclic_Animation=off
Pause_when_Done=off
[100 frames @512, no AA]
Width=512
Height=384
Antialias=Off
Antialias_Threshold=0.3
Antialias_Depth=3
Test_Abort_Count=384
Initial_Frame=1
Final_Frame=100
Cyclic_Animation=off
Pause_when_Done=off
[100 frames @512, AA 0.3]
Width=512
Height=384
Antialias=On
Antialias_Threshold=0.3
Antialias_Depth=3
Test_Abort_Count=384
Initial_Frame=1
Final_Frame=100
Cyclic_Animation=off
Pause_when_Done=off
[200 frames @512, no AA]
Width=512
Height=384
Antialias=Off
Antialias_Threshold=0.3
Antialias_Depth=3
Test_Abort_Count=384
Initial_Frame=1
Final_Frame=200
Cyclic_Animation=off
Pause_when_Done=off
[200 frames @512, AA 0.3]
Width=512
Height=384
Antialias=On
Antialias_Threshold=0.3
Antialias_Depth=3
Test_Abort_Count=384
Initial_Frame=1
Final_Frame=200
Cyclic_Animation=off
Pause_when_Done=off
[500 frames @512, no AA]
Width=512
Height=384
Antialias=Off
Antialias_Threshold=0.3
Antialias_Depth=3
Test_Abort_Count=384
Initial_Frame=1
Final_Frame=500
Cyclic_Animation=off
Pause_when_Done=off
[500 frames @512, AA 0.3]
Width=512
Height=384
Antialias=On
Antialias_Threshold=0.3
Antialias_Depth=3
Test_Abort_Count=384
Initial_Frame=1
Final_Frame=500
Cyclic_Animation=off
Pause_when_Done=off
==========END anim512.ini==========
==========moonrise.pov : 93 lines==========
// Moonrise.pov -- Moonrise over water
// Brian Elliott - Oct 1997
#version 3.0
#declare AnimSpeed = 2.5 // Set the rate of the animation sequence.
#declare RealClock = AnimSpeed * clock
// declare RealClock = 1 // If you're too lazy to use animation INI
file.
camera
{ location <0, 10, -10>
direction z
angle 60
rotate x*5
//look_at <0, 0, 0>
}
sky_sphere // Night colours
{ pigment
{ gradient y
color_map
{ [0 color rgb <0.15, 0.15, 0.3> ]
[0.15 color rgb <0.05, 0.07, 0.15> ]
[1.0001 color rgb <0, 0.03, 0.07> ]
}
scale 1.05
translate -0.04
}
}
// MorphStartPoint:
// Value of RealClock when the Moon begins morphing to a cube.
#declare MorphStartPoint = 1.5
//
// The Moon
//
light_source
{ <RealClock*-400, RealClock*3800-800, 20000>
color rgb<1, 1, 1>
area_light <282.84, 282.84, 0>, <-282.84, 282.84, 0>, 2, 2
adaptive 1
looks_like
#if ( RealClock <= MorphStartPoint)
{ sphere
{ 0, 800
#else
// MorphValue = Range of values (1 -> 0) where RealClock in range (1.5
to 2)
// Make sure the value of MorphValue drops no lower than 0.001
#declare MorphValue = max(0.001, 1 - 2*(RealClock - MorphStartPoint))
{ superellipsoid
{ <MorphValue, MorphValue>
scale 800
#end // [if (RealClock ...]
texture
{ pigment
{ wrinkles
colour_map
{ [ 0.05 colour rgb <0.5,0.5,0.5> ]
[ 0.15 colour rgb <0.706, 0.706, 0.706> ]
[ 0.5 colour rgb <1.0, 1.0, 1.0> ]
[ 1 colour rgb <1.0, 1.0, 1.0> ]
}
turbulence 0.2
}
finish { diffuse 0.8}
normal { wrinkles turbulence 0.2}
scale 100
}
rotate <RealClock*360*0.3162, RealClock*360*0.9487, 0>
}
}
}
//
// Water surface
//
intersection
{ plane { y, 0 } // Surface
sphere { 0, 19300 } // Limit it to a finite horizon
texture
{ pigment { color rgb<.5, .5, 1> }
normal
{ bumps 0.2
scale 2
translate <RealClock*-14,RealClock*20, RealClock*-17>
}
finish
{ //refraction 1
//ior 1.333
reflection 0.6
//phong 0.6
//phong_size 60
}
}
}
==========END moonrise.pov==========
Post a reply to this message
|
|