[VB2005] USB-gamepads gebruiken

Pagina: 1
Acties:

  • Dirickteur
  • Registratie: Januari 2003
  • Laatst online: 18:04
Hallo allemaal,

Voor een projectje ben ik bezig een spelletje te schrijven in Microsoft Visual Basic 2005. Ik ben niet zo'n programmeerheld, dus heel snel gaat het niet, maar ik heb al een aardig resultaat.

Echter, het spelletje is bedoeld voor twee players en ze hebben zes knopjes pp nodig. Ik heb hier twee oude USB-gamepads liggen van Logitech waarvan ik dacht dat het wel leuk zou zijn om die te laten werken als controls in plaats van met twee man achter een toetsenbord.

Helaas heb ik nog nooit eerder iets met USB gedaan, maja, eens moet de eerste keer zijn (en dat is nu dus). Ik heb geprobeerd te zoeken met google en op got, maar ik kom niet echt tot goede resultaten (wellicht omdat USB al veel rare hits geeft).

Ik had gehoopt dat een van jullie mij hiermee een beginnetje kan geven om de knoppen van dit simpele gamepad uit te lezen in VB. Het lijkt me dat het niet al te moeilijk moet zijn voor een beginner, maar vooralsnog kom ik niet zo ver. Ik heb ook niet echt een idee waar ik moet beginnen.

Alvast bedankt!

  • Infinitive
  • Registratie: Maart 2001
  • Laatst online: 25-09-2023
De manier om dit te doen is via Direct Input... en dat kan dus best lastig zijn voor een beginnende programmeur. Het is mogelijk om DirectX aan te spreken vanuit .Net, dus ook via visual basic. Het kost wel wat moeite.

Een uitleg voor joysticks i.c.m. met DirectX in C++ staat hier uitgelegd:
http://msdn.microsoft.com...utorial3usingjoystick.asp

Hoe dit zich vertaald naar de DirectX implementatie binnen .Net kan ik je niet zeggen, mijn eigen ervaring is dat dit vrij recht-toe-recht-aan is.

[ Voor 6% gewijzigd door Infinitive op 05-04-2006 13:19 ]

putStr $ map (x -> chr $ round $ 21/2 * x^3 - 92 * x^2 + 503/2 * x - 105) [1..4]


  • Not Pingu
  • Registratie: November 2001
  • Laatst online: 30-01 15:48

Not Pingu

Dumbass ex machina

Er zijn hiervoor een aantal webcasts beschikbaar op MSDN, zie Video Game Development: Learn to Write C# the Fun Way. Je moet wel met je Passport account registreren voor de webcasts en allerlei irritante zut doorlopen, maar je kunt ze daarna gewoon downloaden.

Hierin worden alle onderdelen van DirectX behandeld, zoals Direct3D, DirectDraw, DirectSound en DirectInput. Het is flink wat kost om door te werken, maar je kunt nu eenmaal niet verwachten dit soort dingen in hapklare brokken op een presenteerblaadje te krijgen.

Certified smart block developer op de agile darkchain stack. PM voor info.


  • Aram
  • Registratie: Februari 2004
  • Laatst online: 14-08-2025
Hier vind je kant en klare code met goede uitleg over het gebruik van DirectInput in .NET: http://msdn.microsoft.com...t/beginning4/default.aspx

  • Dirickteur
  • Registratie: Januari 2003
  • Laatst online: 18:04
In de DirectX SDK staan vele voorbeelden voor C#, C++, VB voor hele diverse dingetjes. Zo ook het uitlezen van een gamepad/joystick! Het werkt bij mij nu goed :)

Hartstikke bedankt voor de reacties!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 16:11

.oisyn

Moderator Devschuur®

Demotivational Speaker

Je gaat de fout in door te denken dat het een USB iets is, dat is niet zo. Je hebt gewoon een joystick/gamepad, en of die nou via USB is aangesloten of via een game controller (op je geluidskaart zit er meestal een) doet er weinig toe :). "Iets met USB doen" is dan ook alleen relevant als je een driver voor een bepaald USB device aan het maken bent.

Maar goed, DirectInput dus zoals gezegd, hoewel je waarschijnlijk ook wel wegkomt met de simpelere (hoewel ik niet weet of dat ook voor VB geldt) joystick functies van de win32 API.

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.

Pagina: 1