Salut.
J'ai commencé à coder un moteur graphique en C++, à l'aide de SFML.
Je suis au courant qu'il existe déjà bon nombre de moteurs graphiques 2D, mais j'en apprendrai plus si j'en fais moi-même un.
Voici comment il s'utilise, grossièrement :
(Je ne poste pas sur un Wall l'utilisation car le code n'est pas trop long et su un Wall, au bout d'un moment, c'est effacé)
mGraphicEngine = new cGraphicEngine (800, 600, "Nom Fenetre");
mGraphicEngine->setBackgroundColor (10, 50, 100);
int stringHello = mGraphicEngine->addString ("Hello World !!!", "DS-DIGIB.TTF", 100);
int spriteBalle = mGraphicEngine->addSprite ("balle.png");
mGraphicEngine->moveSurface (spriteBalle, 1.f, 0.f);
mGraphicEngine->frame (); // Affiche les images et textes
delete mGraphicEngine;
Je n'ai pas affiché la boucle principale.
Mon but est donc de proposer un outil permettant de gérer l'affichage sans s'apercevoir qu'il est question de SFML.
De cette facon, si j'implémente ce moteur avec d'autres outils, par exemple libnds, je pourrai obtenir une application tournant sur DS sans modifier le code de l'application.
J'ai aussi commencer à coder en anglais, j'espere ne pas faire de faute de langue. Mais du coup, je suis plus rétissant à utiliser des commentaires.
Voici mes interrogations :
Je me demande s'il ne serais pas plus intéressant de coder une classe cImage par exemple, au lieu ici de conserver les références à mes images par des entiers ?
Sinon, pour l'instant, j'ai une classe cEventHandler qui est contenu dans ma classe cGraphicEngine. En effet, les évènements dépendent de la fenêtre.
Mais je pense séparer ces deux classes, je trouve pas ca super logique de lier le moteur graphique au gestionnaire d'évènements ; le moteur graphique ne sert pour moi qu'à gérer le fenetrâge, les images et textes, l'affichage.
Vous en pensez quoi ?
Voici le code de la classe cGraphicEngine :
http://www.codeswall.info/source-136.html
http://www.codeswall.info/source-137.html
Merci ! 