Soovitatav, 2020

Toimetaja Valik

Vulkani API: kõik, mida pead teadma

Kui sa armastad hoida viimaseid tehnoloogiaid, peate Vulkanist kuulnud olema. Vulkani API on uusim ja suurim graafika API, mida teatas Khronos Group, kes on praeguse tööstusstandardi OpenGL taga. Projekti nimi Vulkan kuulutati ametlikult välja mänguarendajate konverentsil 2015. aastal ja API esimene versioon käivitati 2016. aasta veebruaris. Uus API eesmärk on viia mängu graafika järgmisele tasandile, nii et kui olete huvitatud üksikasjad, oleme siin, et seda teile anda.

Arutame, mis on Vulkani API, kuidas see erineb tema eelkäijast OpenGL ja kuidas Vulkani API võib muuta mängu ja teiste graafika intensiivsete rakenduste lähitulevikus välja töötamise viisi. Loe edasi selle põneva arengu kohta graafika ja renderdamise maailmas.

Mis on Vulkani API?

Paar aastat tagasi, AMD näitas ära Mantle, arendering API, mis oli suunatud 3D-mängudele, ja kuigi see näitas lubadust olla graafilisemaks muutmise lahenduseks, tappis AMD projekti. Seejärel andis AMD Mantle API komponendid Khronos Groupile, et töötada välja standardne API renderdamiseks. Tulemuseks on uus Vulcan API.

Vulkani API on madal õhuliini renderdamise API, mis suudab paremini ära kasutada nendel päevadel esinevaid multisüdamikuid protsessoreid ning pakub ka programme, mis võimaldavad otsesemat juurdepääsu protsessorile ja süsteemi GPU-le. Samuti on see OS agnostik. See tähendab, et Vulkani API-d kasutavad rakendused on kergesti kaasaskantavad.

Olles innukad mängijad ja mängufilmid, otsustasime uurida tulevikus, kuidas mänge kiiresti arendatakse ja kuidas (kui üldse) see parandab meie mängukogemust.

Omadused

Vulkani API-l on palju funktsioone, mis muudavad selle erinevaks ja paremaks kui tema eelkäija OpenGL:

1. Vulkani API püüab tasakaalu töötlemise koormusi võrdselt iga südamiku vahel mitme tuumaga keskkonnas. See tähendab, et iga protsessori südamik on kasutusele võetud, suurendades seega efektiivsust .

  • See teeb väga märgatava erinevuse graafika kujundamisel, mis nõuab palju väljakutseid.
  • Vanemate API-de puhul on CPU sagedamini kitsaskoht. Kuid Vulkan paneb multi-core CPU-d sellisele heale kasutusviisile, et on tõenäolisem, et GPU-s leidub selle asemel kitsaskoht.

2. Vulcan API pakub otsest ligipääsu GPU-le, mis tagab, et GPU-le juurdepääsuks kõnede ja muude GPU-seadmete jaoks ei tehta tarbetuid üldkulusid.

  • See tähendab, et raskemad mängud ei ole praegu nii intensiivsed kui protsessor. Samuti mängivad draiverid GPU-le juurdepääsu tagamisel väiksemat rolli, muutes teabe edastamise palju kiiremaks.

3. API on loodud ka täiesti platvormiks .

  • Enam ei ole hargnevaid API-sid mobiiltelefonidele, lauaarvutitele ja konsoolidele. Vulkani API on ühilduva GPU-ga kõigis seadmetes sama.

4. Kuigi OpenGL hoidis GPU mälu kasutamist ja sünkroonimist peidetud, avaldab Vulkan selle ja annab arendajatele veelgi parema kontrolli GPU üle ja selle kasutamise üle.

  • Vulkan võimaldab arendajatel kontrollida, kuidas GPU vorminguid tekstureerib, haldab mälu ja teostab sünkroniseerimist.
  • Siiski peidab see siiski piisavalt teavet, et säilitada platvormiülene ühilduvus .

5. Vulkan kasutab paralleelseks arvutamiseks ja graafikaks SPIR-V vahekeelet . SPIR-V, nagu ka tema eelkäijad SPIR1.2 ja SPIR2.0, on välja töötanud Khronos Group, erinevalt sellest, et SPIR-V ei kasuta LLVM-i. SPIR-V võimaldab Vulkanil olla ühine esikülje kompilaator igal platvormil. Arendajad ei pea ka kerneli, shader-koodi edastama ja draiveri rakendamist lihtsustama.

