Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi DXInput nur 5 Tasten gleichzeitig?????????? (https://www.delphipraxis.net/12769-dxinput-nur-5-tasten-gleichzeitig.html)

ATwardz 3. Dez 2003 20:21


DXInput nur 5 Tasten gleichzeitig??????????
 
Hi,

habe einen Weltraumshooter(2D) in dem jeder Spieler 5 Tasten hat, für Schuss und Richtung!
Alles funktioniert peferkt bis auf die Tatsache das der Rechner piept wenn man mehr als 5 Tasten gleichzeit gedrückt hält!
da es aber vorkommt das man rechts, nach vorne fliegt und dabei schiesst und diese der Gegner auch macht muss es doch eine Möglichkeit geben das mehr als 5 Tastendrücke gleichzeitig angenommen werden!Entwedee kann einer nit mehr schiessen oder zu Seite fliegen! :cry:

Wenn dies nicht zu lösen ist, wie kann ich dann ein "DauerBinding" verhindern?


Danke @wardz!

OregonGhost 3. Dez 2003 22:04

Re: DXInput nur 5 Tasten gleichzeitig??????????
 
Eine häufig benutzte Möglichkeit ist, ein Array der virtuellen Tasten aus Boole'schen Variablen zu nehmen, und dann immer wenn eine Taste gedrückt oder losgelassen wird, den Wert zu ändern. Das ist möglicherweise dann nicht völlig synchron, aber vielleicht hilft dir das ja. Ich weiß auch nicht, inwieweit Tastatur oder Treiber als solche darauf einen Einfluss haben, denn ich kann auf meiner Tastatur eine ganze Menge Tasten drücken, ohne dass es zu piepen anfängt.

Wie greifst du über DirectInput auf die Tastatur zu, und welche DirectX-Version benutzt du?

Falls du IDirectInputDevice8::GetDeviceState verwendest, könnte das Problem vielleicht gelöst werden, indem du stattdessen IDirectInputDevice8::GetDeviceData ausprobierst.

Robert Marquardt 4. Dez 2003 06:05

Re: DXInput nur 5 Tasten gleichzeitig??????????
 
Das koennte ein Hardwarelimit der Tatatus sein.
Es nennt sich N-Key-Rollover und besagt wieviele Tasten gleichzeitig gedrueckt sein koennen auf der Tastaturmatrix.

ATwardz 4. Dez 2003 11:36

Re: DXInput nur 5 Tasten gleichzeitig??????????
 
Danke erstma für die Anwort!

Ich arbeite zur Zeit mit DXInput von DelphiX für Delphi 7!
Muss mich mich wohl selber um eine auskopplung bemühen, nicht wahr! :|

DIRECT X habe ich die neuste 9er Version!

Danke!


@wardz

maximov 4. Dez 2003 13:29

Re: DXInput nur 5 Tasten gleichzeitig??????????
 
Auf diese begrenzung meiner tastatur bin ich auch einst gestossen :wink: ...kannst nix machen, als dir ne bessere tastatur zu kaufen. evtl. eine usb fähige. Auch directX 9 directInput kann dir da nicht helfen :? , denn genau damit hab ichs gemacht.

mfg. maximom

OregonGhost 4. Dez 2003 14:51

Re: DXInput nur 5 Tasten gleichzeitig??????????
 
Ich hab' ein Microsoft Natural Keyboard Pro USB - das ist natürlich schon die gehobene Klasse :roll:
Wie gesagt, in vielen Fällen liegt es wirklich an der Tastatur. Eventuell ist auch PS/2 was das angeht etwas beschränkt, USB ist natürlich schneller / besser. Das hilft ATwardz allerdings auch nicht weiter, weil das Programm soll wahrscheinlich auch auf anderen Rechnern als seinem eigenen laufen ;c

Welche DirectX-Version du drauf hast, ist nicht wichtig, wichtig ist, welche Version dein DelphiX verwendet! Zu DirectX 9 gehört auch nur DirectInput 8. Davon abgesehen gibt es nichtsdestotrotz verschiedene Methoden, die Tastatur abzufragen, eventuell ist eine davon (buffered) günstiger als die andere (immediate).

Alternativ kannst du natürlich auch den zweiten Spieler mit Joystick oder Gamepad spielen lassen, damit fällt dein Fünf-Tasten-Program unter Umständen weg...

ATwardz 4. Dez 2003 15:09

Re: DXInput nur 5 Tasten gleichzeitig??????????
 
Tja, so etwas hatte ich irgendwie schon erwartet!

Naja, ich hatte mir nochetwas überlegt!
Wenn ich es schaffen ,irgendwie zu verhindern das ein Dauertastendrück trotzdem nur eine Aktion auslöst(zumindest bei den Schusstasten), wird der Benutzer prakrtisch zum loslassen gezwungen!

Aber wie mache ich das, hatte schoneinmal einen solchen Betrag , allerdings ohne Ergebnis! :(

http://www.delphipraxis.net/internal...ct.php?t=13283

Danke!

OregonGhost 6. Dez 2003 17:38

Re: DXInput nur 5 Tasten gleichzeitig??????????
 
Vielleicht die Frage mal auf gamedev.net stellen, da sind eine ganze Menge mehr zugegen, die sich mit solchen Themen auskennen...


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:13 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz