Quelques mots sur l'animation avec POV-Ray

10
Quelques mots sur Quelques mots sur l'animation avec POV- l'animation avec POV- Ray Ray 1. 1. la Variable Clock la Variable Clock 2. 2. Variables Dépendant de Clock et Variables Dépendant de Clock et Animations Multi-Etapes Animations Multi-Etapes 3. 3. Le mot clé "Phase" Le mot clé "Phase" 4. 4. Fichiers INI Fichiers INI

description

Quelques mots sur l'animation avec POV-Ray. la Variable Clock Variables Dépendant de Clock et Animations Multi-Etapes Le mot clé "Phase" Fichiers INI. .ligne de commande : option+k fichier INI : clock=3.4. par défaut clock= 0.0 - PowerPoint PPT Presentation

Transcript of Quelques mots sur l'animation avec POV-Ray

Page 1: Quelques mots sur l'animation avec POV-Ray

Quelques mots sur Quelques mots sur l'animation avec POV-l'animation avec POV-

RayRay1.1. la Variable Clockla Variable Clock2.2. Variables Dépendant de Clock et Variables Dépendant de Clock et

Animations Multi-EtapesAnimations Multi-Etapes 3.3. Le mot clé "Phase"Le mot clé "Phase"4.4. Fichiers INI Fichiers INI

Page 2: Quelques mots sur l'animation avec POV-Ray

la Variable Clockla Variable Clock

.ligne de commande : .ligne de commande : option+k option+k

fichier INI : fichier INI : clock=3.4.clock=3.4.

par défaut clock= 0.0 par défaut clock= 0.0

un objet qui se un objet qui se déplace à vitesse déplace à vitesse constante sur l'axe constante sur l'axe des x. des x.

exemple : +k3.4exemple : +k3.4

translate <clock, translate <clock, 0, 0> 0, 0>

Page 3: Quelques mots sur l'animation avec POV-Ray

multiples changements multiples changements simultanément dans la simultanément dans la

même scène même scène normaliser clock normaliser clock

balle rayée qui balle rayée qui roule de gauche à roule de gauche à droite droite

sphère à l'originesphère à l'origine tourne de 360 tourne de 360

degrés degrés =>360*clock =>360*clock

translation pour translation pour placer la sphère à placer la sphère à son point de départ son point de départ

translation d'une translation d'une distance distance proportionnelle à proportionnelle à clock clock =>2*pi* r*clock=>2*pi* r*clock

clock clock [0,1] [0,1]

#include "colors.inc"#include "colors.inc"camera {location <0, 3, -6> look_at <0, camera {location <0, 3, -6> look_at <0, 0, 0> }0, 0> }light_source { <20, 20, -20> color light_source { <20, 20, -20> color White }White }plane {y, 0plane {y, 0

pigment { …}}pigment { …}}sphere {<0, 0, 0> , 1sphere {<0, 0, 0> , 1

pigment {…}pigment {…}rotate <0, 0, -clock*360>rotate <0, 0, -clock*360>translate <-pi, 1, 0>translate <-pi, 1, 0>translate <2*pi*clock, 0, 0>translate <2*pi*clock, 0, 0>} }

Page 4: Quelques mots sur l'animation avec POV-Ray

Variables dépendant de Variables dépendant de Clock et Animations Clock et Animations

Multi-Etapes Multi-Etapes directives directives

conditionnelles de POV conditionnelles de POV – Ray pour tester clock – Ray pour tester clock pour déterminer quand pour déterminer quand on a atteint la moitié, on a atteint la moitié, puis commencer une puis commencer une nouvelle séquence nouvelle séquence dépendant d'une dépendant d'une nouvelle horloge clocknouvelle horloge clock

Ex : clock de 0 à 2 Ex : clock de 0 à 2 La balle roule de La balle roule de

gauche à droite pour la gauche à droite pour la première moitié de première moitié de l'animation, puis l'animation, puis change de direction de change de direction de 135 degrés et roule de 135 degrés et roule de droite à gauche, et vers droite à gauche, et vers l'arrière de la scène l'arrière de la scène

#if ( clock <= 1 )#if ( clock <= 1 )sphere { <0, 0, 0> , 1sphere { <0, 0, 0> , 1

pigment {…}pigment {…}rotate <0, 0, -clock*360>rotate <0, 0, -clock*360>translate <-pi, 1, 0>translate <-pi, 1, 0>translate <2*pi*clock, 0, translate <2*pi*clock, 0,

0>}0>}#else#else

#declare ElseClock = clock - 1;#declare ElseClock = clock - 1;sphere { <0, 0, 0> , 1sphere { <0, 0, 0> , 1

pigment {…}pigment {…}rotate <0, 0, rotate <0, 0,

ElseClock*360>ElseClock*360> translate <-translate <-2*pi*ElseClock, 0, 0>2*pi*ElseClock, 0, 0> rotate rotate <0, 45, 0><0, 45, 0>

translate <pi, 1, 0>}translate <pi, 1, 0>}#end#end

Page 5: Quelques mots sur l'animation avec POV-Ray

mot clé mot clé phasephase Le mot clé Le mot clé phasephase peut être peut être

utilise sur des éléments de utilise sur des éléments de texture texture (si application dans [0,1])(si application dans [0,1])