Kuidas Vulkan võiks meid lõppkasutajatena aidata

Vulkani API, kui arendajad saavad selle täieliku potentsiaali realiseerida, võib oluliselt parandada lõppkasutaja (see on sinu ja mina!) Mängukogemust. Mõtle konsoolitasemel graafika mobiilseadmetele, võib-olla isegi töölaua klassi graafikale, millel on tipptasemel lipulaev pädevate töötlejatega!

1. Kuna tänapäeval on enamik mobiilsidevõrguid ka mitmetuumalised, kasutab Vulkan protsessoreid võimalikult suures ulatuses, muutes mängud sujuvamaks (kõrgem FPS).

2. Kuna ka Vulkan pakub seadme GPU-le madalat õhuliini juurdepääsu, siis tähendab see, et mängud saavad nüüd vähendada GPU ressursside ligipääsuks kuluvat aega. Veelgi enam, see tähendab paremat graafikat kõrgema kaadri sekundis, kasutades maksimaalselt ära GPU võimalusi .

3. Kuigi platvormide võimekus, mängude kaasaskantavuse lihtsustamine ei pruugi otseselt mõjutada teid lõppkasutajana, tähendab see, et teie lemmikmängud ja graafilised intensiivsed rakendused võivad olla peaaegu igas platvormis olemas. Võimalused on lõputud ja piiratud ainult meie kujutlusvõimega.

4. Mängud suudavad tagada ka sujuvama jõudluse, tagades, et GPU pöörab rohkem tähelepanu (loe: eraldab rohkem mälu ja eelistab) asjadele, mis on kasutajale kohe nähtavad, muutes mängu immuunseks viivitusele ja kaadri langusele .

Arendajate valikud

Kuigi madala tasemega, madala graafikaga API on kahtlemata hea mõte, ei ole see ilmselge atraktiivsus kõigile arendajatele, eriti uutele. Madalamale, lähemale riistvaratasandile programmeerimine nõuab üsna pisut suuremat võimet kui kõrgema taseme programmeerimine, mis on rohkem abstraktsed. See ei ole kuidagi šokeeriv. See on üsna ilmne ja just sellepärast on arendajatel kolm erinevat võimalust, kuidas Vulkani kasutada oma arendusprojektides.

1. Kasutage Vulkani API-d otse

  • See tagab madalaima taseme juurdepääsu riistvarale ja ei ole ilmselgelt kõigi jaoks valik. Seda taset saab siiski kasutada võrdlusuuringute tööriistade loomiseks teiste Vulkani abil loodud rakenduste jaoks.

2. Kasutage raamatukogusid

  • Võimalik, et OpenGLilt Vulkanile ülemineku arendajatele on kõige elujõulisem võimalus.
  • Enamik raamatukogusid on avatud lähtekoodiga, nii et arendajad, kellel on OpenGL-i kasutamisega seotud kogemusi, võivad suhteliselt kergesti proovida ja OpenGL-i rakendusi Vulkani API-le portida, selle asemel et teha täielikku remonti või alustada nullist.

3. Kasutage Vulkaniga optimeeritud mängu mootoreid

  • Oleme kindlad, et siin on enamik arendajaid. Mängumootorid on välja töötatud ja välja töötatud väljakujunenud, kogenud, tööstusharu raskeveokite poolt ning neid saavad kasutada nii arendajad (nii kogenud kui ka algajad), et luua mänge, mis kasutavad eeliseid pakuvad Vulkani API.
  • Sellised arendajad nagu Epic Games (Unreal Engine) ja Unity (Unity Engine) on juba teatanud Vulkani toetusest oma tulevastes mootorites ning paljud teised on teatanud plaanidest järgida.

VT KA: APFS: Apple'i uus failisüsteem

Hangi põnevil!

Juhul, kui artikkel ei veenda teid ... põnevil! Nüüd! Vulkan tõotab olla sellist murrangulist arengut graafika API-des, mis parandavad meie mängude elu. Juba eksisteerivad videod Vulkani ja OpenGLi tulemuste võrdlemisest ning tulemused on - lihtsalt - hämmastavad. Kui need videod on mis tahes näidustused, olge valmis Vulcan API-i saabumisega kõikjal, kaasa arvatud mobiiltelefonid, nautima hämmastavat graafika kvaliteeti!

Niisiis, mida sa arvad Vulkanist? Kas arvate, et see on praeguse OpenGLi standardiga võrreldes suur edasiminek? Anna meile teada allpool olevas kommentaaride osas.

Top