Kräfte berrechnen?

Design Patterns, Erklärungen zu Algorithmen, Optimierung, Softwarearchitektur
Forumsregeln
Wenn das Problem mit einer Programmiersprache direkt zusammenhängt, bitte HIER posten.
Antworten
Benutzeravatar
sirnoname
Beiträge: 67
Registriert: 20.06.2010, 11:04

Kräfte berrechnen?

Beitrag von sirnoname »

Hallo zusammen,

ich bin gerade dabei in einem Spiel die Fliehkräfte zu berrechnen und mache da anscheinend/offensichtlich derbe Physikfehler.
Ich habe:
- alte Position, neue Position vom Fahrzeug auf der Karte und damit ...
- alle Geschwindigkeiten xyz "Kartenbezogen" über die vergangene ingame Zeit
- die Ausrichtung des Wagens in einem einfachen Vektor
- meine Winkel der Ausrichtung
- Drehgeschwindigkeit und Beschleunigung aus yaw + ingame Zeit (+ Pitch und Roll)

Nun wollte ich die Fliehkräfte beim Beschleunigen und Bremsen darstellen (und in der Kurve) mit einer Blickrichtungs Umrechnung auf den Wagen bezogen (Geschwindigkeiten Kartenbezogen auf Blickrichtung):
speedx= cos(yaw) * speedx + sin(yaw) * speedy;
speedz= -sin(yaw) * speedx + cos(yaw) * speedy; //Koordinatensystem: x und y sind Richtung, z ist Höhe

ihr merkt: ich verwende die Geschwindigkeiten statt der Beschleunigungswerte, weil diese als einziges Sinn ergeben haben. Damit meine ich, das diese in der Kurve einen konstanten Wert als Fliehkraft zur Seite geben sollange ich in der Kurve fahre. Die Beschleunigung ist nur kurz beim Eintreten in die Kurve vorhanden. Aber auch die Geschwindigkeit sind in engen Kurven ohne Geschwindigkeit invertiert :(
Ich bekomme es einfach nicht hin die Drehfliehkräfte und die Beschleunigungen der Wagenlage zusammenzuführen.

Desshalb die Frage: wo kann ich sowas nachlesen, wer kann mir hier einen Tipp geben was ich da genau machen muss :roll:

Grüße
SirNoName
Eisflamme
Establishment
Beiträge: 412
Registriert: 26.05.2002, 17:42
Wohnort: Köln

Re: Kräfte berrechnen?

Beitrag von Eisflamme »

Vll auf scholar.google.de mit paar Schlagwörtern? http://scholar.google.de/scholar?hl=de& ... =&as_vis=0
Benutzeravatar
eXile
Establishment
Beiträge: 1136
Registriert: 28.02.2009, 13:27

Re: Kräfte berrechnen?

Beitrag von eXile »

Bei solchen Fragen verweise ich doch immer gerne an Brian Beckmans The Physics of Racing. Dass die Geschwindigkeiten (und Positionen und Beschleunigungen) kartenbezogen vorliegen, ist doch vollkommen ausreichend, weil es hier ein geeignetes Inertialsystem darstellt. Meinst du mit "Winkel der Ausrichtung" die Ausrichtung der steuernden Räder?

Wie dem auch sei, das a = ds/dt * 1/dt aus dem Artikel wäre vielleicht ein geeigneter Ansatz. Mir ist leider zu unklar, war du alles gegeben hast, und was du genau berechnen willst. Kannst du bitte ein Bild zeichnen?
Benutzeravatar
sirnoname
Beiträge: 67
Registriert: 20.06.2010, 11:04

Re: Kräfte berrechnen?

Beitrag von sirnoname »

Hi, danke für den Hinweis.
Ich habe ein paar interessante Sachen gelesen, allerdings hatten die nichts mit dem ingame Berechnen zu tun sondern mit dem Auswerten dieser berechneten Werte.
Bei der Abfrage mit anderen Suchbegriffen kamen irgendwie dieselben Ergebnisseiten.
Auch nicht schlecht sind die Google Bücher, bei denen jede 2te Seite herausgerissen ist ;)

