Frage

In einer verwandten Frage fragte ich, wie man über IUP Eingaben erhält. Dies funktioniert einwandfrei, außer dass es das System durchläuft und der Wiederholungsrate unterliegt, die für ein Spiel nicht optimal ist. Was ich wirklich möchte, ist die Fähigkeit, den aktuellen Zustand eines Schlüssels zu einem bestimmten Zeitpunkt zu erhalten. Gibt es eine Möglichkeit, dies zu tun (durch IUP oder auf andere Weise)?

War es hilfreich?

Lösung

Sie müssen wahrscheinlich auch Anrufe an die entsprechende Win32 -API, DirectX oder was auch immer in einem LUA -Modul einwickeln. Wenn Sie wichtige Schlaganfallereignisse in der IUP erfassen, müssen Sie über den "normalen" Windows -Nachrichtenmechanismus an das Fenster oder die Steuerung geliefert werden und ist wahrscheinlich nicht der beste Ansatz in einem Spiel -Framework.

Sie können ein IUP -Timer -Objekt verwenden, um eine Neubildung nach einem Zeitplan auszuführen, aber Sie benötigen immer noch eine Möglichkeit, den Tastaturzustand zu sammeln. Wenn Sie ein Gamepad, Joystick oder einen anderen Versteck als Tastatur und Maus verwenden möchten, hilft IUP auf keinen Fall direkt.

Dies kann leicht mit einer kleinen Menge C -Code erfolgen, die an eine DLL zusammengestellt ist.

Es kann ziemlich leicht mit SCHLUCK, für einige Arten von API. Andere erledigen genug Setup-/Tränenarbeiten, damit es einfacher ist, die Verpackung einfach zu handeln.

Es gibt auch die Außerirdischer Modul für LuA, das direkte Anrufe in willkürliche APIs von reinem Lua ermöglicht. Alien ist als Teil von enthalten Lua für Windows, sowie über seine Projektseite bei Luaforge. Alien selbst ist über Plattformen hinweg sogar etwas tragbar, obwohl Sie nichts damit anrufen würden.

Etwas anderes, das Sie ansehen sollten, wenn Sie diesen Weg verfolgen, ist eine oder mehrere der vorhandenen Spielmotoren. Normalerweise verbergen diese die Ereignisschleife im Motor (wie IUP), sind jedoch eher für das Spielerbau als für Desktop -Anwendungen optimiert.

Es gibt eine Nummer da draußen, von der ich Gerüchte auf der Lua -Mailingliste gehört habe. Eine, die mir in den Sinn kommt, weil es ziemlich oft erwähnt wurde LIEBE.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top