Vous l'abordez de manière inversée.
Ce qui devrait se trouver dans votre moteur est le suivant :
Tout le code qui s'est avéré être commun entre votre premier et votre second jeu.
D'abord, écrivez un jeu. N'écrivez pas un moteur, car, comme vous l'avez constaté, vous ne savez pas ce qu'il doit contenir, ni comment il doit être conçu. Écrivez plutôt un jeu.
Une fois que vous avez ce jeu, écrivez un autre jeu. Ensuite, lorsque vous avez fait cela, examinez le code du deuxième jeu. Dans quelle mesure a-t-il été réutilisé à partir du premier jeu ?
Tout ce qui a été réutilisé doit ensuite être refactorisé dans un projet distinct. Ce projet est maintenant votre moteur de jeu.
Cela ne signifie pas qu'il ne faut pas planifier, ni essayer d'écrire du bon code. Mais assurez-vous de travailler sur quelque chose de concret, quelque chose qui vous permettra de distinguer une bonne implémentation d'une mauvaise. Une bonne implémentation d'un jeu est une implémentation qui fonctionne, qui est amusante et qui ne plante pas. Écrivez votre code pour réaliser ces choses en premier.
Une bonne implémentation d'un moteur ? C'est plus délicat. Quelle est la bonne implémentation d'un moteur de rendu ? D'un cadre d'IA ? D'un système de particules ? En fin de compte, le seul moyen de déterminer si vous avez un bon moteur est de voir comment il fonctionne dans un jeu réel . Donc, si vous n'avez pas de jeu, vous n'avez aucun moyen d'évaluer votre moteur. Et si vous n'avez aucun moyen d'évaluer votre moteur, vous n'avez aucun moyen de juger si le code que vous écrivez est réellement utile.
1 votes
Je n'ai rien contre SO, mais vous feriez probablement mieux de poster ceci sur les forums de gamedev.net.
0 votes
Bonne (et flexible) détection des collisions.
1 votes
La détection des collisions est située dans le moteur Farseer Phsyics
5 votes
Voulez-vous écrire un jeu ou un moteur ? (voir : scientificninja.com/advice/écrire-des-jeux-pas-de-moteur )
3 votes
@clintp - et les commentaires ne sont pas l'endroit pour poster une réponse à la question.