Indholdsfortegnelse:
Samsungs demonstration af alt, hvad Galaxy S7 og S7 edge vil være i stand til - når du først er i stand til at få dine hænder på dem - var så imponerende som nogensinde. Som det ofte er tilfældet med denne slags ting, er der dog spørgsmål tilbage, der skal besvares. Når det kommer til ydeevne og spillefunktioner, er der en god chance for, at mindst et par af disse spørgsmål har at gøre med Samsung, der gør disse telefoner til de første med Vulkan API'er ombord.
Vi har set demonstrationer af, hvad Vulkan i sidste ende vil være i stand til i desktopmiljøer, men et stort spørgsmål, der har behov for at besvare, er, hvad Vulkan betyder for Galaxy S7- og S7-kantsejere. Her er hvad vi ved indtil videre, og hvad vi kan gætte kommer til at ske næste takket være nogle meget smarte mennesker, der arbejder med Vulkan og i spillebranchen.
Første ting først, hvad er Vulkan?
Spørg alle, der i øjeblikket arbejder med OpenGL inden for spil om behovet for noget bedre, så får du det samme svar. Ja, nu tak.
Mens der kan gøres meget med aktuelle teknologier, er det en massiv udfordring at bringe spiloplevelser på tværs af platforme. Selv med de rigtige mennesker og de rigtige ressourcer er det langt fra let. AMD søgte at løse dette med en teknologi, de kaldte Mantle, men i stedet for at afslutte projektet gik videre til at arbejde på DirectX 12. Mantle blev i stedet doneret til Khronos-gruppen som en open source-indsats for at standardisere lavt niveau computing og rendering på multi- centrale CPU-systemer.
Grundlæggende er målet med Vulkan at gøre det lettere at få bedre grafisk ydeevne ved fuldt ud at bruge din multi-core processor. Multitrådning betyder, at Vulkan kan gøre, hvad OpenGL ES ikke kan, og slutresultatet er et samlet ydeevne. Da det er et open source-projekt, der understøttes af flere små grupper, var den første udgivelse i stand til at målrette mod flere platforme samtidig. Android er en af disse platforme, og vi har allerede set flere producenter øjeblikkeligt begynde at arbejde på måder at støtte Vulkan for udviklere, der er interesseret i at bygge noget, der er afhængig af disse API'er.
Da vi satte os sammen med Sascha Willems, en udvikler, der har arbejdet med Vulkan i ganske lang tid nu, påpegede han en anden betydelig fordel ved at bruge Vulkan.
Porting er et andet område, der bør gavne. Selvom OpenGL og OpenGL ES har meget til fælles, er du stadig nødt til at lægge en masse portingbestræbelser på, og du ender med at skrive separate renderere til begge. Med Vulkan er det ikke længere tilfældet. Det eneste, der er anderledes, er den platformspecifikke kode som at få et renderingvindue, men det er meget forbedret i forhold til OpenGL (ES) med WSI (vinduessystemintegration), der er en del af Vulkan. Især med enhed som NVIDIA Shield, der tilbyder desktop som GPU-ydelse, antager jeg, at vi vil se flere desktop-spil, der er overført til Android takket være Vulkan. At tilføje Android-support til mine Vulkan-eksempler fx var bare et spørgsmål om minutter, og gengivelseskoden er nøjagtig den samme på tværs af Windows, Linux og Android
Så hvorfor er Samsung først på markedet? Grundlæggende vil Samsung bruge Vulkan til domstoludviklere til at skabe oplevelser, der konkurrerer direkte med Apples påstand om, at spil er bedre på iPhone. Ved at tilbyde dette før nogen anden er Samsung i stand til at henvende sig til udviklere i det fri ved begivenheder som selskabets kommende udviklerkonference og få fantastiske spil, der spiller bedst på Galaxy S7 og S7 Edge.
Er Vulkan et svar på Metal?
De fleste af de mennesker, der bruger Vulkan lige nu, kan sammenligne denne nye API med, hvad Apple har gjort med deres lavt niveau ydeevne, Metal. Hvis du nogensinde har set den måde, Apple viser Metal på scenen, eller brugt et spil bygget med Metal på en iPhone versus det samme spil på en anden telefon, ved du, at forskellen er markant. At stole på OpenGL ES til 3D-spil på en telefon er en ressource-svin, hvilket betyder, at dit batteri tømmes hurtigere for en ringere oplevelse. Metal adresserer det på en stor måde for Apple, og i teorien kunne Vulkan gøre noget lignende for Android.
Der er meget mere end det, som vi lærte af at tale med Giant Spacekat, udviklingschef Brianna Wu. Som udvikler, der kender Metal og Vulkan, var hun i stand til at tilbyde et lille perspektiv.
Det er rimeligt at kalde dem ens, da begge teknologier forsøger at løse det samme problem. Denne OpenGL-stakke er uholdbar, den blev skrevet i en tidsalder med dette en-kerne-paradigme, og det fungerer bare ikke mere. Apple ruller ud Metal giver meget mening for dem. Forskellen for Apple er, at de kan se på en liste over drivere, en liste over GPU'er, en liste med skærme, og de har en masse kontrol over hardware. De kan bringe nogen ind for at programmere det her i forsamlingen, og det er en holdbar vej fremad. Vulkan forsøger at løse det samme problem samlet, men det er en meget bredere ting, de prøver at implementere. Det er et meget, meget sværere problem at løse, især når der ikke er et selskab på størrelse med Apple, der fører denne teknologi.
På Android har vi allerede set eksempler på, hvad Wu taler om. NVIDIA og Samsung har åbenlyst hoppet lige op og annonceret støtte til Vulkan på deres egne måder, men det vil være indtil i det mindste den næste version af Android, før Google har vedtaget Vulkan naivt i hele Android. Selv når det sker, er det kun for den nyeste version af Android, der går videre. Et hurtigt kig på nylige versionnumre fra Google er al den forklaring, du har brug for, hvorfor det vil tage et stykke tid at være en platform-bred oplevelsesforbedrer.
Support fra Google er ikke den eneste udfordring, der ligger foran os. Udbredt vedtagelse af udviklere er en betydelig udfordring på enhver platform. Som Wu påpegede under vores interview, har Apples Metal været ude i lang tid nu, og antallet af spil, der understøtter rammen, er ret lavt.
Det er en af disse ideer, der virkelig løser et problem, men i det mindste på Apple-siden har vi en lang vej at gå, før vi virkelig har løst dette tykke OpenGL-stack-problem. Det drejer sig ærligt om platformen.
Samsung håber på at tackle dette direkte og har haft en vis begrænset succes med denne tilgang med deres Fingerprint API'er og multi-windows app support, men ligesom Apple og Metal vil det tage et stykke tid, før vi ser nogen betydelig vedtagelse.
Hvad med Vulkan og VR?
Den anden store grund til, at Samsung hopper på muligheden for at være den første producent med Vulkan-support, er Gear VR. Samsung og Oculus har gjort et godt stykke arbejde med at hæve smartphone-baseret VR over den passive Google Cardboard-oplevelse, men platformen er ikke uden ydelsesproblemer. Når Oculus og Samsung begge fungerer som medlemmer af Khronos-gruppen, giver det mening, at begge virksomheder vil tilskynde udviklere til at støtte denne nye teknologi for at fortsætte med at forbedre Gear VR-oplevelsen. Ifølge Sascha er VR faktisk en stor del af, hvorfor Vulkan er en så stor sag lige nu.
VR er stærkt afhængig af en glat oplevelse med stabile billedhastigheder og ingen hick-ups. Vulkan tilbyder meget på dette område, f.eks. GPU-timere og bedre synkronisering sammen med multi-threading. Stoffer som mikrostammen er temmelig almindeligt med OpenGL (ES) og svært at løse. Jeg tror, dette er et område, hvor Android vil drage mest fordel af. Vulkan er langt mere eksplicit end OpenGL ES og giver langt mere information om f.eks. Rendering pipeline til GPU (og driver) på forhånd, hvilket gør det meget mere forudsigeligt og dermed lettere for GPU. Dette resulterer i langt mindre arbejde for driveren og erstatter OpenGLs voluminøse (og svært at forudsige) tilstandsmaskine.
Bygning med Vulkan ville gøre en massiv forskel i sammenhæng med Gear VR, og for spiludviklere er det en fantastisk måde at gøre mere i denne temmelig begrænsede, men betydeligt mere tilgængelige VR-form. Som spiludvikler kunne Woes støtte til Samsung med forbedring af Gear VR med Vulkan ikke være mere klar.
Brug af Gear VR lige nu kører processoren så hårdt, at det løber mit batteri ned på cirka 50 minutter, og forsinkelsen er virkelig forfærdelig. Hvis der nogensinde har været en ekstremt overbevisende sag for en åben standard som Vulkan at komme ned i forsamlingen og virkelig optimere dette grafiske lag, er det her. Vi tapper ikke på glas for evigt, du skal spørge, hvor vi skal hen. Opbygning af VR og disse 3D-teknologier er absolut kritisk. Hvis Samsung vil være den slags testcase her, er dette optimalt. Dette er det sted, hvor denne teknologi er hårdt brug for.
Der er ingen tvivl om, at dette vil være det præcise modsatte af en forøgelse af ydeevnen natten over, men potentialet for Vulkan til at åbne døre til bedre oplevelser kunne ikke være mere tydeligt. Med Galaxy S7 og S7 Edge er det et første skridt for Samsung i retning af en kraftfuld ny spil- og VR-oplevelse og et godt tidspunkt at stå hoved og skuldre over konkurrencen og hævde, at de var her først.