• Welcome to Forum graficzne Burning-Brushes.pl. Please log in or sign up.
 

Animacje w POV-Rayu

Zaczęty przez Abik, Grudzień 27, 2011, 21:13:03

Poprzedni wątek - Następny wątek
Chciałbym w tym roku zakończyć temat POV-Raya, więc to będzie krótki tutorial, opisujący bardzo podstawowe podstawy tematu, którym się zajmiemy, czyli animacji w POV-Rayu. W praktyce tylko je liźniemy, ale i tak myślę, że warto zanurzyć się w animacje chociaż te troszkę bo jest to coś mega ciekawego.

Weźcie sobie wpakujcie coś takiego jako szablon:
#version 3.6;
#include "colors.inc"
#declare Photons=on;

global_settings {
  //assumed_gamma 1.0
  max_trace_level 15
  #if (Photons)          // global photon block
    photons {
      spacing 0.02                 // specify the density of photons
    }

  #end
}

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

//camera { location<0,10,-15> look_at<0,1,0> angle 30 }
//camera { location<4,15,1> look_at<0,1,3> angle 30 }
//camera { location<-2,5,8> look_at<0,1,4> angle 30 }
camera { location<-3,10,-15> look_at<4,2,0> angle 30 } 
 
light_source {
  <-500,300,250>       // light's position
  color rgb <1,1,1>       // light's color
  photons {           // photon block for a light source
    refraction on
    reflection on
  }
}

sky_sphere {
  pigment {
    gradient y
    color_map {
      [0.0 rgb <0.6,0.7,1.0>]
      [0.7 rgb <0.0,0.1,0.8>]
    }
  }
}

light_source { <-2,13,4> color Blue photons{ refraction on reflection on}}

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

plane {
  y, 0
  texture {
    pigment { color Gray }
  }
}

To jest trochę zedytowana wersja tego co znajdziecie pod ->Insert ->Scene Templates ->Photons scene. I dorzućcie jakiś obiekt jaki chcecie animować, u mnie to jest napis burning-brushes.pl oczywiście, o taki:
text{ttf "Arial.ttf", "Burning-Brushes.pl", 0.5, 0 pigment{color Blue } }
Wygląda to na razie tak po uruchomieniu:

Ekstra, ale jakby to zaanimować? I w ogóle jak to w POV-Rayu wygląda. No mamy taką wartość zmienną jak clock, która przyjmuje wartości od 0 do 1 w kolejnych klatkach animacji, możemy jakąś stałą wartość, np. promień kuli, mnożyć razy ten clock, wtedy w każdej klatce uzyskamy inny promień, czyli w efekcie animację powiększającej się kuli.
My tutaj spróbujemy uzyskać animację obracającego się napisu. Przyda nam się funkcja rotate. Zapiszmy więc sobie coś takiego:
text{ttf "Arial.ttf", "Burning-Brushes.pl", 0.5, 0 pigment{color Blue }
      rotate y*360*clock}

Ta ostatnia linijka będzie właśnie decydować o naszej animacji. Robimy tam po prostu obrót względem osi y o 360 stopni, czaicie no nie? Nawet jak nie to za chwilę zobaczycie jak to wygląda, ale wcześniej musimy wpisać pewne polecenie, tak jak tutaj na screenie:

Gdzie ustalamy, że utworzonych zostanie 120 klatek. Im więcej klatek tym dłużej potrwa renderowanie, więc nie przesadzajcie z tymi wartościami, ale pamiętajcie, że im większa tym płynniejszą animację uzyskamy. Skopiujcie sobie, żebyście się nie pieprznęli przy wpisywaniu :D
-j +kff120
(Ja i tak użyłem wartości 72 zamiast 120 jakby co)
Teraz możemy wcisnąć przycisk run i zobaczymy jak POV-Ray generuje kolejne klatki animacji. Problem mały jest taki, że każda klatka zapisana jest w osobnym pliku bmp i musimy to jakoś zebrać do kupy tak żeby stworzyć jedną animację. Możecie to sobie zrobić w photoshopie, gimpie czy czym tam sobie chcecie.
Ja to robię w gimpie bo wydaje mi się to tam dużo wygodniejsze. Odpalam gimpa, otwieram pierwszą klatkę, później otwieram wszystkie pozostałe naraz jako nowe warstwy i animacja prawie gotowa. Trzeba tylko zapisać plik w formacie gif, przy zapisie wybrać opcję ,,Zapisz w postaci animacji" pozostawiając wszystkie dalsze ustawienia domyślne i animacja gotowa.

Czadowo co nie? Nie wiem jak was, ale mnie nawet taka prosta animacja cieszy :D
Można oczywiście kombinować z innymi obiektami, osiami, ilością klatek, możliwości są ogromne. Na przykład jednocześnie napis możemy obracać wokół kilku osi, sprawdźcie coś takiego:
text{ttf "Arial.ttf", "Burning-Brushes.pl", 0.5, 0 pigment{color Blue } //}
      rotate y*360*clock rotate x*360*clock}

Napis schowa nam się na chwilę pod ,,ziemię", ale tej ziemi wcale być nie musiało i wtedy grałaby gitara, zresztą i tak nie wygląda to źle:

Ta jest, to by było na tyle z mojej strony jeśli chodzi o animacje w POV-Rayu, tak jak obiecałem było krótko, chociaż myślę, że to i tak był najciekawszy tutorial z całej tej ,,serii". Szczęśliwego nowego roku!

TUTORIAL WYKONANY TYLKO I WYŁĄCZNIE DLA BURNING-BRUSHES.PL