Je prépare un jeu qui se jouera principalement avec une gravité en trois dimensions.
J'entends par là plusieurs planètes / étoiles / lunes se comportant de manière réaliste, et le tracé de trajectoire et la prévision de trajectoire dans le champ de gravité.
J'ai examiné une variété de moteurs physiques, tels que Bullet , tokamak ou Newton , mais aucun ne semble convenir, car je devrais essentiellement réécrire le moteur de gravité dans leur cadre.
Connaissez-vous un moteur physique capable de gérer plusieurs corps tous attirés les uns par les autres?
Je n'ai pas besoin de gestion de scénario ou de rendu, juste de la physique de base. (La détection de collision serait un bonus, tout comme la dynamique du corps rigide).
Mon expérience est en physique, je serais donc en mesure d'écrire un moteur qui utilise l'intégration Verlet ou RK4 (ou même l'intégration Euler, si je devais le faire), mais je préférerais de loin adapter une solution standard.
[edit]: Il existe d'excellentes ressources pour la simulation physique des problèmes à n corps en ligne et sur stackoverflow
Réponses:
Je ne pense pas que vous allez pouvoir utiliser un moteur physique classique à tranches de temps car le problème des trois corps ne permettra pas des orbites stables.
Vous pourrez peut-être extraire le moteur physique de Stellarium ou d'un autre package d'astronomie.
Cependant, je pense que la meilleure solution consiste à simplement cuire sur les chemins de votre planète et à les retirer d'une table. À moins que votre joueur ne puisse réellement affecter la trajectoire des planètes par ses actions, il est inutile de faire une simulation complète.
la source
Y a-t-il une limitation de plate-forme? Parce que PhysX , de nVidia, a exactement ce que vous recherchez, et plus encore .
la source