Doporučená, 2024

Redakce Choice

Vulkan API: Vše, co potřebujete vědět

Pokud máte rádi udržet si přehled o nejnovějších technologiích, musíte slyšet o Vulkan. API Vulkan je nejnovější a největší grafické rozhraní API, které oznámila skupina Khronos Group, což jsou lidé, kteří stojí za současným průmyslovým standardem OpenGL. Název projektu Vulkan byl oficiálně vyhlášen na konferenci Game Developers 'Conference v roce 2015 a první verze API byla spuštěna v únoru 2016. Nové rozhraní API je zaměřeno na to, aby hrací grafika byla na vyšší úrovni, takže pokud máte zájem podrobnosti, jsme tu, abychom vám ho dali.

Diskutujeme o tom, co je Vulkan API, jak se liší od jeho předchůdce OpenGL a jak může Vulkan API změnit způsob, jakým jsou hry a další aplikace náročné na grafiku vyvíjeny v blízké budoucnosti. Přečtěte si o tomto vzrušujícím vývoji ve světě vykreslování a grafiky.

Co je Vulkan API?

O pár let zpět, AMD předvedl Mantle, arendering API, které bylo zaměřeno na 3D hry, a zatímco to ukázalo slib v tom, že je snappier řešení pro vykreslování grafiky, AMD zabil projektu. Pak AMD dala komponentám Mantle API komponenty Khronos Group, aby vyvinula standardní API pro renderování. Výsledkem je nové rozhraní Vulcan API.

Vulkan API je nízká režijní API, která dokáže lépe využívat vícejádrové procesory, které jsou v těchto dnech všudypřítomné a bude také poskytovat programy s přímějším přístupem k CPU a GPU systému. Je to také agnostic OS. To znamená, že aplikace, které používají rozhraní Vulkan API, budou snadno přenosné.

Jelikož jsme vášnivými hráči a nadšenci her sami, rozhodli jsme se podívat se do budoucna, jak budou hry brzy vyvíjeny a jak (pokud vůbec) zlepší náš herní zážitek.

Funkce

Rozhraní API Vulkan má spoustu funkcí, které ho činí odlišným a lepším než jeho předchůdce OpenGL:

1. Vulkan API se snaží rovnoměrně vyvažovat zpracování zátěže mezi každým jádrem v prostředí s více jádry. To znamená, že každé jádro v procesoru je použito, čímž se maximalizuje efektivita .

  • To bude velmi znatelný rozdíl v vykreslování grafiky, které vyžadují spoustu volání.
  • S staršími API, častěji než ne, je CPU úzkým místem. Nicméně, Vulkan staví vícejádrové procesory na takové dobré využití, že je spíše pravděpodobné, že místo toho bude v GPU nalezen úzký profil.

2. Vulcan API nabídne přímý přístup k GPU, což zajistí, že se vyhnete zbytečným režijním nákladům na přístup k GPU pro volání a další GPU zařízení.

  • To znamená, že těžší hry nebudou nyní tak intenzivní jako CPU. Ovladače také budou hrát menší roli při poskytování přístupu k GPU, což umožní mnohem rychlejší přenos informací.

3. Rozhraní API je také navrženo tak, aby bylo zcela křížové .

  • Žádné další rozbočovací API pro mobily, desktopy a konzoly. Vulkan API bude stejné pro každé zařízení s kompatibilním GPU.

4. Zatímco OpenGL udržel využití paměti GPU a synchronizaci skryté, Vulkan to odhaluje a dává vývojářům ještě lepší kontrolu nad GPU a tím, jak se používá.

  • Vulkan umožňuje vývojářům kontrolovat, jak formáty GPU formátují, řídí paměť a provádí synchronizaci.
  • Však stále skrývá dostatek informací pro zachování kompatibility mezi platformami .

5. Vulkan používá mezilehlý jazyk SPIR-V pro paralelní výpočty a grafiku. SPIR-V, stejně jako jeho předchůdci, SPIR1.2 a SPIR2.0, byl vyvinut skupinou Khronos Group s tím rozdílem, že SPIR-V nepoužívá LLVM. SPIR-V umožňuje Vulkan mít na každé platformě společný kompilátor. Vývojáři také nemusí dodávat jádro, kód shaderu a implementace ovladače je zjednodušena.

