Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

02.01.2015, 10:11

IrrBullet Bouncing

Hallo,
ich programmiere ein Spiel mit Irrlicht und Irrbullet.
Nun habe ich ein kleines Problem und zwar hüpft mein Character wie ein Flummie.
Wie kann ich das ausstellen ? Also, dass egal aus welcher Höhe er fällt standfest auf der Erde bleibt und nicht
gleich wieder in die Luft katapultiert wird.
Ich habe Dem Character eine Masse gegeben und der Map keine.
Zusätzlich habe ich noch setRestitution bei dem Character auf 0 gestellt.

Gruß Niklas

2

02.01.2015, 10:19

Ich kenne zwar weder IrrBullet noch Irrlicht, vom Verhalten her sieht es mir aber so aus, als würde wäre die Dämpfung auf 0. Das führt dann zu einem ewigen Springen. (Das sagt mir zumindest mein physikalisches Verständnis)

3

02.01.2015, 17:10

Wenn ich Damping von der Map höher stelle also auf 100,100 (lin_damp, ang_damp) , dann springt der Character zwar nicht mehr so stark,
aber immer noch ein wenig. Muss ich denn Damping auf den Boden stellen und welche Werte sollte ich eingeben ? Gibt es vlt. auch noch andere Sachen, die das Prellen verhindern ? :search: :hmm:

4

02.01.2015, 17:49

Kannst du auch dem Charakter eine Dämpfung, bzw. Elastizität zuweisen?

Edit: Kann es sein, dass die Dämpfung nur zwischen 0 und 1 liegen darf? Zumindest legt dies dieser Kommentar nahe: https://github.com/cskeyn/BulletAndroid/…ftbody.cpp#L178

PS: Weißt du physikalisch/mathematisch, wie die Bewegungsgleichungen aussehen?

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

5

02.01.2015, 17:53

Eigentlich müsste eher die Restitution dafür zuständig sein, quasi die Elastizität des Materials. Warum 0 an der Stelle nicht tut, weiß ich allerdings nicht. Mal mit 0.001 probiert? Eventuell die Restitution des Bodens mit falschen Werten gefüttert? Werte zwischen 0 und 1 für alle physikalischen Parameter sind eigentlich üblich, 100 jetzt nicht unbedingt.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

6

02.01.2015, 21:00

Ich habe dem Boden keine Restitution gegeben und dem Charakter eine von 0.
Dem Boden habe ich eine Masse von 0 und dem Charakter eine von 0.2 gegeben.
Was muss ich ändern oder hinzufügen ?

FSA

Community-Fossil

  • Private Nachricht senden

7

02.01.2015, 21:06

Mal mit 0.001 probiert?

Zitat

Der RCCSWU (RandomCamelCaseSomtimesWithUndersquare) Stil bricht auch mal mit den veraltet strukturierten Denkmustern und erlaubt dem Entwickler seine Kreativität zu entfalten.

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

8

02.01.2015, 21:20

Ich würde dem Boden auf jeden Fall eine Restitution zuweisen. Masse von 0 ist sicherlich auch keine clevere Idee. Generell würde ich den Boden aber als statisch definieren. Genau genommen ist es vielleicht sogar lustig und clever dem Boden eine Restitution von 0 und dem Spieler eine von 1 zuzuweisen. So lässt sich beispielsweise ein Traumpolin (wahlweise Gummi-Wände) ganz einfach bauen indem man eine Restitution von 0.7 - 0.9 für das Objekt verwendet. Je nach Anwendungszweck kann das natürlich aber auch böse in die Hose gehen, weil damit natürlich z.B. kein Ball mehr vom Boden abprallen würde. Hängt halt davon ab was genau Du tun willst - man kann mit Physik ja diverse lustige Dinge anstellen.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

9

05.01.2015, 09:37

Also, wenn ein Objekt eine Masse von 0 hat, ist es statisch, so in meinem Fall der Boden.
Ich habe mit der Restitution verschiedenes ausprobiert, es geht aber nicht ;(
Wie kann ich es sonst machen, k.a. vlt. sowas wie Bouncing(false) oder so.

FSA

Community-Fossil

  • Private Nachricht senden

10

06.01.2015, 14:03

Mal mit der Restitution rum gespielt? Massenträgheit richtig auf das Volumen angepasst?

Zitat

Der RCCSWU (RandomCamelCaseSomtimesWithUndersquare) Stil bricht auch mal mit den veraltet strukturierten Denkmustern und erlaubt dem Entwickler seine Kreativität zu entfalten.

Werbeanzeige