Odporúčaná, 2019

Redakcia Choice

Vulkan API: Všetko, čo potrebujete vedieť

Ak máte radi prehľad o najnovších technológiách, musíte sa o Vulkanovi dozvedieť. Vulkan API je najnovší a najväčší grafický API, ktorý oznámila spoločnosť Khronos Group, ktorí sú ľudia za súčasným štandardným štandardom OpenGL. Názov projektu Vulkan bol oficiálne ohlásený na konferencii vývojárov hier v roku 2015 a prvá verzia rozhrania API bola spustená vo februári 2016. Nová API je zameraná na hranie hernej grafiky na ďalšiu úroveň, takže ak vás zaujímajú detaily, sme tu, aby sme vám to dali.

Diskutujeme o tom, čo je Vulkan API, ako sa líši od jeho predchodcu OpenGL a ako môže Vulkan API zmeniť spôsob, akým sa v blízkej budúcnosti vyvíjajú hry a iné grafické aplikácie. Čítajte ďalej a preskúmajte tento vzrušujúci vývoj vo svete renderovania a grafiky.

Čo je Vulkan API?

O pár rokov späť, AMD predviedla Mantle, uprednostňujúce rozhranie API, ktoré bolo zamerané na 3D hry a zatiaľ čo sa ukázalo, že sľubuje, že je šikovným riešením na vykresľovanie grafiky, spoločnosť AMD zabil projekt. Spoločnosť AMD potom poskytla komponenty Mantle API spoločnosti Khronos Group, aby vyvinuli štandardné rozhranie API na vykresľovanie. Výsledkom je nový Vulcan API.

Rozhranie Vulkan API je rozhranie API s nízkou nadstavbou, ktoré dokáže lepšie využiť viacjadrové CPU, ktoré sú v súčasnosti všadeprítomné, a tiež poskytne programy s priamym prístupom k CPU a GPU systému. Je tiež OS agnostika. To znamená, že aplikácie, ktoré používajú Vulkan API, budú ľahko prenosné.

Keď sme sami záľubní hráči a fanúšikovia hry, rozhodli sme sa, že sa budeme zaujímať o budúcnosť toho, ako sa budú hry čoskoro vyvíjať a ako (ak vôbec) budú zlepšovať naše herné zážitky.

Vlastnosti

Vulkan API má pomerne veľa funkcií, ktoré robia to odlišné a lepšie ako jeho predchodca OpenGL:

1. Vulkan API sa snaží rovnomerne vyvažovať záťaž spracovania medzi každým jadrom v prostredí s viacerými jadrami. To znamená, že každé jadro procesora je použité, a tým maximalizuje efektívnosť .

  • To bude veľmi znateľný rozdiel v rendering grafiky, ktoré vyžadujú veľa remizov.
  • S staršími rozhraniami API, častejšie než procesor, je CPU prekážkou. Avšak Vulkan kladie viacjadrové procesory na také dobré využitie, že je pravdepodobnejšie, že namiesto toho sa nájde prekážka v GPU.

2. Aplikácia Vulcan API ponúka priamy prístup k GPU, ktorá zabezpečí, aby sa zabránilo zbytočným režijným nákladom pri prístupe k GPU pri výzvam a iných zariadeniach GPU.

  • To znamená, že ťažšie hry nebudú v súčasnosti intenzívne ako CPU. Tiež vodiči budú hrať menšiu úlohu pri poskytovaní prístupu k GPU, čím sa prenos informácií oveľa rýchlejšie.

3. Rozhranie API je tiež navrhnuté tak, aby bolo úplne naprieč platformou .

  • Žiadne ďalšie rozhrania API pre mobilné telefóny, stolné počítače a konzoly. Aplikácia Vulkan API bude rovnaká pre každé zariadenie s kompatibilným GPU.

4. Zatiaľ čo OpenGL skryté využitie pamäte GPU a synchronizáciu skryté, Vulkan to odhaľuje a dáva vývojárom ešte lepšiu kontrolu nad GPU a ako sa používa.

  • Vulkan umožňuje vývojárom kontrolovať, ako GPU formáty textúry, spravuje pamäť a vykonáva synchronizáciu.
  • Stále však skrýva dostatok informácií na zachovanie kompatibility medzi platformami .

5. Vulkan používa SPIR-V prekladateľský jazyk pre paralelné výpočty a grafiku. SPIR-V, podobne ako jeho predchodcovia, SPIR1.2 a SPIR2.0, vyvinula skupina Khronos, s tým rozdielom, že SPIR-V nepoužíva LLVM. SPIR-V umožňuje spoločnosti Vulkan mať na každej platforme spoločný kompilátor na prednej strane. Vývojári tiež nemusia posielať jadro, kód shaderu a implementácia ovládačov je zjednodušená.

