Comment apprendre le framework Starling

Starling Framework est un framework libre et à code source ouvert, écrit avec ActionScript 3.0. L'objectif principal de ce cadre est de rendre extrêmement facile la tâche des développeurs de créer des jeux pour la plate-forme Adobe Flash. Dans cet article, nous vous présenterons Starling et partagerons des astuces, des screencasts, des tutoriels et des ressources pour bien commencer..


Pourquoi choisir Starling Framework?

L'utilisation de Starling Framework pour la création de vos jeux présente de nombreux avantages. Voici quelques unes des raisons les plus importantes:

  • C'est gratuit.
  • C'est open-source: les développeurs contribuent à étendre les limites du framework.
  • Son accélération matérielle: Starling repose sur la nouvelle technologie Stage3D d'Adobe Flash Player, qui utilise le matériel GPU du périphérique du lecteur pour restituer le jeu..
  • C'est multi-écran convivial: une base de code peut être compilée pour fonctionner sur plusieurs plates-formes - Bureau, Web, iOS et Android.

Où le télécharger

Le site Web officiel du cadre Starling contient un lien pour télécharger la dernière version. Pour tous les jeux basés sur Starling, c'est le paquet le plus important et le principal dont vous aurez besoin.

Comme mentionné, Starling est open source, il est donc également hébergé sur GitHub.

Cette branche contient les éléments suivants:

  • Code source complet du framework Starling écrit en AS3.
  • Projets de démonstration pouvant être utilisés pour explorer comment écrire du code Starling.
  • Un projet d'échafaudage qui vous offre un point de départ pour commencer un nouveau projet.
  • Quelques tests unitaires pour différentes fonctionnalités de Starling Framework.
  • Utilitaires qui vous aideront à déployer et à tester le jeu en fonction du framework.

Conditions préalables

Il est supposé que vous disposez de connaissances de niveau intermédiaire dans Flash ActionScript 3.0 pour pouvoir assimiler rapidement le framework Starling. Si vous avez besoin d'aide avec Flash ActionScript 3.0, je vous recommande le livre Essential ActionScript 3.0 de Colin Moock..


Articles Similaires
  • Pour plus de ressources recommandées, voir Comment apprendre Flash et AS3 pour le développement de jeux.

Débuter avec le développement

Tutoriels vidéo pour débutants (gratuits)

Pour commencer, si vous êtes nouveau dans ce framework, je vous recommande de commencer avec un simple projet qui vous guidera du début à la fin du processus de développement d'un jeu. Vous le trouverez peut-être dans ma série de vidéos commençant par Starling.

Tout au long de cette série de vidéos, vous apprendrez à créer un jeu appelé Hungry Hero..


Héros affamé

La série de vidéos vous guidera à travers divers sujets liés à l’apprentissage de Starling Framework:

  • Mise en place
  • Images, textures et boutons
  • Sprite Sheets et Animation
  • Navigation à l'aide d'événements et d'auditeurs
  • Défilement Parallaxe
  • Etats du jeu, Sprites, Détection de collisions, Texte et polices, Particules

Introduction à Starling (livre électronique gratuit)

Pour un guide API plus détaillé de l’ensemble du framework, le livre Introduction to Starling de Thibault Imbert constitue une bonne ressource..


