2010-02-07 26 views
6

Lequel de ces jeux conviendrait le mieux à un jeu de tir de haut en bas? J'ai entendu dire que Box2D fonctionne plus rapidement, mais j'ai également remarqué qu'il manque un support communautaire plus large pour XNA (il semble plutôt être utilisé pour le flash - pour une raison inconnue de moi).Farseer ou Box2D? Mise en œuvre de la physique du tireur top-down

Farseer est toutefois construit pour XNA, et semble l'adapter et effectuer assez bien. A mon avis, l'avantage de Farseer est aussi une API propre et facile à utiliser (elle s'adapterait parfaitement à la structure de mon moteur de jeu). Cependant, j'ai peur d'avoir des inconvénients si je l'utilise (des balles et des corps à grande vitesse? Étrange pas un nombre d'accidents?)

Dans l'ensemble j'apprécierais si vous préciser qui correspond le mieux XNA/Développement de PC.

Raisons pour lesquelles j'ai besoin ce:

  • Il ne va pas être utilisé que dans un seul top-down shooter, il est destiné à l'intégration avec le cadre du jeu.
  • Même un tireur de haut en bas serait plus attrayant dans un environnement avec de meilleures collisions, une physique réaliste - par exemple, vous pouvez déplacer une boîte pour se mettre en couverture?
  • Le contrôle manuel des collisions au pixel près serait trop cher (je n'ai pas le temps de l'optimiser - ni j'en ai besoin si des moteurs physiques performants avec des algorithmes avancés de détection de collision existent) collision est trop irréaliste.

Est-ce que je mérite une réponse avec votre opinion maintenant? S'il vous plaît gardez-le droit et dites-moi que j'ai fait un mauvais pas en utilisant Farseer au lieu de Box2D? (Je devais commencer à travailler en attendant une réponse.)

Merci à l'avance

Répondre

3

Pourquoi utiliser une bibliothèque physique dans un top-down shooter?

Je pense que tout ce dont vous avez besoin est une simple détection/manipulation de collision. Exécuter une simulation physique complète semble un peu exagéré.

Edit:

Personnellement, je pense que j'irais pour Farseer, je l'ai entendu de bonnes choses à ce sujet et il semble être bien pris en charge. Le point est que pour une décision basée sur des arguments, il faut d'abord savoir exactement à quoi il servira et ne sera pas utilisé, ce que vous attendez en termes de fonctionnalité, de vitesse et de plates-formes supportées, ce que vous attendez en termes de support, etc. Il ne suffit pas de demander "Quelle physique-lib devrais-je utiliser pour un tireur topdown"? Surtout si vous l'éditez plus tard pour dire que ce n'est pas pour un top-shooter mais pour une utilisation générale dans un moteur de jeu :-)

+0

J'apprécierais que vous répondiez simplement à la question. J'ai mes raisons personnelles, si vous voulez, je les partagerai avec vous dans la question éditée. – Johnny

+0

Merci pour la réponse! Je ne suis pas sûr que vous avez remarqué que j'ai dit que j'en avais besoin pour les jeux XNA avec un PC en tête (plateforme). Aussi j'avais besoin d'une comparaison de Box2D et de Farseer, et puisque ce sont essentiellement deux "mêmes" choses (Farseer est basé sur une version plus ancienne de Box2D), mais je voulais savoir lequel est supporté - lequel était plus dédié à XNA par les développeurs, et lequel a la communauté qui l'utilise avec XNA. Je pensais que ce serait plus ou moins explicite, alors je suis désolé que ce ne soit pas le cas. Les gens lisent rarement de longues questions et j'ai essayé de rester bref. Merci encore! – Johnny

2

Je suggère fortement d'utiliser Farseer, il a été développé pendant longtemps (> 3 ans) et je pense que ses défauts majeurs ont été corrigés.

3

J'irais avec Farseer à coup sûr (bien que je l'ai utilisé précédemment donc je suis partial). Il a beaucoup d'exemples et a même quelques optimisations spécifiques pour le .Net compact FX. En interne, il est basé sur Box2D (oui c'est une construction légèrement ancienne) mais il est activement développé toutes les nouvelles fonctionnalités de Box2D sont tirées à travers. L'API est mature, propre et facile à utiliser que Box2D.Si tout cela ne vous change pas, alors ceci devrait: http://ianqvist.blogspot.com/2010/12/benchmarking-box2d-based-physics.html