Hvis du elsker å holde en fane på den nyeste teknologien, må du ha hørt om Vulkan. Vulkan API er den nyeste og beste grafikk-API, annonsert av Khronos Group, som er folket bak dagens nåværende industristandard OpenGL. Prosjektnavnet Vulkan ble offisielt annonsert på Game Developers Conference i 2015, og den første versjonen av API ble lansert i februar 2016. Den nye APIen tar sikte på å ta spillgrafikk til neste nivå, så hvis du er interessert i detaljer, vi er her for å gi det til deg.
Vi diskuterer hva Vulkan API er, hvordan det er forskjellig fra forgjengeren OpenGL, og hvordan Vulkan API kan endre måten spill og andre grafikkintensive applikasjoner utvikles i nær fremtid. Les videre for å utforske om denne spennende utviklingen i verden av gjengivelse og grafikk.
Hva er Vulkan API?
Et par år tilbake viste AMD Mantle, arendering API som var målrettet mot 3D-spill, og mens det viste seg å være en snappier løsning for å gi grafikk, døde AMD av prosjektet. Deretter ga AMD Mantle API-komponentene til Khronos Group for å utvikle en standard API for gjengivelse. Vel, resultatet er den nye Vulcan API.
Vulkan API er en lav overhead rendering API som bedre kan utnytte multi-core CPUer som er allestedsnærværende i disse dager, og vil også gi programmer med mer direkte tilgang til CPU og GPU av systemet. Det er også OS-agnostisk. Dette betyr at applikasjoner som bruker Vulkan API, vil være lett bærbare.
Å være ivrige spillere og spillentusiaster selv, bestemte oss for å ta en titt på fremtiden for hvordan spillene skal utvikles snart, og hvordan (hvis i det hele tatt) vil det forbedre spillopplevelsen vår.
Egenskaper
Vulkan API har ganske mange funksjoner som gjør det annerledes og bedre enn forgjengeren OpenGL:
1. Vulkan API prøver å balansere behandlingsbelastninger like mellom hver kjerne i et multi-kjerne miljø. Dette betyr at hver kjerne i prosessoren blir brukt, og dermed maksimerer effektiviteten .
- Dette vil gjøre en svært merkbar forskjell i gjengivelse av grafikk som krever mange trekksamtaler.
- Med eldre APIer, oftest enn, er CPU en flaskehals. Vulkan setter imidlertid flere kjerne-CPUer til en slik god bruk, at det er mer sannsynlig at en flaskehals vil bli funnet i GPU stedet.
2. Vulcan API vil gi direkte tilgang til GPU, som vil sørge for å unngå unødvendige kostnader ved å få tilgang til GPUen for å trekke samtaler og andre GPU-fasiliteter.
- Dette betyr at tyngre spill nå ikke vil være så CPU-intensive som de er for øyeblikket. Også sjåførene vil spille en mindre rolle i å gi tilgang til GPU, noe som gjør overføringen av informasjon så mye raskere.
3. API er også designet for å være helt kryssplattform .
- Ikke flere forgrenings-APIer for mobiler, skrivebord og konsoller. Vulkan API vil være det samme på alle enheter med en kompatibel GPU.
4. Mens OpenGL holdt GPU-minnebruk og synkronisering skjult, avslører Vulkan dette og gir utviklerne enda bedre kontroll over GPUen og hvordan den brukes.
- Vulkan tillater utviklerne å kontrollere hvordan GPU formaterer teksturer, styrer minne og utfører synkronisering.
- Det skjuler imidlertid fortsatt nok informasjon for å opprettholde kompatibilitet på tvers av plattformer .
5. Vulkan bruker SPIR-V-språket for parallell databehandling og grafikk. SPIR-V, som sine forgjengere, SPIR1.2 og SPIR2.0, er utviklet av Khronos-gruppen, med den forskjellen at SPIR-V ikke bruker LLVM. SPIR-V tillater Vulkan å ha en felles front-end-kompilator på alle plattformer. Utviklere trenger heller ikke å sende kjerne, skyggekode, og driverens implementering er forenklet.
Hvordan Vulkan kan hjelpe oss som sluttbrukere
Vulkan API, når implementert til sitt fulle potensial av utviklere, kan forbedre sluttbrukerens (det er deg og meg!) Spillopplevelse drastisk. Tenk konsollnivågrafikk på mobile enheter, kanskje til og med desktopgrafikgrafikk for high-end flaggskip med kompetente prosessorer!
1. Siden de fleste mobile SoCs i disse dager også er multi-core, vil Vulkan utnytte prosessorene i størst mulig grad, noe som gjør spillene jevnere (høyere FPS).
2. Siden Vulkan gir en lav overhead tilgang til GPU av enheten, betyr det at spill nå vil kunne redusere tiden som er tatt for å få tilgang til GPU ressurser i stor grad. Igjen, dette betyr bedre grafikk ved høyere rammer per sekund ved å maksimere bruken av GPUs evner .
3. Mens kryssplattformfunksjoner gjør det enklere å gjøre portabilitet for spill enklere, kan det ikke direkte påvirke deg som sluttbruker, men det betyr at favorittspillene dine og grafikkintensive applikasjoner kan være tilgjengelige på nesten alle plattformer der ute. Mulighetene er uendelige og begrenset bare av vår fantasi.
4. Spillene vil også kunne sikre jevnere ytelser ved å sørge for at GPU betaler mer oppmerksomhet (les: tildeler mer minne og gir preferanse til) til ting som er umiddelbart synlige for brukeren, noe som gjør spillet mer immun mot lag og rammedråper .
Alternativer for utviklere
Selv om et lavt nivå, low-overhead-API for grafikk utvilsomt er en god ide, er det ikke en åpenbar attraksjon for alle utviklere, spesielt de nye. Programmering på lavere, nærmere maskinvarenivået krever litt mer dyktighet enn programmering på høyere nivå, noe som er mer abstrahert. Dette er på ingen måte en shocker. Det er ganske tydelig, og det er nettopp derfor utviklere vil ha tre forskjellige muligheter på hvordan å gå om å bruke Vulkan for deres utviklingsprosjekter.
1. Bruk Vulkan API direkte
- Dette vil gi lavest nivå tilgang til maskinvaren, og åpenbart ikke kommer til å være et valg for alle. Dette nivået kan imidlertid brukes til å skape benchmarking verktøy for andre programmer utviklet ved hjelp av Vulkan.
2. Bruk biblioteker
- Muligens det mest lønnsomme alternativet for utviklere som overgår fra OpenGL til Vulkan.
- De fleste biblioteker vil være åpen kildekode, slik at utviklere som har erfaring med utvikling ved hjelp av OpenGL, kan prøve å portere OpenGL-applikasjonene til Vulkan-API-en relativt enkelt, i stedet for å gjøre en fullstendig overhaling eller fra begynnelsen.
3. Bruk spillmotorer optimert med Vulkan
- Vi er sikre på at dette er hvor de fleste utviklerne kommer inn. Spillmotorer er designet og utviklet av veletablerte, erfarne, industrielle tungvekter og kan enkelt brukes av utviklere (både erfarne og nybegynnere) for å skape spill som bruker fordelene tilbys av Vulkan API.
- Utviklere som Epic Games (Unreal Engine) og Unity (Unity Engine) har allerede kunngjort Vulkan-støtte i sine kommende motorer, og mange flere har annonsert planer om å følge.
SE OGSÅ: Forstå APFS: Det nye filsystemet fra Apple
Bli oppspillt!
Hvis artikkelen ikke overbeviste deg ... bli begeistret! Nå! Vulkan lover å være den slags banebrytende utvikling i grafikk-APIer som vil forbedre våre spilleliv. Det finnes allerede videoer av sammenligninger mellom Vulkan og OpenGL ytelse, og resultatene er - ganske enkelt - fantastisk. Hvis disse videoene er noen indikasjon, gjør deg klar til å oppleve fantastisk grafikkvalitet overalt, inkludert mobiler, alt takket være ankomst av Vulcan API!
Så, Hva synes du om Vulkan? Tror du det vil bli en stor forbedring i forhold til dagens OpenGL-standard? Gi oss beskjed i kommentarfeltet nedenfor.