(Plus d'informations disponibles sur le site de Thibault.)


Quoi ensuite?

Une fois que vous maîtrisez les bases de Starling Framework, je vous recommande de vous concentrer sur les aspects suivants..

Effets visuels améliorés (comme les systèmes de particules)

L'ajout d'effets de particules et d'effets spéciaux améliore l'expérience des joueurs qui jouent à vos jeux. Il existe une extension parfaitement adaptée aux systèmes de particules Starling qui est un must pour les développeurs de jeux en herbe..

Les modèles MVC et les préférences pour un codage efficace

Le processus d’élaboration du code et des ressources (graphiques et audio) est aussi important que le processus de développement d’un jeu. Séparer votre code des composants Modèle, Vue et Contrôleur vous donnera souvent une meilleure approche de la gestion de vos projets, facilitant la recherche et la correction des bogues et vous permettant une implémentation plus efficace..

Techniques d'optimisation pour des performances efficaces

Tout jeu doit être optimisé, quel que soit le cadre / la langue que vous utilisez. Cela garantit toujours que vos jeux fonctionnent sur les plates-formes / matériels les moins communs. Ne sous-estimez jamais les problèmes de performances, en particulier dans le développement de jeux.!

Composants d'interface utilisateur conçus pour les jeux basés sur Starling

Explorez le cadre d'interface utilisateur finement construit pour les jeux basés sur Starling, Feathers. Construit avec AS3 et Starling Framework, et accéléré avec Stage3D, il est optimisé et conçu pour une utilisation avec plusieurs densités d'écran et résolutions..

Étendre le framework Starling avec des extensions

Il existe de nombreuses extensions matures pour Starling Framework, dont beaucoup vous seront très utiles! Ceux-ci sont créés par certains des meilleurs développeurs, dans le but de développer des jeux. Ils ont utilisé ce code pour construire et étendre leurs propres jeux..

Processus de développement de jeu

Maintenant que vous comprenez les détails techniques du framework lui-même, il est extrêmement important de savoir comment un jeu est censé être construit - en particulier pour l'efficacité et l'architecture. C’est l’un des sujets les plus importants à comprendre. Continuez donc à vous entraîner et continuez à lire des tutoriels..


Plus de ressources d'apprentissage

Ces liens fournissent d’excellentes ressources d’apprentissage pour des sujets spécifiques concernant le cadre Starling.

Le manuel de Starling

C'est probablement la meilleure ressource pour un débutant essayant de créer des jeux en utilisant le framework Starling. Il contient des tutoriels de base au niveau avancé.

Tutoriels officiels et extraits de code

Ici, vous trouverez les meilleurs tutoriels vidéo et articles pour commencer. Si vous êtes entièrement nouveau chez Starling, c'est un excellent endroit pour commencer.

Les extensions

Une fois que vous maîtrisez les bases et que vous êtes capable de construire des éléments, les extensions sont probablement l’endroit que vous devez rechercher. Ici, vous trouverez de nombreuses bibliothèques différentes écrites par des développeurs géniaux. Comme son nom l'indique, il ne fait qu'étendre les capacités du framework.

Plumes

Tout jeu est incomplet sans interface utilisateur. Construire un menu principal, un écran d’options, un écran, des crédits, une sélection de niveau, etc., est beaucoup plus simple avec ce cadre incroyablement simple..

Référence de l'API Starling

Que vous soyez développeur débutant, intermédiaire ou avancé, il est toujours judicieux de se référer à la référence de l'API. Il vous fournit la syntaxe à jour de toutes les méthodes, classes et propriétés de tous les objets du framework Starling..

Forum communautaire de Starling

Vous rencontrez un problème que vous ne pouvez pas résoudre pendant le processus de développement? La communauté de Starling Framework est le meilleur endroit pour chercher de l'aide. Un grand nombre de développeurs contribuent à ce forum de la communauté et s’entraident pour résoudre les problèmes de développement de jeux auxquels ils pourraient être confrontés..

Cadre Starling sur GitHub

C'est l'emplacement principal du framework Starling. Si vous voulez bifurquer, contribuer ou simplement regarder pour les mises à jour, n'oubliez pas de vous connecter à cette.

Suivi des problèmes

Aucun produit ou framework ne réussit sans la contribution de testeurs ou d'utilisateurs réels. Si vous pensez avoir trouvé un bogue ou un problème dans la structure de Starling, utilisez l'outil de suivi pour le signaler. Contribuez et maintenez le cadre de Starling en vol!


Conseils de développement

Certains de ces conseils sont spécifiques à Starling Framework, mais la plupart sont valables pour toutes les technologies de développement de jeux..

Utiliser les fonctionnalités multi-écrans

Le framework Starling étant basé sur Flash ActionScript 3.0, n'oubliez pas de tirer parti des fonctionnalités multi-écrans du framework Starling..

Il existe de nombreuses façons de rendre vos jeux multi-plateformes ou multi-écrans conviviaux. Assurez-vous d’explorer les projets "Démo" et "Scaffold" fournis avec la base de code..

Optimisation du plan dès le début

L’optimisation fait partie intégrante du codage d’un jeu dans n’importe quelle langue. N'oubliez pas que l'une des fonctionnalités les plus importantes de Starling Framework est son support multiplateforme..

Une fois que vous commencez à coder votre jeu, la complexité du code ne cesse de croître tout au long du processus de développement. Pour vous assurer de ne pas modifier l'architecture de votre jeu à un stade ultérieur (à cause de l'inefficacité), il est toujours préférable de commencer à penser à "coder de manière optimisée" dès la première ligne de code..

Séparer le code

Gardez votre code dans des sections séparées (particulièrement important pour plusieurs plates-formes):

  • Logique principale: contient les comportements de différents personnages du jeu, la logique pour déplacer des objets, additionner des partitions, jouer de la musique, etc. Toute correction de bogue dans cette partie du code doit déterminer le correctif pour toutes les plateformes pour lesquelles le jeu est construit..
  • Logique de plate-forme: contient uniquement du code spécifique à la plate-forme, ce qui peut signifier prendre en compte iOS ou Android; tablettes, téléphones ou Web; tailles d'écran, résolutions et densités… Cette section du code traite de choses pour toutes les plates-formes spécifiques, telles que l'activation ou la désactivation des effets spéciaux en fonction de la capacité de la plate-forme pour assurer le bon fonctionnement du jeu.
  • Logique d'interaction: contient une logique basée sur l'interaction qui garantit que l'interaction est définie en fonction de la plate-forme sur laquelle le jeu est exécuté, puis communique avec la logique principale pour effectuer des actions dans le jeu. Par exemple, les commandes de la souris pour le bureau et le Web, les commandes tactiles pour le mobile et la tablette.

