Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Sören JLI Master Trainee
Anmeldedatum: 26.07.2002 Beiträge: 647 Wohnort: Bonn Medaillen: Keine
|
Verfasst am: 31.10.2003, 18:29 Titel: DX9: Flüssiges mit Maus-Umsehen |
|
|
Hi,
ich habe mal probiert einen "Gucken mit Maus" Modus in mein Projekt zu integrieren:
Code: | // Drehnung nach links und rechts
if(MInput.ix)
{
if(MInput.ix > 0)
m_fRotAngleY += m_fTurnSpeed / Framerate;
if(MInput.ix < 0)
m_fRotAngleY -= m_fTurnSpeed / Framerate;
}
if(MInput.iy)
{
if(MInput.iy > 0)
m_fRotAngleX -= m_fTurnSpeed / Framerate;
if(MInput.iy < 0)
m_fRotAngleX += m_fTurnSpeed / Framerate;
} |
Leider läuft das ganze überhaupt nicht wie es soll. Zwar kann man sich mit der Mouse umgucken, doch ist die Bewegung ziemlich ruckelig. Man spürt ziemlich hakelig die Kanten der Bewegung raus.
Benutzen tue ich DirectInput(der Code der Input Klasse entspricht etwa der aus dem Buch->Polling).
Sollte im Code nichts verdächtiges auftauchen kann ich ihn gerne hochladen/verschicken. |
|
Nach oben |
|
|
Fallen JLI MVP
Alter: 40 Anmeldedatum: 08.03.2003 Beiträge: 2860 Wohnort: Münster Medaillen: 1 (mehr...)
|
Verfasst am: 31.10.2003, 20:40 Titel: |
|
|
Teile (oder besser multipliziere) deine += und -= mit einer andere Variable die angibt wie sanft das ganze sein soll. Am besten errechnest du die Zahl aus der grad gemachten Mausbewegung. Ich glaub so wird das Maussmoothing in spielen gemacht. _________________ "I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse." |
|
Nach oben |
|
|
Chewie Super JLI'ler
Anmeldedatum: 17.07.2003 Beiträge: 382
Medaillen: Keine
|
Verfasst am: 09.11.2003, 01:57 Titel: |
|
|
Kannst du das mal näher erklären? Ich steh grad vor demselben Problem... |
|
Nach oben |
|
|
Fallen JLI MVP
Alter: 40 Anmeldedatum: 08.03.2003 Beiträge: 2860 Wohnort: Münster Medaillen: 1 (mehr...)
|
Verfasst am: 10.11.2003, 12:08 Titel: |
|
|
Ich glaub das müsste so ungefähr funktionieren:
Code: | abweichung.x=neu.x-alt.x;
abweichung.y=neu.y-alt.y;
abweichung/=weichfaktor; |
Den Framefaktor brauchst du nicht bei der Berechnung.
Dann solltest du noch einen Faktor mit einbeziehen fals du nicht mit den 90 Grad Blickwinkel schaust. _________________ "I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse." |
|
Nach oben |
|
|
|