Om du älskar att hålla en flik på den senaste tekniken måste du ha hört talas om Vulkan. Vulkan API är det senaste och bästa av grafik API, meddelade av Khronos Group, som är människorna bakom dagens industristandard OpenGL. Projektnamnet Vulkan publicerades officiellt på Game Developers Conference i 2015, och den första versionen av API-programmet lanserades i februari 2016. Det nya APIet syftar till att ta spelgrafik till nästa nivå, så om du är intresserad av detaljer, vi är här för att ge dig det.
Vi diskuterar vad Vulkan API är, hur det skiljer sig från föregångaren OpenGL, och hur Vulkan API kan ändra hur spel och andra grafiska intensiva applikationer utvecklas inom en snar framtid. Läs vidare för att utforska om denna spännande utveckling i världen av rendering och grafik.
Vad är Vulkan API?
Ett par år tillbaka visade AMD Mantle, arendering API som riktades mot 3D-spel och medan det visade sig vara en snällare lösning för att göra grafik, dödade AMD av projektet. Sedan gav AMD Mantle API-komponenterna till Khronos Group för att utveckla ett standard API för återgivning. Tja, resultatet är det nya Vulcan API.
Vulkan API är ett lågprissättningshanterings API som bättre kan utnyttja de flerkärniga processorerna som är allestädes närvarande dessa dagar och kommer också att ge program med mer direkt åtkomst till CPU och GPU i systemet. Det är också OS agnostic. Det betyder att applikationer som använder Vulkan API kommer att vara lättportabla.
Att vara avidspelare och spelentusiaster själva bestämde vi för att titta på framtiden för hur spel kommer att utvecklas snart och hur (om alls) det kommer att förbättra vår spelupplevelse.
Funktioner
Vulkan API har många funktioner som gör det annorlunda och bättre än föregångaren OpenGL:
1. Vulkan API försöker balansera bearbetning laster lika mellan alla kärnor i en multi-core miljö. Det innebär att varje kärna i processorn används, vilket maximerar effektiviteten .
- Detta kommer att göra en mycket märkbar skillnad när det gäller att göra grafik som kräver många dragsamtal.
- Med äldre API-er, oftare än, är CPU en flaskhals. Men Vulkan sätter flera kärnprocessorer till en sådan bra användning, att det är mer sannolikt att en flaskhals hittas i GPU istället.
2. Vulcan API kommer att erbjuda direkt åtkomst till GPU, vilket kommer att se till att undvika onödiga omkostnader när det gäller att komma åt GPU för röstsamtal och andra GPU-anläggningar.
- Det innebär att tyngre spel nu inte kommer att vara lika CPU-intensiva som de för närvarande är. Dessutom kommer drivrutinerna att spela en mindre roll för att ge tillgång till GPU, vilket gör överföringen av information så mycket snabbare.
3. API: n är också utformad för att vara fullständigt korsplattform .
- Inga fler grenar API för mobiler, stationära datorer och konsoler. Vulkan API kommer att vara densamma över alla enheter med en kompatibel GPU.
4. Medan OpenGL höll GPU-minnesanvändningen och synkroniseringen dold, avslöjar Vulkan detta och ger utvecklarna ännu bättre kontroll över GPU och hur den används.
- Vulkan låter utvecklarna kontrollera hur GPU formaterar texturer, hanterar minne och utför synkronisering.
- Det döljer dock fortfarande tillräckligt med information för att upprätthålla kompatibilitet på plattformen .
5. Vulkan använder SPIR-V-språket för parallell databehandling och grafik. SPIR-V, som dess föregångare, SPIR1.2 och SPIR2.0, har utvecklats av Khronos-gruppen, med skillnaden att SPIR-V inte använder LLVM. SPIR-V tillåter Vulkan att ha en gemensam front-end-kompilator på alla plattformar. Utvecklare behöver inte heller leverera kärnor, skuggarkod och förenkling av drivrutinen.
Hur Vulkan kan hjälpa oss som slutanvändare
Vulkan API, när det implementeras till sin fulla potential av utvecklare kan förbättra slutanvändarens (det är du och jag!) Spelupplevelse drastiskt. Tänk konsolnivågrafik på mobila enheter, kanske till och med grafikkortgrafik för avancerade flaggskepp med kompetenta processorer!
1. Eftersom de flesta mobila soCs dessa dagar också är flera kärnor, kommer Vulkan att utnyttja processorerna så mycket som möjligt, vilket gör matchen smidigare (högre FPS).
2. Eftersom Vulkan ger en låg tillgång till GPU-enheten på enheten betyder det att spel nu kommer att kunna minska tiden som krävs för att få tillgång till GPU-resurser i stor utsträckning. Återigen övergår detta till bättre grafik vid högre bildrutor per sekund genom att maximalt utnyttja GPU: s kapacitet .
3. Medan överplattformskapacitet gör det lättare att göra portabilitet för spel, påverkar det inte direkt dig som slutanvändare men det betyder att dina favoritspel och grafiska intensiva applikationer kan vara tillgängliga på nästan alla plattformar där ute. Möjligheterna är oändliga och begränsas endast av vår fantasi.
4. Spel kommer också att kunna säkerställa en mjukare prestanda genom att se till att GPU betalar mer uppmärksamhet (läs: fördelar mer minne och föredrar) till saker som är omedelbart synliga för användaren, vilket gör spelet mer immun mot lags och ramdroppar .
Alternativ för utvecklare
Medan en lågnivå, lågpris-API för grafik utan tvekan är en bra idé, är det inte en uppenbar attraktion för varje utvecklare, särskilt de nya. Programmering till en lägre nivå, närmare hårdvarumnivån, kräver ganska lite mer förmåga än programmering på högre nivå, vilket är mer abstraherad. Detta är inte på något sätt en chocker. Det är ganska uppenbart, och det är exakt varför utvecklare kommer att ha tre olika alternativ på hur man ska gå om att använda Vulkan för deras utvecklingsprojekt.
1. Använd Vulkan API direkt
- Detta ger den lägsta nivån till hårdvaran, och det kommer självklart inte att vara ett val för alla. Denna nivå kan dock användas för att skapa benchmarkingverktyg för andra applikationer som utvecklats med hjälp av Vulkan.
2. Använd bibliotek
- Eventuellt det mest genomförbara alternativet för utvecklare som övergår från OpenGL till Vulkan.
- De flesta bibliotek kommer att vara öppen källkod, så utvecklare som har erfarenhet av utveckling med OpenGL kan försöka porta sina OpenGL-applikationer till Vulkan API med relativt enkelt, snarare än att behöva göra en fullständig översyn eller börja från början.
3. Använd spelmotorer optimerade med Vulkan
- Vi är säkra på att det här är där de flesta utvecklarna kommer in. Spelmotorerna är konstruerade och utvecklade av väletablerade, erfarna industrigrenar och kan enkelt användas av utvecklare (både erfarna och nybörjare) för att skapa spel som använder fördelarna erbjuds av Vulkan API.
- Utvecklare som Epic Games (Unreal Engine) och Unity (Unity Engine) har redan meddelat Vulkan support i sina kommande motorer, och många fler har meddelat planer att följa.
SE ÄVEN: Förstå APFS: Det nya filsystemet från Apple
Bli upphetsad!
Om artikeln inte övertygade dig ... bli upphetsad! Nu! Vulkan lovar att vara den typ av banbrytande utvecklingen i grafik API som kommer att förbättra våra spel liv. Det finns redan videor av jämförelser mellan Vulkan och OpenGL-prestanda, och resultaten är - helt enkelt - fantastiska. Om dessa videoklipp är några indikationer, gör dig redo att uppleva fantastisk grafikkvalitet överallt, inklusive dina mobiler, allt tack vare Vulcan API!
Så, Vad tycker du om Vulkan? Tror du det kommer att bli en bra förbättring jämfört med den nuvarande OpenGL-standarden? Låt oss veta i kommentarfältet nedan.