Semaine 2 – Découverte de nouvelles technologies

Ayant déjà utilisé la SDL, j’ai d’abord voulu la réutiliser avec SDLJava pour ce projet. Mais j’ai ensuite découvert Slick2D . C’est un sous ensemble de LWGL OpenGl qui facilite grandement le développement de jeux vidéo en 2D.

Bien que le créateur de cette librairie ait abandonné le projet, de nombreux contributeurs continuent de l’améliorer. Il existe aussi de nombreux tutoriels sur internet, permettant d’apprendre rapidement son fonctionnement. Nous avons choisi d’utiliser l’IDE Eclipse pour programmer notre jeu, celle-ci ayant largement fait ses preuves. J’ai passé le reste du cours à trouver comment installer le plugin subversive d’Eclipse sur nos machines, qui permet d’utiliser SVN avec Eclipse. J’ai codé un gestionnaire d’images en utilisant le patron de conception Singleton, et Nolwen s’en est inspiré pour coder un gestionnaire de sons. J’ai choisi d’utiliser ce patron car je voulais un moyen simple et efficace d’enregistrer en mémoire toute nos ressources utiles comme le son, les images, les musiques. Le singleton nous empêche d’avoir plusieurs instances de cette classe, et nous permet ainsi de l’utiliser n’importe où dans le code. En utilisant tout ce code, nous avons pu obtenir un première fenêtre avec du son et une image.

J’ai passé beaucoup de temps à lire la documentation de Slick, et à me renseigner sur la manière d’utiliser Slick pour programmer un jeu vidéo en utilisant la méthode MVC.

J’ai ainsi découvert  que chacune de nos vues, représente dans le fond un BasicGameState, et que pour utiliser ces états, il nous faut instancier un StateBasedGame. Je me suis aussi renseigné sur les objets graphiques fournis par Slick, et j’ai ainsi trouvé MouseOverArea pour faire les boutons, TextField pour faire les champs de texte, et ComponentListener, pour affecter un écouteur sur chacun de nos objets graphiques. J’ai cependant remarqué un gros problème, Slick fournit très peu d’objets graphiques, et il n’est ainsi pas possible simplement, de créer par exemple un bloc avec une barre de défilement, ce qui nous aurait été utile pour certaines fenêtres.

D’abord j’ai voulu mélangé SWING et SLICK , mais ce n’est apparemment pas une bonne idée.  J’ai ensuite trouvé TWL (Themable widget library) (http://twl.l33tlabs.org/ ) , qui est une librairie compatible avec Slick. J’ai essayé de la faire fonctionner, mais j’ai de la misère à cause de soucis de listeners. En effet si j’utilise la TWL sur une vue, tous les listeners Slick sont désactivés sur celle-ci. De plus je n’ai pas encore réussi à utiliser d’objets graphiques de TWL.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>