Nacházíte se zde: Rhino3D.cz > Články > Rhinoceros > Rhino 5.0 z vaší grafické karty vyždíme maximum


Rhino 5.0 z vaší grafické karty vyždíme maximum

Publikováno: 2.7.2008 | Autor: Jan Slanina | Rubrika: Rhinoceros | Komentáře: 5 - Doporučit

Rhino 5 - zobrazení - ikonaRhino 5 sice ještě není oficiálně "venku", ale již přes rok probleskují různé interní informace o inovacích, které přinese. Jedna z největších se bude týkat zobrazení. Včera na diskusní skupině Rhina publikoval Jeff LaSor, který se zbývá vývojem OpenGL zobrazení v Rhinu, několik obrázků a rozproudila se kolem nich zajímavá diskuse. Překlad některých příspěvků najdete v tomto článku.

Začalo to nenápadným dotazem uživatele s nickem Jonas, který se ptal, jak to vypadá se stíny v reálném čase, které byly předváděny na minulém Siggraphu. Bylo by prý velkým zklamáním, kdyby se tato funkce v novém Rhinu neobjevila...

Jeff se hozené rukavice obratem chopil a to co napsal se čte opravdu zajímavě. Níže je překlad zajímavých příspěvků z diskuse:

Jeff LaSor: To, co jste viděl minulý rok na Siggraphu, byl prototyp, který podporoval pouze JEDEN světelný zdroj a tento zdroj navíc mohl být pouze kuželový... Tento prototyp navíc běžel pouze na high-end grafických kartách NVidia a těžce kolaboval na čemkoliv od ATI.  Podporoval také pouze jednu stínovou mapu typu "Plane"... žádné vzorkování (sampling), vytečkování (dithering) ani rozmlžení (bluring ) - a to vše již nyní Rhino 5 umí. Ve starém prototypu také nebyly podporovány některé funkce stínů, jako je průhlednost.

Podpora více světelných zdrojů a tudíž více stínů najednou je hodně náročná.... a rozchodit to vše na co největším množství grafických karet je obrovský boj s větrnými mlýny (alespoň pro mě... osamělého grafického vývojáře), zvláště v tak dynamickém prostředí, jako je Rhino. I ta nejmenší změna v některém z shaderů v jádře dokáže nadělat paseku v celé produktové řadě některých grafických karet... a to je nekonečná a bolestivá frustrace.

Jsem si jistý, že jste minulý rok na Siggraphu neviděl nic podobného, jako na následujících obrázcích. Tyto obrázky byly pořízeny na grafické kartě ATI střední třídy... všimněte si mimo jiné více stínů od světelných zdrojů různých typů:

Rhino 5 - zobrazení pomocí OpenGL 2.0

Rhino 5.0 - stíny v reálném čase

Mimochodem teď je vhodná doba pro to, abyste se začali poohlížet po nějaké novější grafické kartě... Ne kvůli podpoře nějakých nových funkcí, ale čistě kvůli brutálnímu výkonu... Děláme co můžeme, aby shadery jádra pracovaly na co nejvíce grafických kartách, ale to neznamená, že všude poběží rychle... proto platí - čím větší výkon, tím lépe.

Také bych rád zdůraznil, že skutečnost, že výpočty leží plně na GPU (grafickém procesoru), ještě neznamená, že budou rychlejší. Výpočet pomocí GPU umožňuje přístup k různým funkcím, ale neznemaná to nutně, že bude rychlejší. Nyní například můžeme v Rhinu využít per-pixel osvětlení (Phongovo stínování) v kontrastu per-vertex osvětlením (Gouraudovo stínování), protože shadery v našem jádře to umožňují. Protože osvětlení v Rhinu 5 využívá per-pixel algoritmus, bude zobrazení pomalejší, ale výsledek bude vypadat mnohem lépe a v některých případech také správněji. Podívejte se na následující obrázky. Ve standardním renderovaném režimu v Rhinu 4 uvidíte pouze černou desku, i když jsou na scéně tři barevná světla... Při použití per-pixel osvětlení ale uvidíte dopadající světla a jejich ubývající intenzitu... také si všimněte spekulární (odleskové) složky, která u per-vertex osvětlení chybí...

Rhino 4 a per vertex lighting
Rhino 4

Rhino 5 a per pixel lighting
Rhino 5

Heath: Bude pro tyto nové funkce stačit 512MB NVIDIA Quadro FX 4500?  Vím, že to byla ve své době pecka, ale hardware zastarává tak rychle...

