Comment ne pas dependre du système de fenêtrage
Salut !
J'aimerai me lancer dans un projet: la création d'un moteur 3D puis par la suite l'utiliser pour créer un jeu-vidéo.
Je sais qu'il existe déjà beaucoup de moteur performant (Ogre, CrystalSpace, etc...) mais si je souhaite créer mon moteur 3D c'est surtout pour apprendre.
J'ai malheureusement quelque soucis, à commencer par le choix du système de fenêtrage. J'ai le choix entre la SFML et la SDL. L'utilisation du système de fenêtrage me servira qu'à créer un contexte OpenGL et à récupérer les evenements.
Mais voilà le soucis: j'aurai une classe Camera, puis une autre CameraFreeFly qui heritera de Camera. Cette CameraFreeFly devra agir en fonction des evenements clavier et souris: mais je veux faire en sorte que les evenements que je lui passe en argument ne soient pas dépendant de la SDL ou de la SFML. Par exemple si un jour je change de SDL à SFML, je veux pas aller bidouiller toute mes classes.
J'ai pensé à re-définir une sur-couche, encapsulant les données de ces systèmes de fenêtrage. Qu'en pensez-vous ? Voyez-vous une autre solution ?