OpenGL vedle DirectX stále žije - vychází openGL 3 Tisk E-mail
Napsal ElCondor   
Wednesday, 14 November 2007
Přejít na obsah
OpenGL vedle DirectX stále žije - vychází openGL 3
OpenGL a Direct3D (DirectX) - srovnání výkonu

 

 

 

  • OpenGL vedle DirectX stále žije

Ani s nástupem DirectX10 OpenGL neumírá. Ba možná právě naopak. Podívejme se na OpenGL a jeho budoucnost s pořadovým číslem 3. Kdybych si tento titulek přečetl já, řekl bych si: "A co jako? Vždyť to je přece jasné." Bohužel. Jak tak sleduji diskuze posledních dní, roztočené zejména příchodem grafických karet s podporou DX10 a jejich nekonečným testováním a srovnáváním. Internet snese opravdu všechno. Takže se ani nedivím, že se u určitých uživatel hojně rozšířil nesmyslný názor, že openGL je "mrtvé", nebo odsouzené k pomalému vymizení na okraji zájmu. Podívejme se jak to s openGL je ve skutečnosti a v jakém jsou vztahu s "hitem" posledních dní: DX10 ...

  • Trocha historie

V 80. letech bylo psaní aplikací používající grafický HW neskutečně obtížné. SW vývojáři psali API a ovladače pro každé zařízení zvlášť. To vedlo k neustálému předražování vývoje a duplicitě kódu, kdy mnozí psali něco, co už dávno před nimi napsal někdo jiný pro jiné zařízení. Na počátku 90. let byla v segmentu 3D grafických pracovních stanic firma SGI (Silicon graphics). Jejich IrisGL API se díky svému kvalitnímu návrhu a snadnému používání stalo de-facto průmyslovým standardem. Konkurenti SGI (společnosti jako IBM, HP, SUN), používali pro svůj 3D hardware konkurenční standard PHIGS, který byl považován za částečně zastaralý. Následkem toho se pozice firmy SGI na trhu neustále oslabovala s narůstajícím počtem konkurentů používající standard tento PHIGS. Za této situace přichází SGI s revolučním řešením a rozhodne se proměnit IrixGL na Otevřený standard. Vyústěním těchto snah bylo uvedení OpenGL standardu společností SGI, odvozeného od IrixGL.

efekt-1

OpenGL sjednotila přístup k HW, a přesunula odpovědnost za obsluhu HW od vývojářů aplikací směrem k výrobcům HW. Dnes se tento revoluční krok projevuje například existencí ovladače ke grafické kartě a všichni berou ovladače jako samozřejmost.  Přesto je to inovace, za niž vděčíme právě vzniku openGL. Jednotná řeč pro všechen možný grafický HW, měla velký pozitivní vliv na vývoj 3D apliací. V roce 1992 SGI podpořila vznik uskupení  OpenGL architectural review board (OpenGL ARB), tedy jakousi asociaci společností, která měla zajistit vývoj openGL do budoucna. Jednou z mnoha společností tohoto uskupení byl i Microsoft, který jej ovšem v roce 2003 opustil. Od roku 2006 spravuje openGL skupina Khronos grup. Za všechny možné členy bych zmínil: AMD, Creative Labs, Intel, ID Software, Nvidia, Sony Computer Entertainement, Sun Microsystems, Texas instruments.

dx

Společnost Microsoft si tradičně tak trochu hrála na vlastním písečku a tak v roce 1995 vydala vlastní API s názvem Direct3D (část DirectX). Jak už jsem zmínil, po úspěšném prosazení Direct3D na platformu Windows, Microsoft v roce 2003 opouští svou pozici u jednacího stolu o openGL a v nadcházejícím operačním systému Windows Vista, pro jistotu podporu openGL záměrně ořeže.

  • OpenGL a Direct3D (DirectX) - filozofie

Tyto dvě API, ačkoli přinesly podobnou funkcionalitu, byly postaveny na naprosto protichůdných myšlenkách. Direct3D bylo navrženo jako 3D HW rozhraní. Jeho vlastnosti se odvíjí od toho, jaké vlastnosti poskytuje HW. Na druhou stranu openGL bylo postaveno jako 3D renderující systém, který může být HW akcelerován. Zatímco direct3D vyžaduje, aby aplikace sama spravovala HW prostředky, OpenGL má implementaci, která to udělá za ní (za aplikaci). To způsobuje, že je mnohem jednodušší pracovat pomocí openGL API. Vývojář pracující s Direct3D musí HW prostředky spravovat sám. Jak je vidět, tenhle zaostalý přístup k HW, který Microsoft vynalezl v dobách DOSu, nás tady bude strašit ještě dlouho. Nicméně, toto nesystémové řešení má jednu nezanedbatelnou výhodu. Vývojáři mají možnost spravovat HW zdroje způsobem, který se jim zdá zrovna pro tu jednu jejich aplikaci nejvýhodnější, což je u počítačových her výhoda jistě lákavá.

dx-opengl

Dalším rozdílem mezi těmito API, byl způsob, jakým nakládaly s renderováním textur. Zde se přístup Direct3D osvědčil mnohem více, zatímco implementace openGL byla poměrně nešikovná. Tento problém byl ovšem v openGL vyřešen a dnešní verze obou API maji k renderování textur podobný přístup.



 

Najdete nás na Facebooku

.... a také na Twitteru

RSS

DDWorld.cz

DDWorld - Blogy a videa

DDWorld - Magazín

Poslední příspěvky v diskuzích


Videa
Prusa Core One – nová uzavřená 3D tiskárna
Prusa Core One – nová uzavřená 3D tiskárnaWednesday, 20 November 2024
Vložil: aDDmin
Kategorie: PC a IT
Spuštěno: 410x
Komentářů: 1
Star Wars Outlaws dostává Update 1.4 – zásadní herní změny!
Star Wars Outlaws dostává Update 1.4 – zásadní herní změny!Wednesday, 20 November 2024
Vložil: aDDmin
Kategorie: Počítačové hry
Spuštěno: 265x
Komentářů: 0
Jak to vypadá v uvnitř DATACENTRA?
Jak to vypadá v uvnitř DATACENTRA?Monday, 18 November 2024
Vložil: aDDmin
Kategorie: PC a IT
Spuštěno: 848x
Komentářů: 0
Vychází LEGO Horizon Adventures – další zábavná LEGO hra?
Vychází LEGO Horizon Adventures – další zábavná LEGO hra?Tuesday, 12 November 2024
Vložil: aDDmin
Kategorie: Počítačové hry
Spuštěno: 1156x
Komentářů: 0
Indiana Jones and the Great Circle hra ala film?
Indiana Jones and the Great Circle hra ala film?Monday, 11 November 2024
Vložil: aDDmin
Kategorie: Počítačové hry
Spuštěno: 1471x
Komentářů: 0
Nový Captain America nevypadá dobře. Thunderbolts* jsou na tom lépe.
Nový Captain America nevypadá dobře. Thunderbolts* jsou na tom lépe.Friday, 08 November 2024
Vložil: aDDmin
Kategorie: Film
Spuštěno: 1318x
Komentářů: 6