Ich hoffe ja, das mir hier jemand die Basics erklären kann, wie die Kräfte generell zusammengerechnet werden sollen und ob die vorhandenen Informationen ausreichen.

Unter Winkel meine ich die Ausrichtung des Wagens zur Karte.
Die Formel die du geschrieben hast wird verwendet und die Geschwindigkeiten/Beschleunigungen kartenbezogen sind vorhanden.
Ich will die Fliehkräfte, die auf den Fahrer wirken bei Kurvenfahrt ermitteln, naja halt über das gesammte Spiel hinweg.
x-motion2.jpg
Blau ist die Wagenposition auf der Karte, Schwarz sind die gewollten Werte Vektoren der Geschwindigkeiten aus Wagensicht. Schön wären dann noch die Fliehkräfte. Sind das dieselben??
In diesem Bild fährt der Wagen in die Kurve, zum Eintritt in die Kurve sind die Fliehkräfte zur Seite NULL.
Dann dreht der Wagen (Rotationsgeschwindigkeit/Beschleunigung) und der Fahrer wird durch seine alte Bewegungsrichtung (Massenträgheit) weiter zur Seite gedrückt als nur die Rotationsfliehkraft ausmachen würde.
Der Wagen bremst nicht ab, da er vom Motor auf gleicher vorwärts Geschwindigkeit gehalten wird.
Je schneller es in die Kurve geht, desto geringer die Rotationsgeschwindigkeit aber desto höher die Abbremsung des bisherigen Weges die auf den Fahrer einwirkt.
Wie dieses "richtig" zusammengerechnet wird ist mir ein Rätsel.

Grüße
SirNoName

ps. Ich will keine genaue Berechnung, der Fahrer sitzt in der Mitte ;)
Dann sollte die Rotationsfliehkraft eigentlich NULL sein?
Benutzeravatar
Krishty
Establishment
Beiträge: 8261
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Kräfte berrechnen?

Beitrag von Krishty »

Ist die Fliehkraft (== Massenträgheit) denn nicht (vorherige Bewegungsrichtung - neue Bewegungsrichtung) (in deinem Fall die Differenz zwischen den schwarzen Vektoren) und fertig?
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Despotist
Establishment
Beiträge: 394
Registriert: 19.02.2008, 16:33

Re: Kräfte berrechnen?

Beitrag von Despotist »

Warum verwendest du nicht einen einfachen Ansatz in dem der Radius der Kurve die das Fahrzeug beschreibt bekannt ist (Radstellung, Strecke)? Aus der Geschwindigkeit des Fahrzeugs berechnest du die Winkelgeschwindigkeit und hast direkt die Fliehkraft. Wenn du in der Kurve noch abbremst oder beschleunigst wird das ganze aber sehr kompliziert. Wozu brauchst du es denn so genau? Kräfte "sieht" man ja normalerweise nicht. Oder willst du das Gehänge am Rückspiegel simulieren? ;)
Krishty hat geschrieben: Ist die Fliehkraft (== Massenträgheit) denn nicht (vorherige Bewegungsrichtung - neue Bewegungsrichtung) (in deinem Fall die Differenz zwischen den schwarzen Vektoren) und fertig?
Daraus könntest du den Radius bestimmen aber je schneller man fährt desto höher die Kraft also muss die Geschwindigkeit auf jeden Fall mit rein.
Benutzeravatar
Krishty
Establishment
Beiträge: 8261
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Kräfte berrechnen?

Beitrag von Krishty »

Despotist hat geschrieben:
Krishty hat geschrieben: Ist die Fliehkraft (== Massenträgheit) denn nicht (vorherige Bewegungsrichtung - neue Bewegungsrichtung) (in deinem Fall die Differenz zwischen den schwarzen Vektoren) und fertig?
Daraus könntest du den Radius bestimmen aber je schneller man fährt desto höher die Kraft also muss die Geschwindigkeit auf jeden Fall mit rein.
Nein, du musst nur durch die Zeitdifferenz teilen. Wenn du schnell fährst ist die Zeit für dieselbe Differenz in der Bewegungsrichtung (== Beschleunigung) geringer. Und wenn die Zeit, die du für eine Beschleunigung brauchst, gegen 0 geht, geht auch die Trägheit gegen unendlich.

