1

Ich arbeite mit Bullet Physics Engine. Meine geschaffenen Welt basiert auf:Kollision zwischen kinematischen Körpern in Bullet Physics

  • Static Object -> Boden
  • Dinamic Object -> Wird durch andere Objekte verschoben werden.
  • 2 Kinematische Objekte -> Sie werden das Dynamische verschieben. Ich muss sie von außen kontrollieren, so dass ich kinematische Objekte brauche.

Die Kollision zwischen jeder Kinematik und dem Dynamic funktioniert wie erwartet.

Wenn jedoch eine Kinematik mit den anderen kollidieren, überschreitet es und ich brauche sie zu kollidieren und „reagieren“ zu dieser Kollision (wie ein Dinamic Körper)

Ich habe nach einer Antwort suchen, aber ich habe keine Lösung gefunden. Was kann ich tun? Dank

Antwort

4

Ich brauche sie von außen zu steuern, so dass ich kinematische Objekte benötigen

Diese Behauptung ist nicht ganz korrekt. Dynamische Objekte können ebenfalls gesteuert werden.

Wenn jedoch eine Kinematik mit dem anderen kollidieren, überschreitet es und ich brauche sie kollidieren und „reagieren“ zu dieser Kollision (wie ein Dinamic Körper)

Kinematic Körper nicht kollidieren/reagieren miteinander innerhalb des Motors. Man könnte diesen Code extern reproduzieren, um sie reagieren zu lassen, aber nicht dorthin gehen. Wenn du diese Körper haben musst, die du erstellt hast, während kinematische Körper mit anderen Körpern reagieren, die auch kinematisch sind, dann empfehle ich dynamische Körper zu verwenden.

Was kann ich tun?

Statt diese Einrichtungen als kinematische Körper zu schaffen:

  1. erstellen sich als dynamischen Körper; und
  2. Verwenden Sie eine Kraft/Impuls-basierte constraint mechanism zu "steuern" sie.
+0

Nun, ich ändere die Methode der Körper von setLinealVelocity() zu ApplyCentralImpulse und alles funktioniert gut. Vielen Dank, als Lösung markiert. Ich habe auch Kinematik in Dynamik geändert. – aserrin55

Verwandte Themen