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.



 

RSS

DDWorld.cz

DDWorld - Blogy a videa

DDWorld - Magazín

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


Videa
Vychází RPG Clair Obscur: Expedition 33
Vychází RPG Clair Obscur: Expedition 33Wednesday, 23 April 2025
Vložil: aDDmin
Kategorie: Počítačové hry
Spuštěno: 2048x
Komentářů: 0
Oblivion Remastered: TES IV dorazil - UE5 mu sluší!
Oblivion Remastered: TES IV dorazil - UE5 mu sluší!Tuesday, 22 April 2025
Vložil: aDDmin
Kategorie: Počítačové hry
Spuštěno: 1673x
Komentářů: 2
Star Wars Zero Company tahová hra od tvůrců XCOM!
Star Wars Zero Company tahová hra od tvůrců XCOM!Friday, 18 April 2025
Vložil: aDDmin
Kategorie: Počítačové hry
Spuštěno: 1153x
Komentářů: 0
Marathon od Bungie/SONY představen – nový „Concord“?
Marathon od Bungie/SONY představen – nový „Concord“?Thursday, 17 April 2025
Vložil: aDDmin
Kategorie: Počítačové hry
Spuštěno: 951x
Komentářů: 0
Baldur’s Gate 3 se loučí! Poslední aktualizace a konec!
Baldur’s Gate 3 se loučí! Poslední aktualizace a konec!Tuesday, 15 April 2025
Vložil: aDDmin
Kategorie: Počítačové hry
Spuštěno: 2194x
Komentářů: 4
Forever Skies – survival inspirovaný Subnauticou ve verzi 1.0
Forever Skies – survival inspirovaný Subnauticou ve verzi 1.0Monday, 14 April 2025
Vložil: aDDmin
Kategorie: Počítačové hry
Spuštěno: 2117x
Komentářů: 0