Svět hardware Svět PDA DigiManie Svět sítí  
vyhledávání
separator separator

Nově v diskusích

Re: 25-30fps nehratelne ? (dnes 10:28)

No, televize má si­ce 25 "fps" - ale­ prokládaně, což ve­ výsledku pohyb sku­tečně "rozplizne­" (nesnáším

Re: Pnp (dnes 10:27)

Tak bohuzel - vse­chno je jinak :-(. Ma­ teorie pada. S ji­nym zdrojem je na­ PCI karte +11.98V a­le chov

pasiv (dnes 10:18)

a co ti brani tam ho­dit nejaky pasiv? na­pr. Zalman ma ce­lkom dobre. mozno­ bude stacit ked le­n povodn

Re: 25-30fps nehratelne ? (dnes 10:16)

Uz vidim jak pozna­te rozdil mezi 25 ci­ 50 FPS ... poku­d tech 25FPS neni­ prumer. Jinak po­kud budu hra

Rozdiely (dnes 10:13)

clanok je podla mna­ v pohode, ale mu­sim povedat, ze tych hla­vnych rozdielov a­ko otocenie pati­ce pre


Moderní grafické technologie: Unreal Engine 3

Moderní grafické technologie: Unreal Engine 3

(Zdeněk Kabát, včera, zpráva)

Abychom se také trochu odtrhli od běžných témat, která Svět Hardware nabízí, přinášíme i popis něčeho jiného ? moderních grafických technologií v praxi. Jedním z hlavních živitelů grafických novinek bude Unreal Engine 3, který nabízí plné využití nové generace GPU. A je opravdu o co stát!

Doporučit článek  Tisknout článek

V minulých pěti týdnech spatřily světlo světa oba GPU (nebo chcete-li VPU) nové generace od ATi a nVidie – Radeon X800 a GeForce 6800. Zatímco Radeon je spíše evolučním skokem, GeForce přichází s kompletně přeorganizovanou pipeline a novými technologiemi, které zahrnují i Shader Model 3.0. Ovšem mnoho lidí se ptá, zda lze tyto technologie reálně využít. Odpověď nám může dát následujících pár odstavců popisujících moderní herní „motor“ – Unreal Engine 3.

Společnost Epic Games, která za celým projektem Unreal stojí, zveřejnila nedávno na těchto stránkách kompletní popis Unreal Enginu 3, který navazuje na předchozí verze licencované mnoha vývojáři. Unreal Engine 2 využívaly např. hry Splinter Cell, Rainbow Six 3, Deux Ex: Invisible War, XIII a další. Proto je nový engine velmi očekáván.

Nejdříve se podívejme na několik efektů, které Unreal Engine 3 přinese:

  • Podpora 64-bit HDR (High Dynamic Range) s pokročilými světelnými efekty. HDR je obecné označení pro zpracování dat s vysokou přesností umožňující libovolné manipulace s barvami bez ztráty dat. V Unreal Enginu bude použit 64-bitový HDR, tedy 16 bitů pro každou barevnou složku, což stačí pro zachování většiny informací o jasu a barvě.


Obr. 1 – Příklad efektu zvaného Light bloom s použitím 64-bit HDR
Klikněte pro zvětšení
  • Podpora moderních technik pro renderování a per-pixel osvětlení. Tato část enginu zahrnuje např. normálové mapy (popisované níže), parametrické osvětlení Phong či virtuální displacement mapping. Displacement mapping je označení pro pokročilou funkci vertex shaderu, kdy je povrch upraven podle zvláštní černobílé textury, která určuje jakési vrstevnice. Podle nich je pak povrch přepočítán a upraven, takže na rozdíl od bump-mappingu se mění i silueta, vrhané stíny apod. Dále jsou podporovány techniky pro útlum barev, self-shadowing apod.


Obr. 2, 3 – Příklad použití různých efektů s per-pixel osvětlením, stínováním, normálovými mapami apod.
Klikněte pro zvětšení
  • Pokročilé dynamické stíny. Podle dokumentace podporuje Unreal Engine 3 tři techniky stínů, které mohou být libovolně kombinovány. Navíc je možné je spojit s útlumem barev (snížení sytosti a jasu barev) a různým typem osvětlení. Zde jsou příklady:
      o Dynamické stencil stíny s podporou dynamických světelných zdrojů. Jinými slovy, renderování stínů při pohybujícím se světle v reálném čase.
      o Dynamické postavy vrhající měkké a rozptýlené stíny. To znamená, že kromě klasických tvrdých stínů jsou podporovány i nové typy, které více odpovídají realitě, nehomogennímu osvětlení apod.


Obr. 4, 5 – Rozptýlené a měkké dynamické stíny od pohyblivých zdrojů světla
Klikněte pro zvětšení
  • Vysoká podpora shaderů a materiálů. Unreal Engine 3 nabízí široké možnosti práce s materiály, je možné libovolně za běhu vytvářet shadery a kontrolovat je v grafickém rozhraní o rychlosti renderovacích programů jako 3DStudio MAX či Maya. Je také možné nejen přidávat shadery, ale i jejich komponenty, vše on-the-fly, tedy za běhu kompilátoru.
  • Modelování terénu s podporou moderních technologií. Možnost dynamického modelování s použitím displacement mappingu, normálových map, libovolných materiálů, dynamického LOD mozaikování apod. Engine také pomáhá programátorům s vytvářením krajiny, po vyhodnocení profilu terénu může přidat trávu a různé rostliny (rovina), skály (vysoké svahy) či sníh (vrcholky). Podporovány jsou také různé typy mlhy (u velkých vzdáleností či výšek).


Obr. 6, 7 – Aplikace různých typů stínů a mlhových efektů (mlha ve velkých vzdáleností, přízemní mlha)
Klikněte pro zvětšení

Normálové mapování

Způsob normálového mapování jsem již podrobněji popisoval v preview na Radeon X800, ale neuškodí si jeho princip zopakovat. Při vytváření modelů jednotlivých postav, nestvůr, scén apod. programátor vytvoří dva modely – jeden jednoduchý, který bude použit přímo ve hře a jeden vysoko-polygonový, skládající se až z několika milionů trojúhelníků. Následně jsou tyto dva modely porovnány a z rozdílů je vytvořena normálová mapa.

Normálová mapa je de facto textura, která ale místo jednotlivých barevných složek obsahuje jednotlivé souřadnice normál, čili směrnic (při 32-bitové hloubce je použito 8 bitů pro x, y a z). Ve hře je pak tato normálová mapa aplikována zpět na model a podle ní jsou pak jednotlivé pixely osvětleny tak, aby byl výsledek realističtější a více připomínal původní model. Zde jsou názorné obrázky použití v Unreal Enginu 3:


Obr. 8, 9 – Model nestvůry ze hry (8000 polygonů) a čistě geometrický model z 3D Studia Max (3 miliony polygonů)
Klikněte pro zvětšení

A zde vidíte výsledek:


Obr. 10 – Výsledný model ve hře osvětlený podle normálové mapy
Klikněte pro zvětšení

Podobným způsobem může být mapován i terén. Zde je model téže scény, která je ve skutečnosti složena z 500 tisíc polygonů, zatímco model sloužící k vytvoření normálové mapy obsahoval kolem 100 milionů polygonů:


Obr. 11, 12 – Modelování venkovních scén pomocí normálových map
Klikněte pro zvětšení

Pokud Vás zajímá ohledně Unreal Enginu 3 více, podívejte se na tuto jeho homepage. Mimo jiné je na ní řečeno, že se ve scénách počítá současně s 5-20 postavami o 3-12 tisících polygonech, že v typické scéně se bude nacházet 300-1000 viditelných objektů a počet trojúhelníků se bude v jednu chvíli pohybovat mezi 200 000 a 1 200 000. Počet světel bude něco mezi dvěma a pěti. Prostě a jednoduše, paráda pohledět.

Pozn.: Těm, kteří dočetli až sem, bychom chtěli položit jednu otázku – zajímaly by Vás podobné články i v budoucnu? Tento text se již blíží pomyslné hranici záběru našeho serveru, ale pokud se ukáže jako úspěšný, budeme se podobnou problematikou v rámci možností zabývat. Diskuse je otevřená.


 Průměr 1.45
nejnej
hodnoceni
stupnice
  Hodnotilo 29 čtenářů  
1 2 3 4 5  


Diskuzní příspěvky
 Zajímaly by Vás podobné články i v budoucnu?zdeneksoft18.5.2004  0:23:14
 SuhlasJoK18.5.2004  5:55:19
+ Re: SuhlasJoK18.5.2004  5:57:06
+ Re: SuhlasZdeněk Michálek18.5.2004  9:38:25
 omluvaZdeněk Kabát18.5.2004  7:37:40
 pro autoraKamil18.5.2004  9:50:10
+ Re: pro autoraRockycz18.5.2004  10:18:55
+ Re: pro autoraGLOWi18.5.2004  10:47:00
 Podobne clankypEjsEk18.5.2004  10:26:51
 bump vs normal mappingdanno18.5.2004  10:41:42
+ Re: bump vs normal mappingGLOWi18.5.2004  10:57:42
+ Re: bump vs normal mappingdanno19.5.2004  9:52:52
 AnoTom K.18.5.2004  11:05:41
 Rozhodně anocybedruid18.5.2004  11:38:07
 Anojohnybest18.5.2004  12:09:16
 Na 100% ANO!!!!!!!!!RedTop18.5.2004  12:13:48
 Rozhodne ANOCrus18.5.2004  13:38:21
 Ano a ano :o)home_grown18.5.2004  14:25:05
 klidne sem toho materialu cpete vic..JohnyH18.5.2004  15:10:02
 Duvod,proc koupit lepsi HWMaX_of_pdb19.5.2004  6:21:23
 anoGenus19.5.2004  8:19:34
      

ISSN 1213-0818    © 1998-2004 ProMON spol. s r.o.
Tento server dodržuje právní předpisy o ochraně osobních údajů. Používáme redakční systém oXyMEDIA.