Anbefalet, 2024

Redaktørens Valg

Vulkan API: Alt du behøver at vide

Hvis du elsker at holde en fane på de nyeste teknologier, skal du have hørt om Vulkan. Vulkan API er den nyeste og bedste grafik API'er, der er annonceret af Khronos Group, som er folkene bag den nuværende industristandard OpenGL. Projektnavnet Vulkan blev officielt annonceret på Game Developers Conference i 2015, og den første version af API'en blev lanceret i februar 2016. Den nye API har til formål at tage spilgrafik til næste niveau, så hvis du er interesseret i detaljer, vi er her for at give det til dig.

Vi diskuterer, hvad Vulkan API er, hvordan det adskiller sig fra dets forgænger OpenGL, og hvordan Vulkan API kan ændre den måde, som spil og andre grafikintensive applikationer udvikles i den nærmeste fremtid. Læs videre for at udforske om denne spændende udvikling i verden med gengivelse og grafik.

Hvad er Vulkan API?

Et par år tilbage viste AMD Mantle, arendering API, der var målrettet mod 3D-spil, og mens det viste løfte om at være en snappier løsning til gengivelse af grafik, dræbte AMD projektet. Derefter gav AMD Mantle API-komponenterne til Khronos Group for at udvikle en standard API til gengivelse. Nå er resultatet det nye Vulcan API.

Vulkan API er en lav overhead rendering API, der bedre kan udnytte de multi-core CPU'er, der er allestedsnærværende i disse dage, og vil også give programmer med mere direkte adgang til CPU og GPU af systemet. Det er også OS agnostic. Det betyder, at applikationer, der bruger Vulkan API, nemt kan transporteres.

Vi var selvfølgelig glade spillere og spilentusiaster selv, og vi besluttede at se på fremtiden for, hvordan spil udvikles hurtigt, og hvordan (hvis det overhovedet) vil det forbedre vores spiloplevelse.

Funktioner

Vulkan API har mange funktioner, der gør det anderledes og bedre end dets forgænger OpenGL:

1. Vulkan API forsøger at afbalancere behandling af belastninger lige mellem alle kerner i et multi-core miljø. Det betyder, at hver kerne i processoren er sat til brug, hvilket maksimerer effektiviteten .

  • Dette vil gøre en meget mærkbar forskel i gengivelse af grafik, der kræver mange uddragssamtaler.
  • Med gamle API'er er CPU oftere end ikke en flaskehals. Men Vulkan sætter multi-core CPU'er til en sådan god brug, at det er mere sandsynligt, at der i stedet findes en flaskehals.

2. Vulcan API'et giver direkte adgang til GPU, hvilket sikrer, at unødige omkostninger i forbindelse med adgang til GPU'en for udgående opkald og andre GPU-faciliteter undgås.

  • Det betyder, at tungere spil nu ikke vil være så CPU-intensive som de er i øjeblikket. Også chaufførerne vil spille en mindre rolle i at give adgang til GPU'en, hvilket gør overførslen af ​​information meget hurtigere.

3. API'en er også designet til at være fuldstændig krydsplatform .

  • Ikke flere branching API'er til mobiler, desktops og konsoller. Vulkan API vil være den samme på tværs af enhver enhed med en kompatibel GPU.

4. Mens OpenGL holdt GPU-hukommelsesforbruget og synkroniseringen gemt, afslører Vulkan dette og giver udviklerne endnu bedre kontrol over GPU'en og hvordan den bruges.

  • Vulkan giver udviklere mulighed for at kontrollere, hvordan GPU formaterer teksturer, styrer hukommelse og udfører synkronisering.
  • Det skjuler dog stadig nok information til at opretholde kompatibilitet på tværs af platformen .

5. Vulkan bruger SPIR-V-mellemsprog til parallel computing og grafik. SPIR-V, som sine forgængere, SPIR1.2 og SPIR2.0, er udviklet af Khronos-gruppen, med den forskel, at SPIR-V ikke bruger LLVM. SPIR-V tillader Vulkan at have en fælles front-end compiler på alle platforme. Udviklere har heller ikke brug for at sende kernen, shader-kode, og driverens implementering er forenklet.

