Aktuelle Zeit: 23.12.2024, 05:37

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 2 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Frame, und Position Problem
BeitragVerfasst: 18.07.2009, 06:08 
Offline
Benutzeravatar

Registriert: 28.06.2007, 18:26
Beiträge: 54
Wohnort: München
Hallo,

Kurz gesagt mein Problem ist,wenn ich hohe Frame raten in irrlicht erreiche springt mein Held Plötzlich
um die 4 meter hoch, und wenn ich niedrige Frame raten erreiche springt er bloß noch 1 meter hoch.
Genauso ist es mit der Laufgeschwindigkeit. Welche Rechnung muss ich benutzen damit mein Held immer
gleich hoch springt und gleich schnell läuft.

Grüße thuglife

Code:
#pragma region Held
////////////////////////////////////////
// Bewegen                              //
////////////////////////////////////////
if(keys[KEY_KEY_W])
{
      HeroNode->setPosition(HeroNode->getPosition()+vector3df(cos(((Herodirec)*PI)/180)*Herospeed,0,
         -sin(((Herodirec)*PI)/180)*Herospeed));
}

[...]

////////////////////////////////////////
// Springen                               //
////////////////////////////////////////
if(keys[KEY_SPACE])
{
      HeroNode->setPosition(HeroNode->getPosition()+vector3df(0,4.2,0));
}

[...]

#pragma endregion

_________________
XtremBit.kilu.de
Bild


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Frame, und Position Problem
BeitragVerfasst: 19.07.2009, 15:20 
Offline
Moderator
Benutzeravatar

Registriert: 25.03.2007, 18:11
Beiträge: 834
Wohnort: Hagen, NRW
Du musst die Geschwindigkeiten noch mit der Zeit seit dem letzten Frame multiplizieren.

Code:
int fps = driver->getFPS();
float dt = 1000.0f / fps;

...

vector3df pos = HeroNode->getPosition();
pos += vector3df(0,4.2,0) * dt;
HeroNode->setPosition(pos);

_________________
Phenom X4 9950 BE | 6144MB DDR2-800 | GeForce 8800GT 512MB | Asus M3A32-MVP Deluxe | 2TB HDD | 520W Seasonic NT | Soprano Tower | Samsung 22" TFT + Fujitsu-Siemens 17" TFT + Toshiba 42" FullHD LCD | Windows 7 Proessional x64
Behind the Brain


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 2 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de