2D Physik Engine
-
Ich hab leider keine Ahnung von dem Thema...
zwar hab ich schon eine Engine für meinen Ball geschrieben, aber ich weiß 1000%ig, dass die NICHT realistisch ist
Ich brauch eine Engine, die einen Ball realistisch mit Kollisionsabfrage ausstattet
Der Ball hat folgende Eigenschaften:
-Gewicht
-"Sprungstärke"Auf ihn wirken:
-Gravitation
-Luftwiderstand
-(Sofern auf dem Boden)"Rollwiderstand"All das unter Einwirkung von float dt(ΔTime)
Falls es schon eine 2D Physik-Engine gibt (sicherlich) bitte posten

Ich hoffe, es ist verständlich, was ich brauche~Schön die Tags benutzt ;)~
-
Ich habe auch lange Zeit nach einer vernünftigen 2D-Physik-Engine gesucht, aber keine gefunden. Jetzt benutze ich ODE. Die ist zwar eigentlich eine 3D-Physik-Engine, aber was soll's.
-
ich korrigiere mal
Der Ball hat folgende Eigenschaften:
- Masse
- Trägheitstensor
- Geschwindigkeit
- Winkelgeschwindigkeit (bzgl. des schwerpunktes)
- Ort
- evtl. Feder- und DämpfungskonstantenAuf ihn wirken:
- Gravitation
- Zwangskräfte ( durch Nebenbedingungen wie z.b. Rollen auf schiefer ebene)
- evtl. nicht konservative Kräfte ( wie z.B. Luftwiederstand, Reibung):xmas2:
-
Meine Antwort bleibt dieselbe.
-
Erst mal Frohes neues an alle!!!
@xroads42:Wie gesagt:"Ich hab leider keine Ahnung von dem Thema..."
Ich hab mich wieder selbst drangesetzt und ich finde das Ergebnis nicht schlechtODE sah zwar gut aus, ich hatte aber Fehler beim compilen,die ich nicht korregieren konnte

Aber die Demos waren seeeeeehr nice

-
RobthaR schrieb:
ODE sah zwar gut aus, ich hatte aber Fehler beim compilen,die ich nicht korregieren konnte

Mit Visual C++ 2005 Express geht es ohne Probleme. Dafür gibt es sogar schon vorgefertigte Workspaces, wo du nur noch auf Kompilieren drücken musst. Da kann eigentlich gar nichts schiefgehen.
-
Anscheindend gehts mit dem guten alten MSVC6.0 nicht

-
Den sollte man heute auch nicht mehr benutzen.
Die Standardkonformität lässt sehr zu wünschen übrig.
Hol dir doch die kostenlose Visual C++ 2005 Express Edition.
-
Ich hab mir jetzt mal VC2005 runtergeladen.
Jetzt hab ich anstatt von der Endlosen Liste an Templates, die ich bei 6.0 hatte nur noch die Konsolenprogramme
Kann mir jemand sagen, wo ich all die Mfc Templates wie SDI MDI und Dialog herbekomme?
-
MFC is bei der Express Edition nicht dabei..
nur WinForms
-
Wo gibts denn gute WinForms Tutorials?
-
Hallo
Ich habe mich zufällig auch mit 2D Physik beschäftigt und kann vielleicht Rat geben
Die kinematischen Zusammenhänge werden sehr gut von David Baraff beschrieben, z.B. inhttp://www.cs.cmu.edu/~baraff/sigcourse/
Rigid Body Dynamics
Lecture Notes I (unconstrained motion)
Lectures Notes II (motion with constraints)Nachdem Du das alles gelesen und vielleicht sogar anprogrammiert hast, wirst Du an einem kleinen Wort dort hängenbleiben und wahrscheinlich nicht weiterkommen: QP-Solver mit Bound Restrictions zur Lösung statisch überbestimmter Resting Forces.
Baraff hat später einen Dantzig Algorithmus vorgestellt, der glaube ich auch in ODE drinnen ist.Ich habe eine kleine 2D Test Applikation mal geschrieben, wo ich bisschen Kollsission überprüfen kann. Mein Ziel war es allerdings auch Penetrations kurzzeitig zuzulassen um die Zeit nicht "anhalten" zu müssen bei Durchdringungen. Das größte Problem ist ja dass man nur endliche Zeitschritte hat. Bsp. Ball fällt zu Boden, in einem Moment ist ein Vertexpunkt noch über dem Boden,im nächsten Zeitschritt dann darunter - im schlimmsten Fall sackt Dir der Ball durch den Boden oder bleibt halb versenkt hängen.
Die Trägheitsmatrix ist in 2D konstant. Kräfte u. Moment sollten mit bisschen Knowhow kein Problem sein. Mit Drehmatrix Rechnungen musst Du Dich allerdings auskennen, aber auch kein großes Problem.
Das große Problem ist mit Abstand der Kollissionscode, und zwar in der Beziehung ein Durchsacken zu verhindern!
Gruß
Stefan