Phase décale les valeurs de Phase décale les valeurs de couleur dans cette couleur dans cette application d'une valeur application d'une valeur réelle spécifiée après réelle spécifiée après "phase". "phase".

Si clock dans [0,1], clock Si clock dans [0,1], clock peut remplacer la valeur peut remplacer la valeur réelle associée avec phase, réelle associée avec phase, et le motif va continûment et le motif va continûment changer pendant changer pendant l'animation. l'animation.

Par exemple: Par exemple: color_map {color_map {

[0.00 White ][0.00 White ][0.25 Blue ][0.25 Blue ][0.76 Green ][0.76 Green ][1.00 Red ][1.00 Red ]

}} La valeur réelle au début La valeur réelle au début

de chaque crochet permet de chaque crochet permet la transformation des la transformation des valeurs de couleur pour valeurs de couleur pour certaines zones des objets certaines zones des objets auxquels on applique la auxquels on applique la texture. L'application prend texture. L'application prend ses valeurs dans l'intervalle ses valeurs dans l'intervalle 0 à1.0 à1.

Page 6: Quelques mots sur l'animation avec POV-Ray

Exemple avec phaseExemple avec phase#include "colors.inc"#include "colors.inc"#include "textures.inc"#include "textures.inc"background { … }background { … }camera {…}camera {…}light_source { … }light_source { … }//flagpole//flagpolecylinder {<-1.5, -4, 0>, <-cylinder {<-1.5, -4, 0>, <-

1.5, 2.25, 0>, 0.051.5, 2.25, 0>, 0.05texture { Silver_Metal }}texture { Silver_Metal }}

// polecap// polecapsphere {sphere { <-1.5, 2.25, 0>, 0.1<-1.5, 2.25, 0>, 0.1

texture { Silver_Metal }}texture { Silver_Metal }}

// flag// flagpolygon {polygon {5, <0, 0>, <0, 1>, <1, 1>, <1, 5, <0, 0>, <0, 1>, <1, 1>, <1,

0>, <0,0>0>, <0,0>pigment { Blue }pigment { Blue }normal {gradient xnormal {gradient x

phase clockphase clock scale <0.2, 1, 1>scale <0.2, 1, 1>

sine_wave}sine_wave}scale <3, 2, 1>scale <3, 2, 1>translate <-1.5, 0, 0>translate <-1.5, 0, 0>

}}

drapeau bleu avec un motif de gradient de normales, ondulation de type sinus ( le drapeau roule d'arrière en avant comme s'il était soumis au vent)

Page 7: Quelques mots sur l'animation avec POV-Ray

Fichier .INIFichier .INI Initial_FrameInitial_Frame et et

Final_FrameFinal_Frame permettent permettent de calculer un certain de calculer un certain nombre de trames nombre de trames

pour faire varier clock , on pour faire varier clock , on utilise Initial_Clock et utilise Initial_Clock et Final_Clock Final_Clock

Si on ne veut recalculer Si on ne veut recalculer que quelques trames, que quelques trames, Subset fait aller clock avec Subset fait aller clock avec des valeurs des valeurs proportionnelles aux proportionnelles aux trames 1 à 100, mais en ne trames 1 à 100, mais en ne calculant que la partie de calculant que la partie de la séquence de la 51la séquence de la 51e e à 75à 75ee trame. trame.

ExempleExempleInitial_Frame = 1Initial_Frame = 1Final_Frame = 100 Final_Frame = 100

Initial_Clock = 0.0Initial_Clock = 0.0Final_Clock = 2.0Final_Clock = 2.0

Subset_Start_Frame = Subset_Start_Frame = 5151Subset_End_Frame = Subset_End_Frame = 7575

Page 8: Quelques mots sur l'animation avec POV-Ray

Exemple Exemple monfichier.ini Antialias=Off Antialias_Threshold=0.1 Antialias_Depth=2 Input_File_Name=monfichier.pov Initial_Frame=1 Final_Frame=30 Initial_Clock=0 Final_Clock=1 Cyclic_Animation=on Pause_when_Done=off

Page 9: Quelques mots sur l'animation avec POV-Ray

ExempleExemple

// lumièrelight_source {<0, 5, -5>, rgb <1, 1, 1>}// caméracamera {location <0, 0, -5>look_at <0, 0, 0>}// texte tournanttext {ttf "/chemin/bragga.TTF« "e-m@il« 0.25, <0, 0>pigment {color rgb <0, 0.75, 0>} finish {specular 1}scale 1translate x*(-2)rotate <0, clock*360, 0>}

Page 10: Quelques mots sur l'animation avec POV-Ray

ExempleExemple// décorunion {box 1 box2 cylinder1 cylinder2 plane pigment { color…}}

//sujet qui change de couleur et de taillesphere { <0, 1.5, 0>, 1 pigment { color rgb <1-clock, 0+clock, 1-clock/2>}}

//source de lumière qui tourne autour du sujetlight_source {<0, 5, -2>, rgb <1, 1, 1> spotlight radius 35 falloff 45point_at <0, 0, 0> fade_distance 10 fade_power 1 rotate <0, clock*360, 0>}

// caméra qui s'approche lentementcamera { location <-5*clock+10, -5*clock+10, 5*clock-10> look_at <0, 0, 0>}