JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=2d08caae2ce70ecebd669aea00c8223dMedaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Mausruckeln

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Jonathan_Klein
Living Legend


Alter: 36
Anmeldedatum: 17.02.2003
Beiträge: 3431
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 05.02.2008, 22:30    Titel: Mausruckeln Antworten mit Zitat

Also, ich habe mein Spiel indem ich meinen Mauszeiger selber anzeige, an der aktuellen Mausposition die ich mir mit glfwGetMousePos hohle.
Nun muss ich aber feststellen, dass die Maus bei Vsync (60fps) träger reagiert als ohne VSync (~400 fps).
Die Maus ist nicht wirklich träge, aber man spürt doch einen Unterschied. Nun ist die Frage, ob das Spiel wirklich mit mehreren hundert fps laufen muss, damit die Bewegungen flüssig sind.
Kann man das Problem vielleicht sonstwie lösen? an GLFW wird es wohl nicht liegen, wenn es bei 400fps immer die richtige Position zurückgibt, wieso sollte es dann nicht mit 60fps gehen? Wenn es aber daran nicht liegt, dann müsste ich die Maus wirklich so oft aktualisieren und das Auge würde wirklich einen Unterschied zwischen 60 und 400 fps feststellen. Das allerdings wäre recht schwer, ich bräuchte entweder immer diese Framerate, oder ich müsste in einem seperaten Thread immer nur die Maus aktualisiert zeichnen.
_________________
https://jonathank.de/games/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
PeaceKiller
JLI Master


Alter: 35
Anmeldedatum: 28.11.2002
Beiträge: 970

Medaillen: Keine

BeitragVerfasst am: 06.02.2008, 00:09    Titel: Antworten mit Zitat

Ich weiß nur, dass du nie die Performance kriegen wirst, wie wenn du den Standardmauszeiger verwendest. Das wird nämlich normalerweise direkt mit dem Mausinterupt gekoppelt und zeichnet mit Realtime-Priorität den Zeiger. Am besten wäre es denke ich, wenn du es irgendwie hinkriegst den Standardzeiger zu verwenden.
_________________
»If the automobile had followed the same development cycle as the computer, a Rolls-Royce would today cost $100, get a million miles per gallon, and explode once a year, killing everyone inside.«
– Robert X. Cringely, InfoWorld magazine
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Jonathan_Klein
Living Legend


Alter: 36
Anmeldedatum: 17.02.2003
Beiträge: 3431
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 06.02.2008, 14:04    Titel: Antworten mit Zitat

Hm, jo, dann kann ich aber keine eigenen Cursor mehr verwenden, oder?
Müsste ich es halt einstellen, dass man sich aussuchen kann, was man will.
Nur könnte das u.U. schwer werden, da ich ja nur glfw benutze und plattformunabhängig bleiben will.
_________________
https://jonathank.de/games/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
DirectXer
Dark JLI'ler



Anmeldedatum: 05.02.2005
Beiträge: 1201
Wohnort: Köln
Medaillen: Keine

BeitragVerfasst am: 06.02.2008, 19:03    Titel: Antworten mit Zitat

du kannst auch die Mausposition über die Standardschnittstelle abfragen (bei win z.B. GetCursorPos()) und an dieser Stellen einfach ein texturietes Quad rendern. Das müsste schnell gehen, da du über die GraKa renderst und den direkten Mauszugriff unterstützt. Außerdem hast du so die größte Flexibilität an Optionen.

Gruß DXer
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Jonathan_Klein
Living Legend


Alter: 36
Anmeldedatum: 17.02.2003
Beiträge: 3431
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 06.02.2008, 19:45    Titel: Antworten mit Zitat

Naja, aber dennoch würde die Position ja nur 60 mal aktualisiert, weil ich nur 60 mal zeichne. Und die glfw Funktion muss doch schnell genug sein, weil ich bei 400fps eine Verbesserung spüre.
Ich muss also entweder den Standardcursor anzeigen oder in einem seperaten Thread immer den Mauscursor zeichnen (wobei das sicherlich nicht ganz einfach ist).
_________________
https://jonathank.de/games/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
PeaceKiller
JLI Master


Alter: 35
Anmeldedatum: 28.11.2002
Beiträge: 970

Medaillen: Keine

BeitragVerfasst am: 07.02.2008, 00:23    Titel: Antworten mit Zitat

Jonathan_Klein hat Folgendes geschrieben:
Ich muss also entweder den Standardcursor anzeigen oder in einem seperaten Thread immer den Mauscursor zeichnen (wobei das sicherlich nicht ganz einfach ist).


Wenn V-Sync an ist wird der doch trotzdem nur 60 mal in der Sekunden aktualisiert.
_________________
»If the automobile had followed the same development cycle as the computer, a Rolls-Royce would today cost $100, get a million miles per gallon, and explode once a year, killing everyone inside.«
– Robert X. Cringely, InfoWorld magazine
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Jonathan_Klein
Living Legend


Alter: 36
Anmeldedatum: 17.02.2003
Beiträge: 3431
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 07.02.2008, 15:40    Titel: Antworten mit Zitat

Naja, es ist ja auch ein edles Ziel, wenn man eine Framerate jenseits der 60 erreicht Very Happy
Dann läufts auch wenigstens auf älteren Rechnern, und so extrem schlimm ist das jetzt auch nicht.
_________________
https://jonathank.de/games/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum