====== Direct3D (D3D) ====== **Direct3D** je nízkoúrovňové grafické rozhraní, které umožňuje aplikacím (především hrám) komunikovat s grafickým hardwarem (GPU). Je součástí multimediálního rozhraní Microsoft DirectX. ===== Jak Direct3D funguje? ===== Direct3D funguje jako prostředník mezi vývojářem hry a grafickou kartou. Namísto toho, aby programátor musel psát kód přímo pro konkrétní grafickou kartu (např. NVIDIA nebo AMD), píše jej pro Direct3D. O zbytek se postará grafický ovladač. ===== Klíčové verze a jejich význam ===== V průběhu let prošlo Direct3D zásadním vývojem: * **Direct3D 9 (2002):** Legendární verze, která poháněla éru Windows XP (např. *Half-Life 2*). Stále se používá u mnoha starších her. * **Direct3D 11 (2009):** Nejpoužívanější verze současnosti. Přinesla teselaci a lepší podporu pro vícevláknové procesory. * **Direct3D 12 (2015):** Moderní, nízkoúrovňové rozhraní. Umožňuje vývojářům mnohem hlubší kontrolu nad hardwarem, což zvyšuje výkon, ale je náročnější na programování. ===== Srovnání Direct3D s ostatními API ===== ^ Rozhraní ^ Platforma ^ Poznámka ^ | **Direct3D** | Windows, Xbox | Uzavřený standard Microsoftu, nejrozšířenější v herním průmyslu. | | **OpenGL** | Cross-platform | Starší otevřený standard, dnes nahrazován Vulkanem. | | **Vulkan** | Cross-platform | Nízkoúrovňový nástupce OpenGL, konkurence pro D3D12. | | **Metal** | Apple (macOS/iOS)| Optimalizované rozhraní výhradně pro zařízení Apple. | ===== Vztah k Linuxu a Steam Decku ===== Protože je Direct3D uzavřené a funguje jen na Windows, musí systémy jako Linux používat překladové vrstvy, aby na nich hry běžely: * [[DXVK]] překládá D3D9/10/11 na Vulkan. * **VKD3D-Proton** překládá D3D12 na Vulkan. * [[WineD3D]] překládá D3D na OpenGL. ===== Proč je Direct3D tak populární? ===== - **Nástroje pro vývojáře:** Microsoft poskytuje vynikající ladicí nástroje (PIX) a dokumentaci. - **Ekosystém Xbox:** Hru vyvinutou pro Windows lze relativně snadno portovat na konzole Xbox. - **Hardwarová podpora:** Výrobci grafických karet (NVIDIA, AMD, Intel) optimalizují své ovladače primárně pro Direct3D. --- > **Zajímavost:** První verze Direct3D byla kritizována pro svou složitost. Až verze 7 (uvedená s Windows 98 SE) přinesla revoluci v podobě hardwarového osvětlování a transformací (T&L). //Související: [[DXVK]], [[Proton]], [[GPU]], [[WineD3D]]//