Bonjour à vous,
Depuis pas mal de temps, je code un jeu en C++ reprenant le concept de la série des super smash bros de Nintendo.
Le jeu fut recommencer pas mal de fois du à de nombreux changement de bibliothèques, ce qui m'a permis de progresser.
Le principal problème est l'organisation, je ne vois jamais comment gérer les classes pour qu'elles puissent correctement communiquer entre elles.
Par exemple : la classe physique est séparée de la classe audio, dans ce cas la comment savoir dans la classe audio quand un personnage est touché par un objet ?
Pour vous donnez une idée des débuts du jeu voici l'éditeur de niveau ainsi qu'une démonstration du moteur physique :
-> Moteur physique démonstration.
-> L'éditeur de niveaux
Actuellement, voici l'organisation du jeu :
Explications :
Moteur :
Contient le jeu, me permettra d'ajouter un menu à la fin.
Jeu :
Contient un vecteur contenant tout les éléments du jeu (sols, caisses, ...), gère la relation entre les différentes classes (Physique, audio, joueur, ... )
Joueur:
Contient la position du joueur, ....
Physique:
La moteur physique gere les collisions entre les éléments du décors.
J'aimerais gérer les collisions du joueur dans le moteur physique et non dans la classe joueur, mais je ne voit pas comment faire passer la position du joueur au moteur physique. Actuellement je passe par la classe "Jeu" qui récupère les informations puis les envois à la classe "Physique".
- N'y a t-il pas un moyen de directement faire communiquer la classe joueur et la classe physique sans passer par la classe Jeu ?
- Avez vous des codes sources clairs de jeu dans le même genre ? Afin de voir leur organisation.
- Si je reprend l'exemple de la classe audio et la classe physique, comment savoir dans la classe audio si une caisse rentre en contact avec le sol ?
- Que pensez-vous de mon moteur physique ( Lien plus haut ) ?
Merci beaucoup à ceux qui auront pris le temps de me lire.
Hybrix.
Partager