Nacházíte se zde: Rhino3D.cz > Články > Renderování > CausticRT - blíží se hardwarový rendering nejen pro Rhino


CausticRT - blíží se hardwarový rendering nejen pro Rhino

Publikováno: 27.10.2009 | Autor: Jan Slanina | Rubrika: Renderování | Komentáře: 0 - Doporučit

Caustic ikonaToto je nejnovější interaktivní demo “pravého” globálního osvětlení na základě platformy CausticRT v renderovacím modulu Brazil pro 3dsMax. Jedná se o plně raytracovaný interiér obývacího pokoje, který obsahuje 2 080 957 polygonů a vnější i vnitřní osvětlení. Pro nás je potěšitelné, že tato karta již vývojářům funguje i přímo v pohledu Rhina - na vlastní oči jsem viděl plynulé otáčení se scénou, která se zrcadlila ve vlnící se (!) hladině včetně kompletního HDRI prostředí...

O tomto demu

Toto je nejnovější interaktivní demo “pravého” globálního osvětlení na základě platformy CausticRT v renderovacím modulu Brazil pro 3dsMax.  Jedná se o plně raytracovaný interiér obývacího pokoje, který obsahuje 2 080 957 polygonů a vnější i vnitřní osvětlení. Na scéně ja "klasická" geometrie jako jsou modely Stanford Dragon (drak) a Bunny (zajíček). Jednotlivé objekty se skládají z následujícího počtu polygonů:

  • Zajíček: 70 000 polygonů
  • Drak: 800 000 polygonů
  • Budha: 1 000 000 polygonů
  • Interiér: 22 000 polygonů

Rozlišení okna ActiveShade v 3dsMax je: 400×300 a 800×600

akcelerační karta CausticOne
akcelerační karta CausticOne

 

Proč je to důležité?

Zatím nikdo nepředvedl tak komplexní demonstraci pravého interaktivního globálního osvětlení (anglicky Global Illumination - GI) na základě GPU (grafický procesor) nebo CPU implementace.  Proč? Protože GPU a CPU nejsou stavěné na plné a efektivní řešení problematiky raytracingu. Platforma CausticRT tyto nedostatky řeší a umožňuje GPU a CPU stínovat s efektivitou, která je srovnatelná s rasterizací.

Problematika raytracingu je značně odlišná od rasterizace. Již jsme viděli mnoho působivých předváděček. Výzkumnící už dosáhli výkonu 100 milionů paprsků za sekundu. Ale má to vždy nějaký háček. Dema někdy předvádí efekty, které ve skutečnosti nevyžadují raytracing.  Každý objekt je často stínován stejným materiálem. Scény jsou obvykle příliš malé na to, aby reprezentovaly běžnou praxi z reálného světa.

Proč jsme zatím neviděli žádný plný tracingový renderer, který by běžel na GPU?

Pokud chceme na tuto otázku odpovědět, musíme se nejprve podívat blíže na rozdíly mezi algoritmy pro ray tracing a rasterizaci.

Rasterizace je pěkným příkladem streamovacího algoritmu. Geometrie scény plyne sekvenčně řetězcem, ve kterém lze každý polygon v síti rozložit na takové fragmenty, které budou všechny stínované stejným shaderem. To umožňuje GPU jednotce stínovat mnoho pixelů společně.

Na rozdíl od rasterizace umožňuje raytracing vzájemnou interakci objektů. Technickou komplikací, kterou způsobují paprsky, odrážející se po celé scéně, je to, že ray racer potřebuje nahodilý přístup kdykoliv k čemukoliv. To znamená, že celá scéna (veškerá geometrie, shadery a příslušenství) musí být dostupné v RAM.

V současné době je dostupná karta CausticOne, která je určena pouze softwarovým vývojářům. Začátkem příštího roku by se měla objevit karta CausticTwo, která již bude určena pro masový trh. A teď se podívejte, co v současné době karta dokáže v oblasti hardwarového urychlení globálního osvětlení...

 

Caustic Graphics Global Illumination Demo od Ryana Shrouta na Vimeu.

Související odkazy

Nahoru ↑