Jak nám Vulkan může pomoci jako koncoví uživatelé

Rozhraní Vulkan API, když je vývojář implementován v plném rozsahu, může drasticky vylepšit herní zážitek koncového uživatele (to je vy a já!). Myslíte si, že konzolová úroveň grafiky na mobilních zařízeních, možná i stolní grafiku pro špičkové vlajkové lodě s příslušnými procesory!

1. Vzhledem k tomu, že většina mobilních SoC v těchto dnech je také vícejádrová, bude Vulkan využívat procesory v maximální možné míře, aby hry byly hladší (vyšší FPS).

2. Vzhledem k tomu, že Vulkan poskytuje nízký režijní přístup k GPU zařízení, znamená to, že hry budou nyní schopny zkrátit čas potřebný k získání přístupu ke zdrojům GPU do značné míry. To opět znamená lepší grafiku při vyšších snímcích za sekundu maximálním využitím možností GPU .

3. Zatímco možnosti cross platformy, což usnadňuje přenositelnost her, nemusí přímo ovlivnit vás jako koncového uživatele, znamená to, že vaše oblíbené hry a aplikace náročné na grafiku mohou být k dispozici téměř na každé platformě . Možnosti jsou nekonečné a omezené pouze naší představivostí.

4. Hry budou také schopny zajistit hladší výkon tím, že zajistí, že GPU věnuje více pozornosti (čte: přiděluje více paměti a dává přednost) na věci, které jsou uživateli okamžitě viditelné, což činí hru imunnější vůči zpožděním a poklesům snímků .

Možnosti pro vývojáře

Zatímco nízkoúrovňový nízkorozpočtový API pro grafiku je bezpochyby dobrý nápad, není to pro každého vývojáře, zejména nové, lákadlem. Programování na nižší úrovni, blíže hardwarové úrovni, vyžaduje o něco vyšší výkon než programování na vyšší úrovni, což je více abstrakce. To není v žádném případě šok. Je to docela zřejmé a je to přesně důvod, proč vývojáři budou mít tři různé možnosti, jak jít o použití Vulkan pro jejich vývojové projekty.

1. Použijte přímo rozhraní Vulkan API

  • To bude poskytovat nejnižší úroveň přístupu k hardwaru, a samozřejmě nebude to volba pro každého. Tato úroveň však může být použita k vytvoření nástrojů pro benchmarking pro jiné aplikace vyvinuté pomocí Vulkan.

2. Použijte knihovny

  • Možná nejschopnější variantou pro vývojáře, kteří přecházejí z OpenGL na Vulkan.
  • Většina knihoven bude otevřeným zdrojovým kódem, takže vývojáři, kteří mají zkušenosti s vývojem pomocí OpenGL, mohou zkusit a zpřístupnit své aplikace OpenGL na rozhraní Vulkan API s relativně snadnou obsluhou, místo aby museli provádět kompletní generální opravy nebo začít od nuly.

3. Použijte herní enginy optimalizované pomocí Vulkan

  • Jsme si jisti, že toto je místo, kde se většina vývojářů dostane dovnitř. Herní motory jsou navrženy a vyvinuty dobře zavedenými, zkušenými, průmyslovými velkými společnostmi a mohou být snadno používány vývojáři (zkušenými i začínajícími) k vytváření her, které využívají výhod. nabízí Vulkan API.
  • Vývojáři jako Epic Games (Unreal Engine) a Unity (Unity Engine) již oznámili podporu Vulkan v jejich nadcházejících motorech a mnoho dalších oznámilo, že budou následovat.

SEE ALSO: Pochopení APFS: Nový souborový systém od společnosti Apple

Vzrušit se!

V případě, že by vás článek nepřesvědčil, buďte nadšeni! Nyní! Vulkan slibuje, že bude průlomovým vývojem grafických rozhraní API, která zlepší naše herní životy. Existují videa z porovnání mezi výkonem Vulkan a OpenGL a výsledky jsou - prostě - úžasné. Pokud jsou tato videa nějaká indikace, připravte se na zážitek z úžasné kvality grafiky, včetně mobilních telefonů, a to vše díky příchodu rozhraní Vulcan API!

Co si myslíš o Vulkanovi? Myslíte si, že to bude velké zlepšení oproti současnému standardu OpenGL? Dejte nám vědět v sekci komentáře níže.

Top