Décider d'utiliser des graphiques vectoriels ou raster

Les vecteurs sont légers en termes de mémoire. Ces graphiques sont dessinés en temps d'exécution sur l'écran, de sorte que moins de données graphiques sont stockées dans la mémoire. Cependant, leur rendu peut coûter cher au processeur.

Les images bitmap ou raster nécessitent beaucoup de mémoire. Stocker physiquement et utiliser de la mémoire pour le rendu peut être un défi, mais il est comparativement plus léger en termes de rendu (sauf si vous effectuez un traitement nécessitant beaucoup de bitmap).

Voulez-vous que le jeu soit plus rapide sur des appareils dotés de processeurs limités? Utilisez des bitmaps. Vous voulez plus de flexibilité visuellement? Utilisez des vecteurs. Il y a des défis inhérents à l’utilisation de l’un ou de l’autre, alors essayez toujours d’équilibrer l’utilisation de ces deux éléments. Gardez à l'esprit la puissance de traitement et la mémoire utilisées par votre jeu..

Utilisez plus de feuilles de Sprite si nécessaire

Vous n'êtes pas obligé d'essayer d'inclure tous les graphiques de votre jeu dans une seule feuille de sprite. Si nécessaire, développez votre logique pour utiliser plusieurs feuilles de sprite, mais gardez cela sous contrôle, car votre jeu peut occuper plus de fichiers et plus lourd encore..

Considérer la génération dynamique de feuilles de sprite

Il y a des extensions que vous pouvez utiliser pour cela - ou, mieux encore, vous pouvez en écrire une pour faire exactement ce dont vous avez besoin.

L'utilisation d'animations vectorielles Flash (SWF) pré-créées et leur conversion dynamique en feuilles d'image-objet peuvent vous faire gagner beaucoup de temps de développement et réduire la taille du fichier binaire. Assurez-vous de ne pas en faire trop pour affecter la mémoire d'exécution utilisée par votre jeu..

Rechercher dans les extensions natives ActionScript

Utilisez les ANE pour développer vos jeux afin de contenir des fonctionnalités spécifiques à la plate-forme, telles que les achats intégrés, les annonces in-game et les fonctionnalités sociales (telles que Game Center pour iOS). Il y a beaucoup d'ANE gratuites et payantes disponibles en ligne, alors n'oubliez pas de les consulter. Vous pouvez également écrire facilement le vôtre si nécessaire.

Participation au développement

Restez actif dans la communauté. Il existe de nombreux développeurs experts dans la communauté qui contribuent depuis longtemps. Publiez vos requêtes sur les forums Starling et n'oubliez pas de consigner les bogues ou les tickets de support si nécessaire. Les idées et les exigences des développeurs sont l'une des raisons pour lesquelles Starling Framework se développe avec plus de fonctionnalités de jour en jour.


Un mot d'expérience

Il y a un dicton qui dit: "Ce n'est pas l'outil, mais la compétence qui compte". Starling Framework est une excellente API open source permettant de créer d’impressionnants jeux accélérés par GPU pour plusieurs plates-formes et appareils. Cependant, une attention particulière aux techniques de développement, aux modèles, au moyen d'optimiser le code, etc., vous aidera toujours à long terme. Un grand nombre de sujets que j'ai énumérés tout au long de cet article sont valables pour de nombreux autres frameworks et langues.

Par conséquent, quels que soient le langage, le framework, la plateforme ou l’outil utilisé pour créer des jeux, les concepts de développement de jeux restent importants..


Jeux réussis construits sur le cadre de Starling

Voici quelques-uns des jeux basés sur Starling qui ont été vraiment réussis:

Angry Birds (édition Facebook)


Espacé


Explosion de rubis


Le temps du dragon


Rivières de l'Olympe



Conclusion

Maintenant que toutes les ressources du monde sont combinées en un seul endroit, l'apprentissage de Starling Framework devrait être un jeu d'enfant..

Commencez par créer le plus simple des jeux et parcourez-le. N'oubliez pas de laisser un commentaire et dites-nous ce que vous avez construit! Une fois que vous avez sorti un jeu, je serai ravi de le lire et de le commenter..

Enfin, comme je le dis toujours, ce n’est pas l’outil qui importe, mais l’art et la science. N'oubliez pas que Starling Framework n'est qu'un outil ou un support permettant d'exprimer vos compétences en développement de jeux. ce qui compte vraiment, c’est la compétence que vous allez éventuellement développer en vous-même. Il existe d'innombrables plates-formes, systèmes d'exploitation, périphériques, écrans, frameworks, langages et outils. Se développer pour pouvoir construire pour eux et réussir est la clé. Starling Framework est un excellent moyen pour y parvenir. Bonne chance!