|
|
Player bewegt sich nur auf einer höhe
#142998
07/23/07 20:41
07/23/07 20:41
|
Joined: Jul 2007
Posts: 288 Germany, NRW
Martek
OP
Member
|
OP
Member
Joined: Jul 2007
Posts: 288
Germany, NRW
|
Hi,
ich bin gerade dabei meinen Spieler für mein Spiel zu programmieren. Der Spieler kann gehen sich drehn und rennen, aber wenn ich auf eine Rampe gehe geht er einfach hindurch, also er bleibt auf seiner Höhe und geht nicht runter oder rauf. Ich hab schon im Handbuch nach einer Lösung gesucht, hab aber nichts gefunden.
Kann mir einer heflen??? Mfg, Pingulord
3D Gamestudio A7 Extra
|
|
|
Re: Player bewegt sich nur auf einer höhe
[Re: Martek]
#142999
07/23/07 20:51
07/23/07 20:51
|
Joined: Jan 2002
Posts: 4,225 Germany / Essen
Uhrwerk
Expert
|
Expert
Joined: Jan 2002
Posts: 4,225
Germany / Essen
|
Na grundsätzlich musst Du zwei Dinge tun. 1. Gravitation implementieren, also eine Kraft, die auf den Spieler einwirkt und ihn konstant sanft nach unten drückt. Wie das im RL halt auch ist.  2. Musst Du Kollisionserkennung benutzen. Dazu ist es nicht ausreichend die x, y und z Koordinaten einfach von Hand zu setzen (ich geh mal davon aus, dass Du das so machst, sonst würde Dein Player sich ja nicht in die Rampe bewegen). Statt dessen musst du Vektoren definieren, die die Richtung der Bewegung angeben, und diese an die Funktion c_move übergeben. Schau mal im Handbuch nach c_move(). Das sollte dich der Lösung auf jeden Fall näher bringen...
Always learn from history, to be sure you make the same mistakes again...
|
|
|
Re: Player bewegt sich nur auf einer höhe
[Re: Uhrwerk]
#143000
07/24/07 09:45
07/24/07 09:45
|
Joined: Jul 2007
Posts: 288 Germany, NRW
Martek
OP
Member
|
OP
Member
Joined: Jul 2007
Posts: 288
Germany, NRW
|
Also,
Spieler bewegt sich schon mit c_move. Nur das mit der Gravity habe ich noch net.
Gibs da ne funktion für, oder muss man die selber scripten??? Is mein erstes Spiel deswegen habe ich noch ein paar Probleme:)
Danke schonmal, Pingulord
3D Gamestudio A7 Extra
|
|
|
Re: Player bewegt sich nur auf einer höhe
[Re: Martek]
#143001
07/24/07 09:58
07/24/07 09:58
|
Joined: Apr 2007
Posts: 582 Germany
Poison
User
|
User
Joined: Apr 2007
Posts: 582
Germany
|
my.gravity = NR.; das sollte es eingentlich schon gewesen sein.
Everything is possible, just Do it!
|
|
|
Re: Player bewegt sich nur auf einer höhe
[Re: Poison]
#143002
07/24/07 10:35
07/24/07 10:35
|
Joined: Jul 2007
Posts: 288 Germany, NRW
Martek
OP
Member
|
OP
Member
Joined: Jul 2007
Posts: 288
Germany, NRW
|
Habs mit my.gravity ausprobiert.
Das ändert nichts. Ich gehe auf eine abfallende Rampe zu und er Player bleibt einfach auf seiner Höhe.
Ich hab bei verschieden Werte ausprobiert 1,10,5000 nichts passiert.
Pingulord
3D Gamestudio A7 Extra
|
|
|
Re: Player bewegt sich nur auf einer höhe
[Re: Martek]
#143003
07/24/07 13:00
07/24/07 13:00
|
Joined: Jan 2002
Posts: 4,225 Germany / Essen
Uhrwerk
Expert
|
Expert
Joined: Jan 2002
Posts: 4,225
Germany / Essen
|
Wenn du c_move aufrufst musst zu ja zwei vektoren übergeben. Gib dem letzten Vektor eine negative Kraft auf der Z-Achse.
Always learn from history, to be sure you make the same mistakes again...
|
|
|
Re: Player bewegt sich nur auf einer höhe
[Re: Uhrwerk]
#143004
07/24/07 13:30
07/24/07 13:30
|
Joined: Jul 2007
Posts: 288 Germany, NRW
Martek
OP
Member
|
OP
Member
Joined: Jul 2007
Posts: 288
Germany, NRW
|
Hey das klappt.
Jetzt gib es nur noch 1 Problem. Meine Figur (Guard) steckt im Boden. Gibs da noch einen Trick für?
Pingulord
3D Gamestudio A7 Extra
|
|
|
Re: Player bewegt sich nur auf einer höhe
[Re: Martek]
#143005
07/24/07 13:52
07/24/07 13:52
|
Joined: Jan 2002
Posts: 4,225 Germany / Essen
Uhrwerk
Expert
|
Expert
Joined: Jan 2002
Posts: 4,225
Germany / Essen
|
benutze die c_trace Anweisung und ermittle die Höhe Deines Players. Steckt er im Bode, dann gib ihm einen leichten Auftrieb. Ist er über dem Boden, dann gib ihm die normale Gravitation...
Always learn from history, to be sure you make the same mistakes again...
|
|
|
Re: Player bewegt sich nur auf einer höhe
[Re: Uhrwerk]
#143006
07/24/07 20:39
07/24/07 20:39
|
Joined: Jul 2007
Posts: 288 Germany, NRW
Martek
OP
Member
|
OP
Member
Joined: Jul 2007
Posts: 288
Germany, NRW
|
könntest du mir vielleicht dafür den code aufschreiben, denn mit Gravity kenne ich mich noch net so aus. Ich probier es aber trotzdem schonmal. Habe zwar keine ahnung wie ich das machen soll, aber wozu gibt es das gut alte HANDBUCH:)
Mfg, Pingulord
3D Gamestudio A7 Extra
|
|
|
Re: Player bewegt sich nur auf einer höhe
[Re: Martek]
#143007
07/24/07 21:22
07/24/07 21:22
|
Joined: Jan 2002
Posts: 4,225 Germany / Essen
Uhrwerk
Expert
|
Expert
Joined: Jan 2002
Posts: 4,225
Germany / Essen
|
Den Code aufschreiben kann ich nicht, ich hab ja keine Ahnung, was Du bisher geschrieben hast. Im wesentlichen geht das so: 1. Bestimmt mit c_trace den Abstand vom Player zum Boden. Dazu tracet tu von der Position des Players senkrecht nach unten, also zu einem Vektor der eine kleinere .z Koordinate hat. 2. Vom Ergebnis des Traces ziehst Du die Distanz zwischen Zentrum des Players und seinem tiefsten Vertex ab. 3. Ist der jetzt berechnete Wert negativ, dann ist der Player "im Boden" und du gibst ihm eine leichte "Antigravitation" wie zum Beispiel (0,0,0.1). Ist der Wert positiv, weisst Du dass dein Player "schwebt" und Du wendest die ganz normale Gravitation an.
Wenn Du Probleme hast, guck Dir einfach mal an, wie die Templates das machen...
Always learn from history, to be sure you make the same mistakes again...
|
|
|
|