|
Das liegt daran, daß einmal pro Frame die Steuerungsdaten aktualisiert werden. Wenn der zugewiesene Controller per DirectInput die Info liefet, welche Buttons aktuell gedrückt sind und der, auf den die Handbremse gemappt ist, nicht dabei ist, wird automatisch auf "nicht gebremst" zurückgeschaltet. Wenn das Fenster des Spiels inaktiv ist (dürfte nur im Vollbild der Fall sein, wenn per Alt-Tab rausgewechselt wurde), dann gibt es in der Zeit keine Frameupdates, also keine Physik, kein Rendering und kein Steuerungsupdate. Deshalb wird in dem Fall der Wert nicht überschrieben, bis das Fenster wieder aktiviert wird.
Deine einzige Chance dürfte sein, dich irgendwie zwischen DirectInput und das Spiel zu hängen (so wie z.B. Fraps das mit D3D macht) und dort die Steuerungsdaten bei jeder Abfrage vom Spiel direkt angepaßt zu übergeben.
|