Metal ger energikick för spelutvecklare

Apple släpper jämsides med övriga utvecklarverktyg några ramverk och tekniker som är särskilt avsedda för spelutveckling.

Årets WWDC har lanserat en hel del välkomna nya verktyg för utvecklare, och med tanke på att spel hör till de mest populära apparna både att köpa och utveckla är det inte så konstigt att just spelutvecklare nu får en hel del nya funktioner.

Federighi avslöjar sin musiksmak.

Mest imponerande är troligtvis Metal, som är en teknik avsedd att vara en smidig länk mellan spelet och A7-processorns grafikkärna. Hitills har den rollen fyllts av programmeringsgränssnittet OpenGL/ES.

I jämförelse med OpenGL/ES kommer dock Metal att utgöra ett mycket tunnare lager mellan själva spelet och processorn, det är nästan som att spelet får direkt tillgång till A7-processorns kraft, vilket bidrar till att eliminera flaskhalsar.

Resultatet är grafikhantering i spel som är upp till tio gånger snabbare än tidigare. Kort sagt kommer Metal möjliggöra ännu mer imponerande spel än vad som varit möjligt hittills.

Ramverk för enklare spel

Metal kommer troligtvis att betyda mycket för större utvecklare som gör tunga och avancerade spel. Men Apple presenterade också nya funktioner i ramverket Spritekit, som ska underlätta utvecklingen av enklare spel. Spritekit kom under förra årets WWDC, och får i år stöd för att enkelt bygga in ljuskällor i spel, och bättre simulering av fysik som rörelse och kraftfält.

Till detta kom ett nytt ramverk för 3d-spel, Scenekit. Precis som Spritekit är Scenekit ett ramverk som det går att bygga ett spel kring. Scenekit erbjuder bland annat en fysikmotor som simulerar gravitation, krafter och kollision mellan två kroppar. Det går också att skripta hur 3d-objekt ska bete sig. Det betyder att en utvecklare lätt kan bygga upp en virtuell miljö utifrån form, material och ljus, och sedan animera det genom att beskriva hur objekt skall ändras. Både Spritekit och Scenekit är integrerade med varandra så att det går att exempelvis bygga in tvådimensonella sprites i ett 3d-spel.