Bin ich hier der einzige, der die physikalisch korrekten Lösungen auch immer als am einfachsten empfindet?
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
sirnoname
Beiträge: 67
Registriert: 20.06.2010, 11:04

Re: Kräfte berrechnen?

Beitrag von sirnoname »

Hallo,

das mit der Winkelgeschwindigkeit == Fliehkraft scheint nicht zu stimmen, da die Fahrzeug Geschwindigkeit plötzlich nicht mehr berücksichtigt wird.
Bin ich hier der einzige, der die physikalisch korrekten Lösungen auch immer als am einfachsten empfindet?
Ich setze momentan diese Lösung von der empfohlenen Seite ein. Komischerweise ergibt sich folgendes Phänomen:

Szenario 1: Ich fahre langsam und schnell im Kreis rechtsherum (30kmh).
Der seitliche Geschwindigkeitswert ist z.B. -0,3m/s

Szenario 2: Ich fahre mit 100 kmH in eine Kurve
Der seitliche Geschwindigkeitswert ist z.B. 10m/s ABER nicht mehr im negativen :(

So als würde die Umrechnung der Fahrzeugbezogenen Geschwindigkeiten ein paar Grad daneben liegen. (es verhält sich beim linksfahren genauso, halt invertiert)
Ich habe die Formel oben angegeben. So als würde ich einen neuen Ausrichtungswinkel zur Umrechnung benötigen???
Die Beschleunigungen sind dementsprechend ebenfalls unbrauchbar.

Grüße
SirNoName
Benutzeravatar
Krishty
Establishment
Beiträge: 8261
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Kräfte berrechnen?

Beitrag von Krishty »

sirnoname hat geschrieben:Szenario 1: Ich fahre langsam und schnell im Kreis rechtsherum (30kmh).
Der seitliche Geschwindigkeitswert ist z.B. -0,3m/s
Es gibt keine seitliche Geschwindigkeit, sondern nur eine Kraft. Und die kann auch nicht negativ sein weil sie ein Vektor ist.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
sirnoname
Beiträge: 67
Registriert: 20.06.2010, 11:04

Re: Kräfte berrechnen?

Beitrag von sirnoname »

So, funktioniert nun ganz gut, scheint als hätte ich mich zuviel an den Geschwindigkeiten festgehalten.
Wenn ich zuerst die Beschleunigungen auf der Karte ausrechne und dann in das Fahrzeug drehe klappt es.
Geschwindigkeit nach vorne passt in allen Lagen, zur Seite nicht ist aber jetzt nicht so wichtig wenn es um die Kräfte geht.

Die Formel von oben habe ich in ihrer Schreibweise noch nicht verstanden.
a = ds/dt * 1/dt

Beschleunigung= delta strecke / delta zeit * 1 / delta zeit
also ca so: 3m-2m / 1s * 1 / 1s

Ich mach das eher so:
Geschwindigkeit = delta strecke / delta Zeit
Beschleunigung = delta Geschwindigkeit / delta Zeit
dazu sind zwei Geschwindigkeiten für das Delta von Nöten.
Steht auch so in der Wiki: a= dv / dt
Benutzeravatar
sirnoname
Beiträge: 67
Registriert: 20.06.2010, 11:04

Re: Kräfte berrechnen?

Beitrag von sirnoname »

Hmm, war die Frage jetzt zu trivial um eine andere Meinung zu hören oder liege ich richtig?
Despotist
Establishment
Beiträge: 394
Registriert: 19.02.2008, 16:33

Re: Kräfte berrechnen?

Beitrag von Despotist »

sirnoname hat geschrieben: Die Formel von oben habe ich in ihrer Schreibweise noch nicht verstanden.
a = ds/dt * 1/dt
Wenn ich mich an meine Physikvorlesung korrekt erinnere ist die Geschwindigkeit die erste Ableitung des Ortes nach der Zeit und die Beschleunigung die zweite.
sirnoname hat geschrieben: Ich mach das eher so:
So löst man das in der Praxis. Ist also für deine Zwecke vermutlich ausreichend.
Antworten