mardi 24 août 2010

Construct

Construct est un logiciel d'assistance à la création de jeux 2D qui est open source et gratuit.
Vous pouvez créer aisément des jeux et applications gérées par DirectX 9.c (uniquement) pour l'affichage, la gestion des entrées, l'audio et à peu près tout ce que DirectX peut gérer sur l'ordinateur.
Pour l'utilisateur final, on créé un fichier .exe qui peut intégrer tous les fichiers ressources utilisés par l'application ou bien disposés en arborescence de dossiers.

Ce qui rend Construct différent à mon sens c'est son système de programmation évènementielle et visuelle. On me parlera d'autres logiciels de game-making. Les rares que j'avais testés par le passé n'étaient pas aussi aboutis ou ne permettaient à mon sens pas assez de personnalisation et avaient une approche trop compliquée pour que je préfère y passer du temps plutôt qu'apprendre les bons vieux C/C++.

Mais là quand j'ai lancé Construct et que j'ai commencé à bidouiller un peu dedans, mon savoir en programmation m'a directement servit et je me suis retrouvé avec un outil qui se plaçait entre l'abstrait et le concret. La parfaite interface entre ma conception et le jeu fonctionnant à l'écran sur mon ordi.
Après tout n'est pas rose non plus ^^

Depuis trois semaines que j'y suis je ne dirais pas que je en suis un spécialiste ni que j'en ai fais le tour. J'ai pu un peu m'habituer à ses inconvénients et il faut être honnête, il y en a.
Certaines actions lourdes à réaliser à la souris alors qu'on pourrait les faire au clavier en 2 fois moins de temps, ce n'est pas un logiciel stable à 100%, j'ai régulièrement des glitchs graphiques qui me laissent cependant le temps de sauvegarder, quitter, relancer et continuer mon projet. Aujourd'hui j'ai rencontré un bug qui semble un peu plus grave, à un moment de mon programme, je tente d'assigner une valeur à une variable privée, mais ce n'est pas la bonne variable qui se voit attribuée au final. ARGH !
Bug report, et pis bon, j'ai déjà un work around. C'est pas forcément très élégant, mais pour le hobbyiste que je suis, ça va. Et le jeu est jouable, donc c'est le principal.

C'est le gros point essentiel sur Construct à mon goût. En trois semaine d'utilisation "intensive", jamais je ne me suis retrouvé bloqué. J'ai un projet lancé en extreme programming (c'est à dire à l'arrache sans vraiment poser tout le concept sur le papier) qui a vu ses fonctionnalités s'ajouter au fur et à mesure et qui est toujours fonctionnel, gérable (même si les grosses prises de tête commencent à arriver ^^) et que je peux lancer pendant 1/2h pour tester mes 50 waves de mutants :)

Et quand j'ai eu des soucis ou que je devais simplement apprendre l'interface et la philosophie d'utilisation du soft, je suis allé sur le wiki et j'ai suivi les tutoriels de base. Si vous vous décidez à utiliser ce soft, prenez les tutos les uns après les autres, lisez-les biens, ils sont très à assez commentés pour être vraiment utiles.
Par la suite vous pourrez vous perdre sur le forum qui s'avère plutôt actif bien qu'encore confidentiel.

C'est là le dernier point. Ma surprise de voir que cet outil plutôt performant et bien fichu n'est pas plus répandu et plus utilisé. Franchement, plutôt que d'apprendre le C de manière rébarbative, voilà une manière visuelle et gratifiante (je fais mon code, je clique sur un bouton, j'ai ma fenêtre qui se lance et je joue à mon jeu. Et ça marche et c'est joli :) ) d'apprendre la réflexion du développement. Après le reste n'est que langage :D

Je n'ai pas été très structuré ni même effleuré la richesse de Construct dans cet article. J'avais juste envie de faire une tite mise à jour de ce blog rapide et en même temps faire de la pub à cet excellent programme.
J'y reviendrai de toute façon. :D