Jeff LaSor: podle mě je to pecka pořád... takže žádné obavy... NVidia's Quadro FX série 4000 a 5000 stále překonají většinu karet, které jsem viděl (pokud neberu v úvahu věci jako SLI nebo Crossfire). Srovnatelná je série FireGL 7000 od ATI.

Al Worth: A co takhle 256 MB Quadro FX 3450??? Bude stíhat?

Jeff LaSor: No, ohledně této konkrétní karty mám docela smíšené pocity... Je to skvělá karta, ale v dost ohledech se mi zdá hodně náladová... a zdá se, že spoléhá více na ovladače než na hardware... Například u Quadro FX 4600 sotva vidím nějaké rozdíly (pokud vůbec nějaké) při aktualizaci na novější ovladače, což podle mého značí určitou íru stability. U 3450 jsem však viděl, jak se některé šptané věci zlepšují a dobré naopak zhoršují, což mi nepřipadá jako stabilní chování.

Se správnými ovladači je to tedy fantastická karta a Rhino s ní spolupracuje velice dobře (opět podotýkám - se správnými ovladači). Kromě jednoho zásadního problému s nejnovějšími funkcemi stínů. Při zapnutí Anti-Aiasingu dojde k poškození map stínů (Shadow maps). To je známý problém NVidie (alespoň tak mi to bylo řečeno) a chyba tedy není na straně Rhina, ale bohužel si nemyslím, že s tím něco budou vývojáři NVidie dělat. Pokud to bude možné, pokusíme se vymyslet nějaké náhradní řešení na naší straně.

Čím dál častěji řešíme problém, který uživatelé Rhina dříve řešit nemuseli a tímto problémem je podpora určitých funkcí určitými videokartami. V minulosti jsme se tím vůbec nemuseli zabývat (či alespoň jsme se tohoto stavu snažili dosáhnout), ale nyní se vše zásadně změnilo a budeme se tomu muset začít věnovat. Shadery jádra jsou již kompletně navrženy, takže mohou být přepsány pro konkrétní modely grafických karet. Doufáme také, že i když na různých počítačích budou běžet různě upravené shadery, bude výsledek na obrazovce vypadat stejně... znovu opakuji, že doufáme..

Diskuse k článku

  • [10] Petr Drlík – 25. 04. 2013, 13:42

    reagovat

    Kde se dá koupit oficialne Rhiho5, nebo kdo dodává a kolik stojí základní verze.
    Dik

  • [4] Pavel Bukacek27. 03. 2012, 23:16 – reakce na [3]

    reagovat

    dobry den,
    64bitova verze sama o sobe nic nezrychluje, pouze zpristupnuje vetsi mnozstvi pameti (odpada omezeni na 4GB RAM)
    zrychlene a vylepsene zobrazeni v Rhinu 5 je umozneno diky prepracovanemu jadru programu a lepsimu vyuziti hardware grafickych karet

    pricinu sekaneho zobrazovani bych ve vasem pripade odhadoval na vysoke rozliseni obrazovky a zapnute vyhlazovani (antialiasing)
    nVidia GT540m je prece jen nizsi vykonostni trida
    doporucujeme snizit uroven vyhlazovani v ovladaci graficke karty, pripadne zkontrolovat zda je instalovana jeho nejnovejsi verze (http://www.nvidia.com/object/notebook-win7-winvis ta-64bit-296.10-whql-driver-all.html)

  • [3] Tomáš – 24. 03. 2012, 15:17

    Reaguje: [4] - reagovat

    Zdravím, mám takový problém, mám 64bitový systém (Windows 7) Rhino 4 spustit šlo, ale i malé objekty se sekají, tak jsem zkusil beta verzi rhino 5, který má podporovat 64bit, a žádná změna, pořád se to seká, neví čím by to mohlo být a jak to vyřešit?

    (Pc: CPU:2x 2.4ghz Core i3, Nvidia GeForce GT540m 1gb)

  • [2] Jan Slanina01. 10. 2008, 10:38

    reagovat

    Ještě nevyšla ani betaverze Rhina 5, tak myslím, že na plnou verzi je minimálně 2-3 roky čas. Pokud si koupíte Rhino 4 teď, tak si budete moci po celou dobu vývoje Rhina 5 stahovat zdarma betaverze, takže o nic nepřijdete :)

  • [1] Honza – 29. 09. 2008, 21:12

    reagovat

    Je možné alespoň přibližně říct, kdy Rhino 5 vyjde a bude k dostání? Přemýšlím o koupi verze 4, tak abych třeba měsíc potom nemusel kupovat upgrade. To bych raději počkal...