Page d'Accueil
- Tutoriel POV-Ray
- Eau réaliste
- opaque réfléchissante
- la mer agitée
- transparence partielle
- Un tourbillon
- Un verre d'eau
> L'eau par l'isosurface
- L'eau de mer isosurface
- Téléchargement
|
Eau réaliste avec POV-Ray
part
1 | 2 | 3 |
4 | 5 | 6 |
7
L'eau pour une piscine par l'isosurface
Nous commencons avec déclarer une form de piscine sans l'eau
et nous définissons la position de la piscine.
(Nous utilisons ici des variables pour les dimensions et une transformation par 'transform'.
C'est parce que nous avons besoin de ces choses aussi pour l'eau dans la piscine.
Pour les définitions de la texture de piscine et la matière de l'eau voir le fichier de la scène.)
//---------------------- Pool dimensions
#declare Pool_X = 5.00;
#declare Pool_Y = 2.00;
#declare Pool_Z = 8.00;
#declare Border = 0.50;
//------------------ Pool transformation
#declare Pool_Trans =
transform{ rotate<0,0,0>
translate<-2.5,0.10,-6>
} // end of transforme
//--------------------------------------- |
Alors nous faisons un trou à la position de la piscine :
//---------------------------------------
#declare Pool_Inner =
box{<0,-Pool_Y,0>,<Pool_X,Pool_Y,Pool_Z>
} //----------------------------------
#declare Pool_Outer =
box{<-Border, -Pool_Y-0.01, -Border> ,
<Pool_X+Border,0.001,Pool_Z+Border>
} //--------------------------------
//---------------------------------------
#declare Pool =
difference{
object{ Pool_Outer texture{Pool_Tex}}
object{ Pool_Inner texture{Pool_Tex}}
} // end of Difference
//---------------------------------------
// grass ground
difference{
plane{ <0,1,0>, 0
texture{
pigment{color rgb<.35,.65,0>*.7}
normal { bumps 0.75 scale 0.015}
finish { phong 0.1 }
} // end of texture
}// end plane
object{ Pool_Outer
texture{ Pool_Tex }
transform Pool_Trans
} // end of hole for the pool
} // end of ground
//---------------------------------------
// placing of the pool:
object{ Pool transform Pool_Trans }
//--------------------------------------- |
|
Un trou pour la piscine.
Une piscine sans l'eau
|
Puis nous déclarons une fonction 3d par un motif
pour la modulation d'une isosurface:
// pigment pattern for modulation
#declare Pigment_01 =
pigment{ bumps
turbulence 0.20
scale <3,1,3>*0.12
translate<1,0,0>
} // end pigment
//---------------------------------------
#declare Pigment_Function_01 =
function {
pigment { Pigment_01 }
} // end of pigment function
//---------------------------------------
isosurface {
function{
y
+Pigment_Function_01(x,y,z).gray*0.2
} // end of function
contained_by{
box{<-Border,-Pool_Y-1.01,-Border>,
< Pool_X+Border,1, Pool_Z+Border>
} //
} // end contained_by
accuracy 0.01
max_gradient 2
material{ Water_Material }
// dont scale this isosurface!
// scale the Pigment_01 if necessary!
transform Pool_Transformation
} // end of isosurface ------------------
//--------------------------------------- |
Pour plus des détails voir le fichier de la scène.
Description de cette scène pour POV-Ray
IsoWaterPool_01.pov
|
Une isosurface pour l'eau de piscine
L'eau de piscine par isosurface
part
1 | 2 | 3 |
4 | 5 | 6 |
7
|
|