42 votes

Ressources pour la physique du jeu en 2D

Je suis à la recherche de quelques bonnes références pour l'apprentissage du modèle 2d de la physique dans les jeux. Je suis pas à la recherche d'une bibliothèque, de le faire pour moi - je veux de penser et d'apprendre, pas aveuglément utiliser quelqu'un d'autre travail.

J'ai fait un bon peu de Googling, et pendant que j'y ai trouvé quelques tutoriels sur GameDev, etc., Je trouve que leurs tutoriels difficile à comprendre parce qu'ils sont soit mal écrit, ou d'assumer un niveau de la compréhension des mathématiques que je n'ai pas encore posséder.

Pour plus de détails - je suis à la recherche pour savoir comment le modèle top-down jeu en 2d, comme une sorte de jeu de combat de tanks - et je veux le modèle de précision (entre autres choses) de l'accélération et de la vitesse, de l'accumulation de chaleur des composants des collisions entre les modèles et les limites de niveau, de missiles et d'armes de type.

Sites internet, livres recommandés, des blogs, des exemples de code - tous sont les bienvenus s'ils vont de l'aide à la compréhension. Je suis en train d'étudier à l'aide de C# et F# pour créer mon jeu, ainsi que des exemples de code dans une de ces langues serait formidable, mais ne laissez pas la langue vous arrêter de poster un bon lien. =)

Edit: je ne veux pas dire que je ne comprends pas les mathématiques, c'est plus le cas que je ne sais pas ce que j'ai besoin de savoir pour comprendre les systèmes concernés, et ne savez pas vraiment comment faire pour trouver les ressources qui va m'apprendre d'une manière compréhensible.

21voto

mistrmark Points 3854

Voici quelques ressources que j'ai assemblé il y a quelques années. Il convient de souligner l'Intégration de Verlet. Je suis également y compris des liens vers le monde open source et commerciales des moteurs de physique que j'ai trouvé à l'époque. Il y a un stackoverflow article sur ce sujet ici: jeu en 2d de la physique?

Les Méthodes De Physique

Livres

  • "La Physique du jeu Moteur de Développement", Ian Millington -- je possède ce livre et le recommande fortement. Le livre s'appuie un moteur physique en C++ à partir de zéro. L'Auteur commence avec la base de la physique des particules et ajoute "lois du mouvement", les contraintes, de la rigidité des corps physique et sur et sur. Il comprend bien documenté code source tout le chemin à travers.

Les Moteurs De Physique

8voto

David Koelle Points 10363

7voto

epaik Points 225

Parlant d'expérience, la mise en œuvre d'un moteur physique 2D est assez difficile. Je vais vous décrire en détail les différentes étapes que j'ai pris lors de la création de mon moteur.

  1. La détection de Collision. La détection de Collision peut être un problème difficile, même lorsque vous n'êtes pas affaire avec des mondes en 3D ou en réseau des simulations. Pour la 2D physique, vous voulez absolument utiliser la Séparation de l'Axe Théorème. Une fois que vous avez de mettre en œuvre SAT, vous êtes à mi-chemin fait de prise de la dynamique de la partie de votre moteur.

  2. La Cinématique/Dynamique. Chris Hecker a écrit une excellente ressource en ligne qui m'a traversé la collision de réponse de l'étape-par-étape.

  3. Tout Le Reste. Une fois que vous avez la détection de collision/réaction terminée, c'est une question de mise en œuvre de tout ce que vous voulez dans le moteur. Cela peut inclure la friction, les forces de contact, les articulations, ainsi que tout ce que vous pouvez penser.

Amusez-vous! La création de votre propre simulation physique est d'une incroyable expérience enrichissante.

3voto

angelo Points 194

C’est un excellent tutoriel qui illustre les concepts de physique 2D en utilisant le flash et n’est pas spécifique au flash. http://www.rodedev.com/tutorials/gamephysics/game_physics.swf

3voto

James Points 851

Même si vous voulez tout savoir de bas en haut, de l'open source de la physique de la bibliothèque qui est bien codé et documenté et contient beaucoup plus d'informations qu'un livre. Comment puis-je faire face à la situation x... rechercher dans les fichiers peuvent être plus rapides que d'un document de l'index.

Origine de la réponse:

Quoi, pas de mention de Box2D? Ses open source side-project d'un employé de blizzard, a une bonne communauté, et bien, fonctionne très bien.

Dans ma (courte) expérience avec Box2D, en l'intégrant avec un Couple de Jeu Builder, j'ai trouvé l'API propre à l'utilisation, la documentation a été clair, il a soutenu toute la physique des objets que j'attendais (articulations, en particulier, ont été d'une exigence), et la communauté regardé amicale et active (aux environs de début 2010).

À en juger par le forum des affiches, il est également apparu que les gestionnaires ont été réceptifs à la source des cotisations (qui ne portent pas de licence de bagages).

C'est l'île solveur semblait assez vite, que j'ai attendu de sa réputation, non pas que j'ai fait toute les principaux tests de performance.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X