Polycode est un "cadre pour le codage créatif" gratuit, à code source ouvert (sous licence MIT) et multiplate-forme. Ce terme est rarement entendu dans la communauté de développement de jeux, mais sa signification est simple: Polycode vous fournit des outils pour exprimer votre créativité au moyen de code, et même s'il est pleinement qualifié pour supporter les "moteur de jeu"moniker, il préfère ne pas le faire. La raison en est simple: Polycode peut être (et est souvent) utilisé pour des projets qui englobent plus que des jeux interactifs, tels que des visualisations utilisées à des fins de divertissement ou à des fins scientifiques..
J'ai utilisé Polycode pour la plupart des petits jeux, mais aussi pour une interface utilisateur de zoom inhabituelle et j'ai également eu beaucoup de succès dans le développement de tous les projets. Jetons un coup d'œil à ce que Polycode peut vous offrir et espérons-vous vous intéresser à apprendre à travailler avec ce cadre merveilleux.
Comme ce n’est pas une pièce promotionnelle pour le framework, je vais essayer de mettre l’accent sur les fonctionnalités clés qui pourraient intéresser les développeurs de jeux sans entrer dans les détails..
Ce ne sont que les principales caractéristiques. J'ai omis de nombreuses autres tâches, notamment l'animation squelettique, le rendu des polices TrueType compatible Unicode et l'EDI Polycode. Une liste plus complète (mais pas encore exhaustive) peut être trouvée sur le site officiel.
Pourquoi un autre cadre? Pourquoi devriez-vous même considérer Polycode, et encore moins commencer à travailler avec lui? Je ne peux pas vous persuader; Je ne peux que donner mes propres opinions et expériences et vous laisser être le juge. Voici quelques avantages clés de Polycode que j'ai découverts au cours de ma vie.
Bien que Polycode soit très jeune, il a plusieurs projets sur lesquels se vanter. La plupart d’entre elles ne sont même pas des jeux, mais plutôt des utilisations novatrices de nos technologies de rendu habituelles, de rendu tactile, audio et physique. Voilà quelque:
Dans le clip vidéo de la chanson "Heaven" de Depeche Mode, réalisé par Tim Saccenti, Polycode était utilisé pour réaliser des projections décoratives sur le mur derrière le groupe:
Cinq écrans HD gérés par cinq ordinateurs et synchronisés, tous alimentés par Polycode. Ce mur de données visualise les données de l’US Open de 2012 et comporte une simulation physique 3D, des retours tactiles, des graphiques 3D superposés et un réseau pour que les ordinateurs affichent les données de manière synchronisée. Développé par HUSH. Plus d'informations peuvent être trouvées sur la page du projet.
Construit par Ivan Safrin, le même cerveau derrière le projet Polycode, Space Cruiser est un jeu hallucinant conçu spécialement pour les projections à l'intérieur d'un dôme de planétarium et le jeu collaboratif. Il a été créé pour la première fois au Hayden Planetarium du American Museum of Natural History. Polycode exploite pleinement ce jeu interactif en générant des graphismes 3D à plage dynamique élevée à partir de six ordinateurs différents, tous synchronisés à l'aide des capacités de mise en réseau du framework. Vous pouvez lire sur ce jeu excitant et surréaliste sur sa page de projet.
Vous pouvez utiliser Polycode à la fois à partir de C ++, de Lua ou des deux à la fois, pour découpler les mécanismes centraux de votre jeu (C ++ à hautes performances) et sa logique (Lua scripté et remplaçable à chaud). Si vous utilisez uniquement Lua, vous n'avez pas besoin de connaître le langage plutôt complexe C ++, et vous pouvez commencer immédiatement à prototyper dans le formidable IDE Polycode, un éditeur intégré fourni avec le cadre..
Une fois que vous décidez que vous voulez plus de contrôle sur le fonctionnement interne, vous vous retrouvez dans le besoin de C ++. Le choix t'appartient; Je suggère de ne pas apprendre le C ++ si vous ne le connaissez pas déjà (surtout si vous n’avez pas de connaissances en programmation préalable) tout de suite. Lua est beaucoup plus léger, convivial pour les débutants et plus facile à apprendre. Ce serait donc votre meilleur pari. D'un autre côté, si vous êtes un développeur de jeux expérimenté et que vous souhaitez utiliser Polycode pour des jeux complexes et pensés, utiliser C ++ et Lua en tandem est la solution..
Pour les tutoriels C ++, vous pouvez vous référer à cplusplus.com, le lieu où j'ai appris à peu près tout ce que je sais de la langue. Quant à Lua, vous pouvez vous reporter à la liste exhaustive des tutoriels du répertoire de tutoriels lua-users.org ou, si vous préférez, acheter le livre Programming in Lua, qui vous donnera une base solide et couvre à peu près tout ce dont vous avez besoin.
Avoir quelques connaissances sur le fonctionnement des jeux est recommandé, mais pas vraiment requis: vous pouvez le découvrir vous-même si vous suivez les formidables tutoriels sur Polycode.org, mentionnés ci-dessous..
Polycode est un jeune logiciel. en fait, à la date d'écriture, il n'avait toujours pas atteint la version 1.0.0. La plupart des projets dans cet état ne vous fournissent pas de fichiers binaires précompilés, pas plus que Polycode; Cependant, le site officiel vous fournit tout ce dont vous avez besoin pour que Polycode soit opérationnel sur votre machine..
Reportez-vous à la page du wiki Polycode, choisissez votre plate-forme (Polycode fonctionne sous Windows, Linux et OS X, avec la prise en charge Android et iOS prévue à l'avenir, alors restez à l'écoute) et vous pourrez commencer! Le processus de construction est simple. En fait, sur mon système Arch Linux, j'ai pu construire le framework en utilisant CMake sans même lire les instructions..
Note de l'éditeur: LanceJZ a ajouté quelques conseils pour que Polycode fonctionne avec Visual Studio dans les commentaires. Merci, Lance!
Nous avons survolé les avantages, les fonctionnalités, les projets remarquables, le processus de construction de Polycode et maintenant nous pouvons nous salir les mains et commencer à réellement y jouer un rôle. L’équipe Polycode a fait un travail magnifique en couvrant un grand nombre des points clés dont un utilisateur final a besoin pour créer de superbes jeux, visualisations, etc. Les didacticiels Polycode sont disponibles sur la page de didacticiels du site officiel..
Si vous êtes bloqué et avez besoin d'une documentation détaillée, vous pouvez toujours vous reporter à la documentation officielle, accessible depuis la page "Apprendre" du site Web. Si vous êtes toujours bloqué, vous pouvez toujours demander de l'aide sur les forums ou rejoindre le chat IRC sur #polycode
à irc.freenode.net
. La communauté est amicale et serviable, et le développeur principal lui-même répond souvent aux questions des autres, ainsi que des autres membres de l'équipe. (J'ai discuté avec Ivan à quelques reprises en ligne et il a l'air d'un gars formidable.)
Dans cet article, je vous présente un très jeune framework appelé Polycode. Nous avons vu comment Polycode peut être utilisé comme moteur de jeu ainsi que pour une grande variété de types de projets. J'ai décrit certaines de ses caractéristiques principales, ses avantages uniques et les projets intéressants qui l'utilisent, et j'ai fait de mon mieux pour vous aider à intégrer le processus d'apprentissage de ce cadre. Joyeux Polycodage!