News Teil-Lösung für Mouse-Lag in Windows 8.1

Raw Input dafür zu nutzen ist ungefähr 100x aufwendiger als einfach direkt die Cursor Position abzufragen.
Die Tuturials dafür kann man teils auch an einer Hand abzählen (hab für C# kein einziges funktionierendes gefunden).
Wundert mich nicht dass das manchen Leuten zu blöd ist.
 
Software Entwickler sind allesamt Pfeifen. Vielleicht sollten die Unternehmen aufhören alles nach China und Indien auszulagern, die haben es einfach nicht drauf.
 
@eXEC-XTX da hast du natürlich vollkommen recht. Funktionieren müsste es eben trotzdem
 
Konnte bisher keine Mouselags feststellen (Win 8.1 Pro). Liegt vielleicht daran das ich eine saubere Installation gemacht habe (vorher Win7).
 
dowant120hz schrieb:
Raw Input dafür zu nutzen ist ungefähr 100x aufwendiger als einfach direkt die Cursor Position abzufragen.
Die Tuturials dafür kann man teils auch an einer Hand abzählen (hab für C# kein einziges funktionierendes gefunden).
Wundert mich nicht dass das manchen Leuten zu blöd ist.

Raw Input kommuniziert ja auch direkt mit der Peripherie. Ums einfacher zu gestalten gibt's ja z.B. DirectInput oder auch andere empfohlene Methoden.
 
Zuletzt bearbeitet:
Moment, der Fehler liegt nicht bei Microsoft, sondern bei den Spieleherstellern und den Hardwareherstellern der Mäuse. Microsoft Mäuse weisen diesen Lag nämlich nicht auf...
 
Kassenwart schrieb:
Ich bin selbst Softwareentwickler und habe vor 6 Jahren schon im Studium gelernt das man Direct Input verwenden soll. Microsoft empfiehlt das schon seid fast 10 Jahren.

Na super, wenn alle Softwareentwickler auf so einen alten Stand sind. Kein Wunder.

Direct Input ist schon lange obsolete.

Microsoft empfiehlt die Message Loop für Tastatur und Maus und XInput für andere HArdware.
 
MountWalker schrieb:
Weil kein Mensch bei Microsoft geahnt hat, dass einige (nicht alle!) Spiele für die Maussteuerung die Mauszeigerpositionierung des Windows-Desktops verwenden, anstatt z.B. DirectInput zu benutzen.
gutiSTAR schrieb:
Man kann nicht jedes mögliche Szenario vor dem Release testen.
Stimmt. Spiele auf dem PC... pff... das ist ja Neuland! Sowas kann man nicht einfach berücksichtigen bei der Entwicklung eines Betriebssystems, das eh kein vernünftiger Mensch nutzt. :rolleyes:
 
BlooDFreeZe schrieb:
..
Richtig, es liegt einfach daran, dass man sowas nicht testen muss. Du verwendest ja auch nicht z.B. UDP und wunderst dich dann, dass Pakete nicht ankommen bzw. testest darauf. Das ist halt nun mal keine Eigenschaft oder Szenario auf das es ausgelegt ist. Da hätte man anständig lesen sollen und TCP verwenden sollen (mal als Trivialbeispiel). Gleiches gilt für diesen Fall. Es gibt nicht umsonst einige verschiedene Methoden um via API auf die Maus zuzugreifen.

Was verstehst du unter "testen muss"?
MS muss gar nichts testen theoretisch können die den code compilieren und zum download stellen ohne ihn je ausgeführt zu haben!
Das es für MS Image nicht sehr klug wäre ist ne andere Sache und genauso ist es hier. Microsoft sollte aus Eigeninteresse (nicht aus user interesse!) sicher stellen das häufig genutzte Anwendungen weiter funktionieren und wenn nicht sich dann an den Entwickler wenden.

Dein TCP/UDP Beispiel verstehe ich in dem Zusammenhang nicht der user ansich macht ja hier nichts falsch.
Was soll der Nutzer denn anders machen? Statt Maus nen controller verwenden löst das Problem nicht.
 
"testen muss" um die Qualität der Schnittstelle auf einem gewissen Niveau zu halten. Es müssen bestimmte Garantien gegeben sein und das ganze muss stabil laufen.
Aber es ist da nicht die Aufgabe zu kontrollieren, ob Entwickler, die die Schnittstelle verwenden, diese im richtigen Kontext verwenden. Man muss natürlich kommunizieren, was denn für welchen Kontext geeignet ist. Das wurde auch gemacht.

Wegen dem Beispiel: Wenn du Daten übertragen willst geht's du nicht hin und sagst: ich nehm einfach UDP, hab gehört da werden Daten übertragen. Dann wundert man sich, warum das Programm nicht funktioniert, weil UDP einfach die falsche Wahl war und man das vorher hätte wissen können. Das gleiche gilt für die Wahl des Mausinputs. Hab nur versucht es mit etwas zu vergleichen =) Mit dem User hat das nichts zu tun.
 
Zuletzt bearbeitet:
terraconz schrieb:
@wertzuiop123:
Es ist völlig egal welchen Schuld es ist es ging um die Testmethodik!

Nein ist es nicht. Die Entwickler haben sich an Standards zu halten, dafür gibt es diese.
 
wertzuiop123 schrieb:
Ich zitiere von woanders: "Aber du weißt schon, dass das hier überhaupt kein Patzer ist eigtl., oder? Das Problem kommt dadurch zustande, dass die Entwickler der im Artikel genannten Spiele (und einiger weiterer) eine Methode nutzen, um die Mauseingaben abzufragen, die für die Verwendung in 3D-Spielen überhaupt nicht vorgesehen ist, was Microsoft schon seit vielen Jahren auch genau so kommuniziert und davon abrät. Jetzt hat Microsoft für Windows 8.1 Optimierungen daran vorgenommen, die bei dem eigtl. Zweck, der Mauszeigerverarbeitung auf dem Windows-Desktop, keine nachteiligen Effekte hat. Die Entwickler sind selbst schuld, wenn sie APIs nicht bestimmungsgemäß verwenden und es ihnen dann irgendwann um die Ohren fliegt. Es gibt viele auch zum Teil uralte Spiele, die die richtigen Funktionen für die Eingabe nutzen und es ist auch gar kein Mehraufwand, diese zu implementieren statt die falschen."
Und das ist für MS jetzt ein Grund alte Spiele die keinen Support mehr bekommen einfach auszuschließen?
MS war sich der Problematik offensichtlich bewusst. Aber warum hat man keinen Kompatibilitätsmodus integriert und vielleicht soagr eine Datenbank mit Spielen wo das Problem bekannt ist, ähnlich dem Application Compitability Toolkit?

Verschwörungstheorie: MS will den PC in Sachen Bedienung zumindest bei Spielen auf XBox-Niveau downgraden um seine Konsole zu pushen. :D

Hans_Hinterseer schrieb:
Microsoft Mäuse weisen diesen Lag nämlich nicht auf...
Dann würde mich das Problem dank meiner Intelli Mouse Explorer 3.0 gar nicht betreffen. :D
 
Aber warum hat man keinen Kompatibilitätsmodus

Wie lange soll man den Kompatibel sein ? 10 Jahre 20 Jahre ? Und dann wundert man sich warum Windows so ist wie es
ist :rolleyes:

Microsoft kann ja gar nichts innovatives schaffen weil man ja noch kompatibel sein muss.

Apple macht es richtig, da laufen die neusten Versionen erst gar nicht auf alter Hardware.
 
Mensch Leute, zum tausendsten mal: Mit DirectInput ist eine absolut saubere Maussteuerung unter Windows möglich ohne die Mauszeigerpositionierung des Desktops dafür zu verwenden und zwar schon so lange, wie es Ego-Shooter gibt. Für diesen Fehler gehören daher auch die betroffenen Spieleentwickler abgestraft und nicht Microsoft.

@ terraconz

Niemand verlangt hier etwas vom Spieler, hier wird vom Spieleentwickler verlangt, für eine Mausfadenkreuzsteuerung in einem Spiel auch eine API zu verwenden, die genau dafür gedacht ist, die es seit zwanzig Jahren gibt und nicht die Zeigerpositionierung einer Desktop-Umgebung. Warum das für ein OS wichtig ist? Eben damit die Zeigersteuerung auf dem Desktop nicht künstlich dadurch behindert wird, dass sie entfremdete Zwecke genauso gut erfüllen soll, wie das, wofür sie da ist.

P.S.
Auch auf anderen betriebssystemen gibt es für diesen Einsatzzweck andere Techniken, als die Zeigerpositionierung von X11 - ich glaube kaum, dass auch nur ein einziger Wayland-Tester testet, ob nach dem Wechsel von X11 auf Wayland irgendwelche egal wie beliebten Egoshooter noch vernünftig funktionieren.
 
Zuletzt bearbeitet:
Zurück
Oben