Hej, jag vill kunna styra mitt program med en (usb) gamepad. Jag bryr mig inte om upp och ner och åt sidan just nu, det enda jag vill åt är knapparna. Direct X har något som kallas Direct Input vilket är avsed för att ta emot signaler från joystick, gamepad, ratt, tangentbord osv. Du kan ta hem mina uppskick Jag har tittat lite på att köra via parallellporten istället, så dina exempel har jag redan tjuvkikat på men tänkte att en billig gamepad är enklare (knapparna är ju klara, ingen lödning och koppling för att provköra osv) och usb portar är flera... Oki på det, skall du köra via USB så finns det enkla VB prog som läser via MS Com. Jag skulle göra så här som första test. Hmm, tittar jag i enhetshanteraren så har gamepaden inga adresser, däremot har jag en hög med usb controllers (6st) som har olika io intervall (jag tror jag är på rätt spår?). med dess tvärkrashar vb. Hittade detta som kanske kan föra vidare. Har skrivit MSCom Skall vara MSComm Har ingen erfarenhet av detta, men gissar att det är enklast med DirectInput i DirectX när det handlar om USB-anslutna enheter. Hmm, har typ fått det att funka med directx. Men hur sjutton tolkar jag detta så jag kan göra något eget med funktionen? Lösning: Jag är väldigt intresserad av hur jag kan implementera DirectX i mina VB lösningar. Jag kan skicka över det jag har och det jag håller på med. Det är inte så mycket, men du får något att börja med i alla fall. Ska försöka få iväg det närmsta dagarna, har 2 små (väldigt snälla) illbattingar som tar massor med tid... Och nu ska jag vara på jobbet om 6 timmar :| Shit va nice, kollar lite på de nu men fixar de inte helt ut, du skulle inte kunna va super snäll och skicka de till mig med?Hur får jag gamepaden att prata med mitt program?
Låt säga att jag vill att när jag trycker på en av knapparna på gamepaden så ska label1.caption bli "hello world".
Private Sub Command1_Click()
Label1.Caption = "hello world"
End Sub
Fast det ska vara typ "GamepadButton1_Click()" istället...
Så mycket enklare kan det knappast bli, om man bara får kontakt med dosan så det blir säkert 100 rader med kod bara för det...
Sedan när det funkar kommer jag att ha ett lite kreativare användningsområde, lovar :)
Är det någon som kan ge lite tips? Jag är lite ringrostig, har inte programmerat på 1 år nu :(
/christerSv: Hur får jag gamepaden att prata med mitt program?
Sv:Hur får jag gamepaden att prata med mitt program?
Programarkivet:Parallellport experiment
och
Programarkivet:4 st SMT160-30 tempgivare på GamePorten
Läs textfilerna och kolla hur adress 513 funkar. Obs du har kanske annan adress till din GamePort.
Du hittar adressen i Enhetshanteraren.Sv: Hur får jag gamepaden att prata med mitt program?
Jag har fått för mig att det där med adresser i det exemplet är för dom "gamla" portarna och ska man prata med usb grejor så är det en annan femma. Har jag missförstått kanske?
Jag hittade ett exempel på Microsofts sida som visade det där med directx, pilarna funkade fint, men knapparna är döda. Och så var det onödigt långt och, för mig som är ringrostig, krångligt att hålla rätt på vad som gör vad. Jag har med eller mindre dammsugit nätet efter bättre exempel, men det verkar vara en lite udda grej (ärligt talat så finns det väl bättre mjukvara än vb att bygga spel i...) Och vi är väl inte så många som ser andra användningsområden än spel för gamepad.Sv:Hur får jag gamepaden att prata med mitt program?
VB är inte dåligt alls att göra spel i. Har kollat många gånger ang "speed". VB står sig mycket bra
om du kompilerar för Fast Speed. Sök på USB och MsCom seriell kommunikation.
http://www.vbaccelerator.com/home/index.asp
http://www.planet-source-code.com/
http://www.vb-helper.com/index_controls.html#tooltips
Någon har skrivit innan här i Forumet om detta USB och MSCom
Logga gärna in och berätta, Jag är också störtintresserad av USB kommunikation via VBSv: Hur får jag gamepaden att prata med mitt program?
Installera:
http://www.driverlinx.com/DownLoad/DlPortIO.htm
Anslut din GamePad USB
Gå in i Enhetshanteraren och kolla vilken adress porten har.
Läs den porten med det VB prog som medföljer.
Tryck på de 4 knapparna och se vad som händer på adressen.Sv:Hur får jag gamepaden att prata med mitt program?
Jag är dock lite på spåret med directx... men vi får se, ska prova lite till innan jag frågar, jag får för mig att jag fastnat på en grej som är enkel att lösa, bara att jag inte kommer ihåg hur man gjorde. suck.
Alternativa lösningar är alltid bra att ha, rätt var det är så är den andra bättre... just nu är nog enklast bäst :)Sv: Hur får jag gamepaden att prata med mitt program?
http://www.pellesoft.se/communicate/forum/view.aspx?msgid=229045
Är själv väldigt intresserad av att få koll på detta.
Johan Djupmark verkar initsierad han kanske loggar in på denna fråga.Sv:Hur får jag gamepaden att prata med mitt program?
/JohanSv: Hur får jag gamepaden att prata med mitt program?
Det är denna del som fixar knapptryckandet:
For i = 0 To joyCaps.lButtons - 1
Select Case js.buttons(i)
Case 0
lstButton.List(i) = "Button " + CStr(i + 1) + ": av"
Case Else
lstButton.List(i) = "Button " + CStr(i + 1) + ": Down"
End Select
tidigare så säger man:
Dim joyCaps As DIDEVCAPS
Dim js As DIJOYSTATE
lstbutton är en listbox
Jag tror det ska räcka för er att förstå hur det funkar... När man trycker på knapp 1 (osv) så står det "down" bredvid "button 1" i listan, annars står det "av" på alla.
När jag trycker på knapp 1 så vill jag utföra: Label1.Caption = Label1.Caption + 1
Trycker jag knapp 2 så Label2.Caption = Label1.Caption + 1
osvSv: Hur får jag gamepaden att prata med mitt program?
under case else
If js.buttons(0) Then
Label1.Caption = Label1.Caption + 1
End If
Jag vågar inte tala om hur många timmar den raden tog... :(Sv:Hur får jag gamepaden att prata med mitt program?
Särskilt USB i/o hantering skall bli mitt nästa intresseområde.
Håller med om att parallellport lösningar börjar bli "dammiga"
Är fullständigt nollad i ämnet. Skulle vara intressant att få se ett fungerande enkelt exempel.
Litteraturhänvisning mm.Sv: Hur får jag gamepaden att prata med mitt program?
Det skulle vara intressant att se en lika bra förklaringar på detta som du gjort på parallellportslösning :)Sv:Hur får jag gamepaden att prata med mitt program?
Är i stort behov av detta, ska ha min MS sidewider game voice, till mitt radio program, perfekt att klicka igång låtarna med när man sitter i studion.
Så jag ska bygga så att när jag trycker på knapp1 så blir de typ "p" som är Play i radio programmet.
har jagat HELA F*cking nätet efter nån lösning men men, så får bygga nått själv :)
Detta verkar ju SUPER :)
// Pudeln - KarlstadRocks 92.2FM