1

Je travaille avec Bullet Physics Engine. Mon monde créé est basé sur:Collision entre corps cinématiques dans Bullet Physics

  • objet statique -> Ground
  • Dinamic Object -> va être déplacé par d'autres objets.
  • 2 Objets cinématiques -> Ils vont bouger le dinamique. J'ai besoin de les contrôler de l'extérieur, de sorte que j'ai besoin d'objets cinématiques.

La collision entre chaque cinématique et le dinamic fonctionne comme prévu.

Cependant, quand on cinématique entrer en collision avec l'autre, il outrepasse et je les ai besoin d'entrer en collision et « réagir » à cette collision (comme un corps Dinamic)

que je cherchais une réponse, mais je pas trouvé de solution. Que puis-je faire? Merci

Répondre

4

j'ai besoin de les contrôler de l'extérieur, de sorte que j'ai besoin des objets cinématiques

Cette affirmation n'est pas tout à fait exact. Les objets dynamiques peuvent également être contrôlés.

Cependant, quand on cinématique entrer en collision avec l'autre, il outrepasse et j'ai besoin d'entrer en collision et les « réagissent » à cette collision (comme un corps Dinamic)

corps Cinématique ne sont pas en collision/réagir les uns avec les autres dans le moteur. On pourrait reproduire ce code en externe pour les faire réagir mais ne pas y aller. Si vous devez faire réagir les corps que vous avez créés en tant que corps cinématiques avec d'autres corps qui sont aussi cinématiques, alors je suggère d'utiliser des corps dynamiques à la place.

Que puis-je faire?

Au lieu de créer ces corps comme corps cinématique:

  1. les corps comme dynamiques Créez; et
  2. d'utiliser un constraint mechanism basé sur les forces/impulsions pour les "contrôler".
+0

Eh bien, je change la méthode des corps de setLinealVelocity() à ApplyCentralImpulse et tout fonctionne bien. Merci beaucoup, marqué comme solution. J'ai aussi changé de cinématique en dynamique. – aserrin55