Hvordan Vulkan kan hjælpe os som slutbrugere

Vulkan API, når implementeret til sit fulde potentiale af udviklere, kan forbedre slutbrugerens (det er dig og mig!) Spiloplevelse drastisk. Tænk konsol niveau grafik på mobile enheder, måske endda desktop grade grafik til high end flagskibe med kompetente processorer!

1. Da de fleste mobile SoCs i disse dage også er multi-core, vil Vulkan udnytte processorerne i størst muligt omfang, hvilket gør spilene glattere (højere FPS).

2. Også fordi Vulkan giver en lav overheadadgang til enhedens GPU, betyder det, at spil nu kan reducere den tid, der er taget for at få adgang til GPU-ressourcer i stor udstrækning. Endnu en gang oversætter dette til bedre grafik ved højere rammer per sekund ved at maksimere brugen af ​​GPU'ens evner .

3. Selvom krydsplatformens kapaciteter gør det lettere at foretage portabilitet til spil, kan det ikke påvirke dig direkte som en slutbruger. Det betyder, at dine yndlingsspil og grafiske intensive applikationer muligvis er tilgængelige på næsten alle platforme derude. Mulighederne er uendelige og begrænsede kun af vores fantasi.

4. Spil vil også kunne sikre jævnere præstationer ved at sikre, at GPU betaler mere opmærksomhed (læs: tildeler mere hukommelse og foretrækker) til ting, der umiddelbart er synlige for brugeren, hvilket gør spillet mere immun over for lags og rammedråber .

Indstillinger for udviklere

Mens et lavt niveau, lav-overhead API til grafik uden tvivl er en god ide, er det ikke en åbenbar attraktion for enhver udvikler, især de nye. Programmering til lavere, tættere på hardwareniveauet kræver en smule mere dygtighed end programmering på et højere niveau, hvilket er mere abstraheret. Dette er på ingen måde en shocker. Det er ret oplagt, og det er netop derfor, at udviklere vil have tre forskellige muligheder for, hvordan man skal bruge Vulkan til deres udviklingsprojekter.

1. Brug Vulkan API direkte

  • Dette giver den laveste adgang til hardwaren, og det er selvfølgelig ikke et valg for alle. Men dette niveau kan bruges til at oprette benchmarking værktøjer til andre applikationer udviklet ved hjælp af Vulkan.

2. Brug biblioteker

  • Muligvis den mest levedygtige mulighed for udviklere, der overgår fra OpenGL til Vulkan.
  • De fleste biblioteker vil være open source, så udviklere, der har erfaring med udvikling ved hjælp af OpenGL, kan forsøge at sende deres OpenGL-applikationer til Vulkan API med relativt lethed, snarere end at skulle foretage en komplet renovering eller starte fra bunden.

3. Brug spilmotorer optimeret med Vulkan

  • Vi er sikre på, at dette er her, hvor de fleste udviklere vil komme ind. Spilmotorer er designet og udviklet af veletablerede, erfarne, industrielle tungvægte og kan nemt bruges af udviklere (både erfarne og begyndere) til at skabe spil, der bruger fordelene Udbydes af Vulkan API.
  • Udviklere som Epic Games (Unreal Engine) og Unity (Unity Engine) har allerede annonceret Vulkan support i deres kommende motorer, og mange flere har meddelt planer om at følge.

SE OGSÅ: Forstå APFS: Det nye filsystem fra Apple

Blive begejstret!

Hvis artiklen ikke overbeviste dig ... blive spændt! Nu! Vulkan lover at være den slags banebrydende udvikling i grafik API'er, der vil forbedre vores spil liv. Der findes allerede videoer af sammenligninger mellem Vulkan og OpenGL performance, og resultaterne er - helt enkelt - fantastiske. Hvis disse videoer er nogen indikation, gør dig klar til at opleve fantastisk grafikkvalitet overalt, herunder dine mobiler, alt takket være ankomsten af ​​Vulcan API!

Så hvad synes du om Vulkan? Tror du det vil være en stor forbedring i forhold til den nuværende OpenGL-standard? Lad os vide i kommentarfeltet nedenfor.

Top