Vulkan API betyder mer kontroll och alternativ till OpenGL [UPPDATERAD]

Releasen av Vulkan API erbjuder utvecklare fler alternativ att skapa fantastisk programvara genom att komma närmare metallen. Hur går det ihop sig? Lär dig här!

Efter missade sitt mål att släppa de ursprungliga Vulkan API-specifikationerna i slutet av 2015, den Khronos-gruppen har nu slutfört 1.0-versionen av API: et. Vid det här laget är de flesta av våra läsare också medvetna om det Android är en av de plattformar som stöds. Men vad betyder detta för utvecklare och användare?

Tack och lov ger pressmeddelandet och materialet på Vulkans webbplats oss en mängd information för att börja svara på några av de grundläggande frågorna som kan finnas där ute.

Först och främst är Vulkan inte en ersättning för OpenGL eller OpenGL ES. Det är ett alternativt tillvägagångssätt för grafikutveckling, ett där mycket mer av kontrollen ligger i händerna på utvecklaren. Det andra med Vulkan som är anmärkningsvärt i introduktionen är att det utformats för att förbli en enhetlig specifikation under hela sin livscykel - något som inte uppnåddes i OpenGL. Visst kommer implementeringar att ha skillnader på hårdvaru- och drivrutinsnivå, men målet med API: t är att hålla så mycket av det universellt över alla plattformar där det är möjligt.

Med tillstånd från Khronos Group

Ovanstående grafik hjälper till att visa en viktig kompromiss mellan de två - kontroll för overhead. I OpenGL överlåter en utvecklare mer kontroll över grafikbearbetningen till OpenGL-drivrutinerna och API: erna. Vulkan erbjuder en alternativ genom att ge dig mer kontroll över hårdvaran på lägre nivåer, vilket också innebär att eliminera overhead som kan vara hittades. Om det låter bekant beror det på att du har hört liknande försök med AMD: s Mantle API och nu i Microsoft DirectX 12, även känd som att få "närmare metallen." Vulkan erbjuder den möjligheten för mer kontroll i den mobila scenen. Och när vi pratar overhead i den mobila scenen, talar vi också om saker som kan köra och ta bort batteriet eller prestanda i en mycket mer begränsad uppsättning än en stationär eller större användning.

Uppenbarligen med SDK: n som kommer ut just nu, det finns inga verkliga exempel för att visa en jämförelse; men det betyder inte att vi inte kan se spänningen i mobilscenen. Bara en granskning av pressmeddelandet idag visar flera citat värda att lyfta fram. Jag har i fetstil betonat saker som våra läsare kan vara särskilt intresserade av.

Bild med tillstånd från Khronos Group

Qualcomms direktör för produkthantering Micah Knapp:

Vi är glada över att ha bidragit till definitionen av Khronos nya Vulkan API. Qualcomm Technologies, Inc. kommer att vara bland de första att skicka överensstämmande Vulkan-förare, börjar med vår Qualcomm Snapdragon 820:s inbyggda Qualcomm Adreno 530 GPU, och därefter med våra Adreno 4xx-serien GPU: er. Vulkan möjliggör nästa generations grafikprestanda genom att lägga till flertrådad kommandobuffertgenerering och explicit kontroll av avancerade grafikfunktioner inom Adrenos GPU: er. Vi förväntar oss att stödja Vulkan i Snapdragon utvecklarverktyg inklusive Snapdragon Profiler och Adreno SDK, för att hjälpa applikationsutvecklare att dra fördel av detta enastående nytt API när du skapar grafik och datorapplikationer för smartphones, surfplattor, VR HMDs och en mängd andra typer av enheter som använder Snapdragon processorer.

Uppdatering 17/2 09:45 CT: 4xx-serien inkluderar Snapdragon 805/808/810-serien - en stor mängd enheter ute på marknaden idag.

NVIDIAs Senior VP of Content & Technology Tony Tamasi:

Vulkan API gör det möjligt för utvecklare att få ut det bästa av NVIDIA GPU: er, och vi är stolta över vår roll i dess utveckling. Vi gör Vulkan-drivrutiner tillgängliga för Windows, Linux, och Android-plattformar, samma dag som specifikationen lanseras, och vi kommer att fortsätta vårt arbete inom Khronos för att säkerställa att Vulkan utvecklas för att möta branschens behov.

Uppdatering 17/2 09:45 CT: Trogen deras ord kan utvecklar OS-bilder som stöder Vulkan erhållas här. Webbplatsen säger att offentliga OTA: er med Vulkan-stöd "...går igenom slutlig verifiering men bör vara tillgängliga snart."

Samsung Electronics vd för mobilkommunikationsverksamhet Tae-Yong Kim:

Samsung är glada över Vulkans lansering idag, som kommer att hjälpa till att utöka spelekosystemet över plattformar. Vi har arbetat inom Khronos för att stödja en öppen standard som kommer att möjliggöra högpresterande och banbrytande teknologier. Vulkan kommer att ge en mer spännande, uppslukande användarupplevelse för mobilspel.

Naturligtvis har många av medlemmarna i Khronos-gruppen gjort ett uttalande om denna nya utgåva så gå över till kolla in pressmeddelandet för alla godsaker. Och även om det kan ta lite tid att komma till din valda enhet, verkar utbudet av andra grafikalternativ för utvecklare verkligen vara ett klokt val. Det är också viktigt att notera att även Khronos Group tror att många utvecklare fortfarande har det bättre med OpenGL ES. Detta är vettigt eftersom det från en nybörjarsynpunkt är en mycket stabilare standard och lättare att implementera. Men jag vet att jag kommer att se fram emot att se vilken skillnad detta gör för konsumenten. Vem vet? Vi kan så småningom se användargränssnitt baserade på Vulkan om de ger en lägre omkostnad för den grundläggande användningen av en mobil enhet.

Vulkan Github Repos:

  • Dokumentation
  • Prover
  • Laddare och valideringsnivåer
  • Överensstämmelsetester

Så med det här nya verktyget ute för utvecklare, tror du att det här kan vara en spelförändring? Eller är det mer av en gäspning? Låt oss veta i kommentarerna nedan!