Sledování paprsku

Sledování paprsků (z anglického ray tracing) je metoda renderování (výpočtu a zobrazení) 3D počítačové grafiky; přesněji řečeno metoda globálního osvětlení. Na rozdíl od běžného života, kdy se paprsky pohybují od zdroje, odráží se a lámou, až se nakonec střetnou s okem pozorovatele, zde paprsky vycházejí z kamery. To protože ze zdrojů světla vychází nekonečné množství paprsků a nedalo by se v rozumném čase spočítat, které dopadnou na pixely plátna, přes které se oko dívá. Tuto techniku používají například počítačové programy POV-Ray, Blender, Cinema 4D, OctaneRender,Corona Renderer nebo Redshift.

Radiozitou v kombinaci s ray tracingem je možno dosáhnout až neuvěřitelného realizmu.

Algoritmus

Klasický rekurzivní ray tracing:

Pro každý pixel v obraze
{
  Vytvoř paprsek mířící z oka skrze pixel roviny, kterou renderuješ
  Inicializuj NejbližšíT na NEKONEČNO a NejbližšíObjekt na ŽÁDNÝ

  Pro každý objekt ve scéně
  {
     Jestliže paprsek protíná tento objekt
     {
        Jestliže je vzdálenost protnutí t menší než NejbližšíT
        {
           Nastav NejbližšíT na vzdálenost protnutí t
           Nastav NejbližšíObjekt na tento objekt
        }
     }
  }

  Jestliže je NejbližšíObjekt roven ŽÁDNÝ
  {
     Vyplň tento pixel barvou pozadí
  }
  Jinak
  {
     Vyšli stínový paprsek ke každému zdroji světla (zjištění zdali je ve stínu pro difuzní a spekulární složku)
     Jestliže je povrch objektu odrazivý, vytvoř odražený paprsek (rekurze)
     Jestliže je povrch objektu průhledný, vytvoř refrakční paprsek (lom světla, rekurze)
     Použij NejbližšíObjekt a NejbližšíT k výpočtu stínovací funkce (barva objektu)
     Vyplň tento pixel výslednou barvou stínovací funkce
  }
}

Sledování paprsků v optice

Metoda sledování paprsku (ray tracing) je též využívána k simulaci optických systémů. Výhodou je univerzálnost metody. Metodu je možno použít i k simulaci systémů, jejichž analytický popis je jen přibližný nebo není vůbec možný: nelineární optické prvky, prvky pro rentgenovou optiku, atd. Nevýhodou je vysoká výpočetní náročnost metody.

Galerie

Související články

Externí odkazy

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.