Ako nám môže Vulkan pomôcť ako koncoví užívatelia

Aplikácia API Vulkan, ak ju vývojári plne využívajú, môže drasticky zlepšiť zážitok z hrania koncového používateľa (to vy a ja!). Myslíte si konzolu na úrovni grafiky na mobilných zariadeniach, možno dokonca aj desktop grafiku pre špičkové vlajkové lode s kompetentnými procesormi!

1. Keďže väčšina mobilných SoC je v týchto dňoch aj viacjadrových, Vulkan bude využívať procesory v maximálnej možnej miere, čím sa hry budú hladšie (vyšší FPS).

2. Taktiež, pretože Vulkan poskytuje nízky režijný prístup k GPU zariadenia, znamená to, že hry budú môcť do značnej miery skrátiť čas potrebný na získanie prístupu k zdrojom GPU. Opäť to znamená lepšiu grafiku pri vyšších snímkach za sekundu tým, že maximálne využíva možnosti GPU .

3. Zatiaľ čo schopnosti cross platformu, ktoré uľahčujú prenosnosť pre hry, nemusia vás priamo ovplyvniť ako koncový používateľ, znamená to, že vaše obľúbené hry a grafické aplikácie môžu byť k dispozícii na takmer každej platforme . Možnosti sú nekonečné a obmedzené len našou predstavou.

4. Hry budú tiež schopné zabezpečiť plynulší výkon tým, že zabezpečia, že GPU venuje väčšiu pozornosť (čítanie: alokuje viac pamäte a dáva prednosť) veciam, ktoré sú okamžite viditeľné pre užívateľa, čím sa hra stáva imunitou k oneskoreniam a poklesom rámu,

Možnosti pre vývojárov

Kým grafická API s nízkou úrovňou riadenia je nepochybne dobrý nápad, nie je to očividná príťažlivosť pre každého vývojára, najmä pre nových vývojárov. Programovanie na nižšej, bližšej k hardvérovej úrovni vyžaduje oveľa viac zdatnosť ako programovanie na vyššej úrovni, ktorá je viac abstrahovaná. To v žiadnom prípade nie je šok. Je to celkom zrejmé a práve preto vývojári majú tri rôzne možnosti, ako postupovať pomocou Vulkan pre svoje rozvojové projekty.

1. Použite Vulkan API priamo

  • To poskytne najnižší prístup k hardvéru a samozrejme nebude pre všetkých voľbou. Táto úroveň sa však môže použiť na vytvorenie nástrojov na porovnávanie iných aplikácií vyvinutých pomocou Vulkan.

2. Použite knižnice

  • Pravdepodobne najvýhodnejšou možnosťou pre vývojárov, ktorí prechádzajú z OpenGL na Vulkan.
  • Väčšina knižníc bude otvoreným zdrojom, takže vývojári, ktorí majú skúsenosti s vývojom pomocou OpenGL, sa môžu pokúsiť a pomerne ľahko vyskúšať aplikácie OpenGL na rozhranie Vulkan API, namiesto toho, aby museli vykonať úplnú revíziu alebo začať od začiatku.

3. Použite herné motory Optimalizované s Vulkan

  • Sme presvedčení, že to je miesto, kde sa bude venovať väčšina vývojárov. Herné motory sú navrhnuté a vyvíjané dobre zavedenými, skúsenými, ťažkými priemyselnými odvetviami a môžu byť ľahko použité vývojármi (skúsenými aj začiatočníkmi) na vytváranie hier, ktoré využívajú výhody ktoré ponúka Vulkan API.
  • Vývojári, ako napríklad Epic Games (Unreal Engine) a Unity (Unity Engine), už oznámili podporu Vulkan v ich nadchádzajúcich motoroch a oveľa viac ohlásilo plány na to, aby nasledovali.

POZRI TIEŽ: Pochopenie APFS: Nový systém súborov od spoločnosti Apple

Vzrušiť sa!

V prípade, že vás článok nepresvedčil ... vzrušený! Teraz! Vulkan sľubuje, že je to druh priekopníckeho vývoja grafických API, ktoré zlepšia náš herný život. Už existujú videá porovnávania medzi výkonom Vulkan a OpenGL a výsledky sú - jednoducho - úžasné. Ak sú tieto videá nejakým náznakom, pripravte sa na to, aby ste zažili úžasnú grafickú kvalitu všade, vrátane vašich mobilných telefónov, a to všetko vďaka príchodu Vulcan API!

Takže, čo si myslíte o Vulkáne? Myslíte si, že to bude skvelé zlepšenie oproti súčasnému štandardu OpenGL? Dajte nám vedieť v sekcii komentárov nižšie.

Top