Starling Framework is een gratis, open-source framework geschreven met behulp van ActionScript 3.0. Het primaire doel van dit framework is om het voor ontwikkelaars uiterst eenvoudig te maken om games voor het Adobe Flash Platform te bouwen. In dit artikel zullen we je laten kennismaken met Starling en tips, screencasts, tutorials en bronnen delen om ermee aan de slag te gaan.
Er zijn veel voordelen van het gebruik van Starling Framework voor het maken van uw games; dit zijn enkele van de belangrijkste redenen:
De officiële Starling Framework-website bevat een link om de nieuwste versie te downloaden. Voor alle Starling-spellen is dit het belangrijkste en het primaire pakket dat je nodig hebt.
Zoals gezegd is Starling open source en dus wordt het ook gehost op GitHub.
Deze tak bevat het volgende:
Er wordt van uitgegaan dat u een kennisniveau op middelhoog niveau hebt in Flash ActionScript 3.0 om het Starling-framework snel te kunnen ophalen. Als u hulp nodig hebt met Flash ActionScript 3.0, raad ik het boek Essential ActionScript 3.0 van Colin Moock aan.
Om te beginnen, als u nog niet bekend bent met dit framework, raad ik u aan om te beginnen met een eenvoudig project dat u meeneemt van het begin tot het einde van het ontwikkelingsproces van een game. Je vindt dit misschien in mijn videoserie Beginnen met Starling.
In deze reeks video's leer je hoe je een spel kunt bouwen met de naam Hungry Hero.
De videoserie neemt je mee door verschillende onderwerpen die te maken hebben met het leren van Starling Framework:
Voor een meer diepgaande API-gids van het hele framework is een goed hulpmiddel het boek Introduction to Starling van Thibault Imbert.
(Meer info beschikbaar op de website van Thibault.)
Zodra je de basis van Starling Framework onder de knie hebt, raad ik je aan je te concentreren op de volgende aspecten.
Het toevoegen van partikeleffecten en speciale effecten verbetert de ervaring van de spelers die jouw spellen spelen. Er is een netjes op maat gemaakte extensie voor Starling particle systems die een must is om te ontdekken voor beginnende game-ontwikkelaars.
Hoe belangrijk het proces bij het ontwikkelen van een game ook is, is de manier waarop u de code en assets ontwerpt (afbeeldingen en audio). Het scheiden van uw code in Model-, View- en Controller-componenten geeft u vaak een betere aanpak voor het beheer van uw projecten, waardoor het eenvoudiger wordt om bugs te vinden en op te lossen en u een efficiëntere implementatie te geven.
Elke game moet worden geoptimaliseerd, ongeacht het kader / de taal die u gebruikt. Dit zorgt er altijd voor dat uw spellen op de minst voorkomende platforms / hardware draaien. Onderschat nooit de prestatieproblemen, vooral bij de ontwikkeling van spellen!
Verken het fijngebouwde UI-framework voor Starling-spellen, Feathers. Gebouwd met AS3 en Starling Framework en versneld met Stage3D, het is geoptimaliseerd en ontworpen voor gebruik met meerdere schermdichtheden en -resoluties.
Er zijn veel volwassen uitbreidingen voor Starling Framework, waarvan je er veel erg handig zult vinden! Deze zijn gemaakt door enkele van de beste ontwikkelaars voor het doel van game-ontwikkeling - ze gebruikten deze code om hun eigen games te bouwen en uit te breiden.
Nu je de technische details van het framework zelf begrijpt, is het uitermate belangrijk om te weten hoe een game moet worden gebouwd, met name de efficiëntie en architectuur. Dit is een van de belangrijkste onderwerpen om te begrijpen, dus blijf oefenen en blijf tutorials lezen.
Deze links bieden geweldige leermiddelen voor specifieke onderwerpen rond het Starling Framework.
Dit is waarschijnlijk de beste bron voor een beginner die probeert games te bouwen met behulp van het Starling-framework. Het bevat tutorials van basics tot geavanceerd niveau.
Hier vindt u de beste videozelfstudies en artikelen om aan de slag te gaan. Als je helemaal nieuw bent bij Starling, is dit een geweldige plek om te beginnen.
Als je eenmaal de basis hebt gevonden en dingen kunt bouwen, is extensies waarschijnlijk de plek waar je naar moet zoeken. Hier vind je veel verschillende bibliotheken geschreven door awesome ontwikkelaars. Zoals de naam al doet vermoeden, breidt het alleen de mogelijkheden van het framework uit.
Elke game is niet compleet zonder een gebruikersinterface. Het bouwen van een hoofdmenu, het optiescherm, over het scherm, aftiteling, niveauselectie, enzovoort, is allemaal veel eenvoudiger wanneer dit verbazingwekkend eenvoudige kader wordt gebruikt.
Of u nu een beginner, een gemiddelde of een geavanceerde ontwikkelaar bent, het is altijd een goed idee om naar de API-referentie te verwijzen. Het biedt u de actuele syntaxis van alle methoden, klassen en eigenschappen voor alle objecten in het Starling-framework.
Heeft u een probleem dat u niet kunt oplossen tijdens het ontwikkelingsproces? De community van Starling Framework is de beste plaats om hulp te zoeken. Een groot aantal ontwikkelaars draagt bij aan dit communityforum door elkaar te helpen bij het oplossen van spelproblemen.
Dit is de primaire locatie van het Starling-framework. Als je wilt vorkvaren, bijdragen of gewoon wilt letten op updates, vergeet dan niet om hier verbinding mee te maken.
Geen enkel product of raamwerk is succesvol zonder de bijdrage van testers of echte gebruikers. Als u denkt dat u een probleem of een probleem in het Starling-framework hebt gevonden, is dit de tracker om het te melden. Doen bij en houden het Starling-framework vliegen!
Hoewel sommige van deze Starling Framework-specifieke tips zijn, houden de meeste wel vast aan elke technologie voor game-ontwikkeling.
Omdat het Starling-raamwerk is gebaseerd op Flash ActionScript 3.0, vergeet dan niet om gebruik te maken van de functies voor meerdere schermen van Starling Framework.
Er zijn verschillende manieren om uw games geschikt voor meerdere platforms of voor meerdere schermen te maken. Zorg ervoor dat je de 'Demo'- en' Scaffold'-projecten verkent die bij de codebasis zijn geleverd.
Optimalisatie is een integraal onderdeel van het coderen van een game in elke taal. Vergeet niet dat een van Starling Framework's belangrijkste functies de multi-platform-ondersteuning is.
Zodra je begint met het coderen van je spel, blijft de complexiteit van de code alleen maar toenemen tijdens het ontwikkelingsproces. Om ervoor te zorgen dat je de architectuur zelf van je spel later niet kunt veranderen (vanwege inefficiëntie), is het altijd het beste om te beginnen denken aan "geoptimaliseerde codering" vanaf je eerste coderegel.
Houd uw code in afzonderlijke secties (vooral belangrijk voor meerdere platforms):
Vectoren zijn licht in termen van geheugen. Deze afbeeldingen worden in runtime op het scherm getekend, zodat er minder grafische gegevens in het geheugen worden opgeslagen. Het kan echter kostbaar zijn om ze te renderen op de processor.
Bitmaps of rasterafbeeldingen zijn geheugenintensief. Fysiek opslaan en geheugen verbruiken om te renderen kan een uitdaging zijn, maar zijn relatief licht in termen van rendering (tenzij je bitmap-intensieve verwerking uitvoert).
Wilt u dat het spel sneller wordt uitgevoerd op apparaten met beperkte processors? Gebruik bitmaps. Wilt u meer flexibiliteit visueel? Gebruik vectoren. Er zijn uitdagingen die inherent zijn aan het gebruik van beide, dus probeer altijd het gebruik van beide elementen in evenwicht te brengen. Houd in gedachten hoeveel rekenkracht en geheugen uw spel gebruikt.
Je bent niet gedwongen om te proberen alle grafische afbeeldingen van je spel op te nemen in een enkele sprite sheet. Breid desgewenst uw logica uit om meerdere Sprite-bladen te gebruiken, maar houd dit in de gaten, want uw spel kan meer bestandsgrootte innemen en, belangrijker nog, meer geheugenintensief zijn.
Er zijn daar extensies die je hiervoor kunt gebruiken - of, nog beter, je mag er een schrijven om precies dat te doen wat je nodig hebt.
Het gebruik van vooraf gemaakte vector Flash-animaties (SWF's) en het dynamisch converteren naar sprite-sheets kan u veel ontwikkeltijd besparen en de bestandsgrootte van uw binaire bestand verkleinen. Zorg ervoor dat je dit niet te veel doet om het runtime-geheugen dat door je game wordt verbruikt, te beïnvloeden.
Gebruik ANE's om uw games uit te breiden met platformspecifieke functies, zoals in-app-aankopen, in-game-advertenties en sociale functies (zoals Game Center voor iOS). Er zijn veel gratis en betaalde ANE's online beschikbaar, dus vergeet niet om ze te bekijken. U kunt ook gemakkelijk uw eigen schrijven indien nodig.
Blijf actief in de gemeenschap. Er zijn veel deskundige ontwikkelaars in de community die al heel lang bijdragen. Plaats uw vragen op de Starling-forums en vergeet niet om bugs aan te melden of tickets te ondersteunen, indien nodig. Ideeën en eisen van ontwikkelaars zijn een van de redenen waarom Starling Framework met meer functies groeit met de dag.
Er is een gezegde: "Het is niet de tool, maar de vaardigheid die ertoe doet". Starling Framework is een geweldige open-source API-set om geweldige GPU-versnelde games te bouwen voor meerdere platforms en apparaten. Als u echter goed let op de ontwikkelingstechnieken, patronen, manier om de code te optimaliseren enzovoort, zal dit u altijd op de lange termijn helpen. Veel onderwerpen die ik in dit artikel heb genoemd, gelden voor veel andere kaders en talen.
Daarom, ongeacht de taal, het framework, het platform of de tool die u gebruikt om games te bouwen, blijven de concepten van game-ontwikkeling belangrijk.
Hier zijn enkele van Starling-gebaseerde games die echt succesvol zijn geweest:
Nu alle hulpbronnen ter wereld op één plek zijn samengevoegd, moet het leren van Starling Framework een fluitje van een cent zijn.
Begin met het bouwen van de eenvoudigste games en werk er erdoorheen. Vergeet niet om een reactie achter te laten en laat ons weten wat je hebt gebouwd! Zodra je een game hebt uitgebracht, zal ik deze graag beoordelen en erop reageren.
Ten slotte, zoals ik altijd zeg, het is niet de tool die belangrijk is, maar de kunst en de wetenschap. Vergeet niet dat Starling Framework slechts een hulpmiddel of medium is om uw vaardigheden in spelontwikkeling uit te drukken; wat echt belangrijk is, is de vaardigheid die je uiteindelijk in jezelf zult inbouwen. Er zijn talloze platforms, besturingssystemen, apparaten, schermen, frameworks, talen en tools die er zijn. Jezelf ontwikkelen om voor hen te kunnen bouwen en succesvol te zijn, is de sleutel. Starling Framework is een geweldig medium om dit mee te bereiken. Al het beste!