Spel

Vulkan för Linux-användare

Vulkan för Linux-användare

Med varje ny generation grafikkort ser vi spelutvecklare driva gränserna för grafisk trohet och komma ett steg närmare fotorealism. Men trots all kreditmaskinvara för framsteg inom grafisk teknik, hade inget av det vi hittills sett varit möjligt utan lika banbrytande mjukvaruutveckling. Och kanske den viktigaste mjukvaruutvecklingen i denna generation är lanseringen av Vulkan 1.0 specifikation.

Vad är Vulkan?

"Vulkan är en ny generation av grafik- och beräknings-API som ger högeffektiv, plattformsmässig åtkomst till moderna GPU: er som används i en mängd olika enheter från datorer och konsoler till mobiltelefoner och inbäddade plattformar", beskriver detta nya API: s huvudutvecklare ideellt tekniskt konsortium Khronos Group, på sin officiella webbplats.

Khronos-gruppen tillkännagav först Vulkan vid Game Developers Conference 2015, men den tekniska grunden som Vulkan står på går tillbaka till 2013, då AMD ursprungligen utvecklade Mantle, ett låg-overhead rendering API riktat mot 3D-videospel, i samarbete med DICE och donerade det till Khronos-gruppen för att starta Vulkans utveckling.

Vulkan kallas ofta ”en andlig efterträdare till OpenGL” även om dess filosofi är väldigt annorlunda. OpenGL och andra äldre grafik-API: er designades när fotorealism fortfarande var en avlägsen dröm, och enkärniga CPU: er och GPU: er representerade teknikens framkant. När hårdvaran förbättrats har OpenGL och dess motsvarigheter förlängts flera gånger, så att de kan köras på modern hårdvara såväl som på hårdvara som nu i huvudsak är föråldrad.

”Kostnaden för detta tillvägagångssätt har varit att beteendet hos moderna GPU: er är så abstraherade av API: et att det är svårt för applikationen och föraren att känna till varandras behov. Resultatet är en oförutsägbar prestanda för applikationen och betydande komplexitet i drivrutinen, eftersom varje leverantör tillämpar olika drivrutinsoptimeringar i ett försök att få programvara att köras snabbt, ”förklarar Samsung.

Enligt Robert Hallock, AMD: s chef för global teknisk marknadsföring, ville företaget föra OpenGL, ett gränssnitt på flera språk, plattformsövergripande applikationsprogrammeringsgränssnitt för att återge 2D- och 3D-grafik till en låg overhead-strategi. Som ett "uttryckligt API" eliminerar Vulkan behovet av komplexa drivrutiner och flyttar kontrollen till programvaruutvecklarnas händer och de applikationer och spel de skapar. Detta innebär i sin tur trevligare grafik, bättre löpande spel och kortare utvecklingstider.

Hur fungerar det?

Till skillnad från äldre API: er som DirectX 11 och ovannämnda OpenGL, som automatiserar minnesallokering, 3D-kommandobuffertkonstruktion och andra processer på GPU: n, för Vulkan programutvecklare mycket närmare hårdvaran, vilket ger dem mer kontroll över prestanda, effektivitet, och kapacitet hos deras programvaruprodukter.

Hallock sa att utvecklare "verkligen, verkligen ville ha kontroll", och det är precis vad Vulkan levererar: kontroll och precision. Eftersom Vulkan är avsedd att stödja aktuell grafikhårdvara, använder den bättre flerkärniga GPU: er och minskar CPU-flaskhalsar. Och till skillnad från DirectX 12, som tillkännagavs av Microsoft på GDC 2014, är Vulkan plattformsagnostisk, vilket innebär att den kan köras på allt från persondatorer till konsoler till smartphones, oavsett operativsystem.

Vad betyder det för Linux-användare?

Fram till Vulkans ankomst var antalet spel som Linux-användare kunde njuta av ganska begränsat eftersom de flesta spelutvecklare har litat på DirectX, som inte är tillgängligt på Linux. Tack vare Vulkan växer antalet tillgängliga AAA-spel på Linux snabbt och Linux-derivat som Valves SteamOS, ett Debian-baserat Linux-operativsystem från Valve Corporation, har blivit livskraftiga alternativ till traditionella konsoler som Xbox eller PlayStation.

För att njuta av Vulkan på Linux är det nödvändigt att äga ett grafikkort som stöder detta nya API, och det är också nödvändigt att ha uppdaterade grafikdrivrutiner installerade och korrekt konfigurerade. Just nu ger Steam det överlägset bekvämaste sättet att prova Vulkan-baserade spel, som The Talos Principle, Doom, Mad Max eller Wolfenstein II: The New Colossus.

Enligt tester från Phoronix tillåter Vulkan lägre CPU-användning än OpenGL över Intel Coffeelake-processorer från low-end till high-end samt AMDs Ryzen-processorer. Det lägre CPU-användningen och stödet för Linux innebär att budgetinriktade spelare kan spara betydande pengar genom att köpa en billigare processor och inte betala för en Windows-licens.

Vad betyder Vulkan för spelekosystemet?

”För utvecklare av premiumapplikationer som spenderar mer tid på att optimera sin programvara för bärbarhet och prestanda än i grundläggande innehållsskapande, bör Vulkan minska den totala utvecklingstiden och förbättra kundupplevelsen. Genom att flytta mer kontroll till applikationen minskar Vulkan den totala mängden arbete som CPU: n måste göra och ger applikationsutvecklare bättre kontroll över hur det arbetet händer, säger Samsung.

Mycket har sagts på senare tid om de stigande kostnaderna för spelutveckling och de olika sätten för utgivare att kompensera för det, till exempel genom att lägga till förbeställningsbonusar och mikrotransaktioner. Även om Vulkan inte ensam är tillräckligt för att få tillbaka ökningen av utvecklingskostnader, kan det göra det möjligt för indieutvecklare att ge oss fler AAA-upplevelser utan AAA-priser, till exempel det kritikerrosade filmiska psykologiska skräckhandlingsäventyret Hellblade: Senua's Sacrifice.

Den högre grad av kontroll som Vulkan ger utvecklare över grafikbearbetning gör det perfekt för virtuell verklighet, där låg latens och hög bildhastighet är avgörande för att uppnå nedsänkning utan att känna sig fysiskt sjuk. Faktum är att Khronos-gruppen har lagt till Vulkan Multi-GPU och Virtual Reality Support till Vulkan API tidigare i år, vilket gör ytterligare ett steg mot 16 000 x 16 000 pixlar per öga vid 200 bilder per sekund, vilket många ser som det ultimata målet för virtuell verklighet.

Slutsats

Vulcan är ett stort steg framåt för Linux-användare som är intresserade av dataspel, och det är också ett stort steg framåt för hela spelekosystemet, vilket gör att spelutvecklare kan skapa bättre optimerade spel på kortare tid. Bäst av allt, du kan prova Vulcan just nu - allt du behöver är Steam och ett Vulcan-klart grafikkort.

OpenTTD vs Simutrans
Att skapa din egen transportsimulering kan vara rolig, avkopplande och extremt lockande. Det är därför du måste se till att du testar så många spel so...
OpenTTD-handledning
OpenTTD är ett av de mest populära affärssimuleringsspelen där ute. I det här spelet måste du skapa en underbar transportaffär. Du kommer dock att bör...
SuperTuxKart för Linux
SuperTuxKart är en fantastisk titel som är utformad för att ge dig Mario Kart-upplevelsen gratis på ditt Linux-system. Det är ganska utmanande och rol...