Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Fr Jul 18, 2025 08:54

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 8 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Mausbewegung
BeitragVerfasst: Di Apr 19, 2005 19:46 
Offline
DGL Member

Registriert: Sa Mär 20, 2004 22:48
Beiträge: 104
Ich frage derzeit die Position des Mauscursors mit der OnMouseMove-Funktion ab. Es klappt ja alles ganz gut, bis auf das Ruckeln, was fast immer auftritt, denn die MouseMove-Funktion ist anscheinend nicht die schnellste. Ich würde gerne zu einer Alternative wechseln, hab' aber keine Ahnung. Kann mir jemand helfen?

Mfg, Gran

_________________
Der Bump Mapping User ist nur zu faul, selbst eine Wand mit Tesselation zu erstellen ;-)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Apr 19, 2005 19:57 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 14, 2004 18:56
Beiträge: 804
Wohnort: GER/OBB/TÖL-WOR/Greiling
es gibt ein objekt namens "Mouse". und von diesem kannst du, wann immer du lustig bist, die attribute - in deinem fall den TPoint cursorpos - abfragen.

objektorientierte programmierung ist schön, nicht? :D *grins*

_________________
Bild

"User Error. Replace User and hit Continue."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Apr 19, 2005 21:36 
Offline
DGL Member

Registriert: Mi Dez 15, 2004 20:36
Beiträge: 454
Wohnort: Wien, Österreich
Zitat:
Ich frage derzeit die Position des Mauscursors mit der OnMouseMove-Funktion ab.

Nur das? Denn es dürfte deswegen nicht ruckeln. Was machst du da sonst? Code bitte...

_________________
"Meine Mutter sagt : 'Dumm ist der, der Dummes tut'." - Forrest Gump


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Apr 20, 2005 12:57 
Offline
DGL Member

Registriert: Sa Mär 20, 2004 22:48
Beiträge: 104
...naja, Code kann ich leider nicht (oder wenn, dann sehr umständlich und auch nur wenn unbedingt nötig) posten, aber luketheduke's Post hat mir leider nicht weitergeholfen (trotzdem danke!!), obwohl ich auf seine Methode umgestiegen bin. Es ruckelt leider immer noch, ich beschreibe mal, was so alles passiert bis zur Translation: Die Werte werden dividiert (double Variable) und der errechnete Wert direkt an glTranslate übergeben. Das Seltsame ist, dass es auch nur gelegentlich ruckelt, also erst geht es super flüssig, und plötzlich nur noch so 20 - 30 MMPS (MouseMoves per Second :D), die FPS-Zahl ist aber weit darüber. Dann, nach einiger Zeit läuft es wieder flüssig und so weiter.

Mfg, Gran

_________________
Der Bump Mapping User ist nur zu faul, selbst eine Wand mit Tesselation zu erstellen ;-)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Apr 20, 2005 13:17 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Kann es vielleicht sein, dass deine Berechnung nicht so ganz funktioniert? Wenn du bei der Berechnung der Maus etwas verkehrt macht, dann kann es mitunter so aussehen als ob es ruckelt obwohl nur die Berechnung falsch ist.

MouseMove lediglich nur ein Aufruf einer ziemlich leeren Methoden und das ist sehr sehr schnell. Daran liegt es 100%tig nicht.

Das was du in dem MouseMove allerdings lediglich machen darfst ist deine Berechnungen durchführen und die Werte dann in Variablen schreiben. Auf diese Variablen greifst du dann in deiner Renderschleife zu. Wenn du das so gemacht hast, dann liegt der Fehler noch wo anderes und dann musst du Code raus rücken. Anderfalls können wir dir nicht helfen!

Was du noch bedenken solltest. Wenn du im OnIdle renderst und dort sehr viel zu tun hast, dann werden für den Zeitraum des Renderns keine anderen Windowsbotschaften verarbeitet. Also auch kein OnMouseMove. Evtl hängt es ja auch mit so etwas zusammen. Aber ohne Code können wir nur Raten! Und dafür ist mir meine Zeit zu schade. ;-)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Apr 20, 2005 19:18 
Offline
DGL Member

Registriert: Sa Mär 20, 2004 22:48
Beiträge: 104
wer denkt denn an sowas: Batterien der Maus schwach. Habe die Batterien jetzt ausgetauscht, läuft flüssig :)
Habe aber jetzt ein anderes, naja, Problem kann man nicht sagen, aber es ist sehr unschön auf diese Weise: Obwohl meine Anwendung 2 dimensional ist, rendere ich nicht im Ortogonal Modus. Dementsprechend rendere ich auch das Fadenkreuz nicht im Orto Modus, weil ich denke, dass ich da später mit der Abfrage des Winkels zum Fadenkreuz (Sinus und das ganze Zeugs) bekomme, da es ja zwei verschiedene Arten von Koordinaten gibt auf diese Weise. Also rendere ich mein Fadenkreuz auf der gleichen Ebene (ok, ein klein wenig darüber, damit es alles überblendet), habe jetzt aber kleinere Probs bei der Umrechnung der Mauskoordinaten in die Position des Fadenkreuzes. Wie erwähnt, ist es 10 Einheiten vom Screen entfernt, und ich habe keine Ahnung, wie ich das rechnerisch hinbekomme, dass mein Fadenkreuz ganz rechts ist, wenn der Cursor am rechten Bildschirmrand ist.

Mfg, Gran

_________________
Der Bump Mapping User ist nur zu faul, selbst eine Wand mit Tesselation zu erstellen ;-)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 21, 2005 09:36 
Offline
Ernährungsberater
Benutzeravatar

Registriert: Sa Jan 01, 2005 17:11
Beiträge: 2068
Programmiersprache: C++
Dafür gibt es GLU(Un)Projekt.
Damit kannst du die passenden Koordinaten herausfinden.
Tutorial dafür gibt es auch auf Sulaco und hier im Forum.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Apr 23, 2005 09:20 
Offline
DGL Member

Registriert: Sa Mär 20, 2004 22:48
Beiträge: 104
ok, danke an alle, die in diesem Thread was gepostet haben, habe mein Problem jetzt gelöst :)

Mfg, Gran

_________________
Der Bump Mapping User ist nur zu faul, selbst eine Wand mit Tesselation zu erstellen ;-)


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 8 Beiträge ] 
Foren-Übersicht » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste


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:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 16 Queries | GZIP : On ]