Satura rādītājs:

Bezvadu 4 spēlētāju ģimenes spēļu kontrolieris: 3 soļi
Bezvadu 4 spēlētāju ģimenes spēļu kontrolieris: 3 soļi

Video: Bezvadu 4 spēlētāju ģimenes spēļu kontrolieris: 3 soļi

Video: Bezvadu 4 spēlētāju ģimenes spēļu kontrolieris: 3 soļi
Video: LAST DAY ON EARTH SURVIVAL FROM START PREPPING LIVE 2024, Novembris
Anonim
Bezvadu 4 spēlētāju ģimenes spēļu kontrolieris
Bezvadu 4 spēlētāju ģimenes spēļu kontrolieris
Bezvadu 4 spēlētāju ģimenes spēļu kontrolieris
Bezvadu 4 spēlētāju ģimenes spēļu kontrolieris
Bezvadu 4 spēlētāju ģimenes spēļu kontrolieris
Bezvadu 4 spēlētāju ģimenes spēļu kontrolieris

Šis ir bezvadu arkādes stila kontrolieris, ar kuru vienlaikus var spēlēt 4 cilvēki. Tas ir bezvadu, lai jums nebūtu jāpiesaista dators pie kontroliera, ko izmanto 5 gadus veci bērni. Viņi visu laiku krīt, un es nevēlos, lai tie iznīcinātu visas manas rotaļlietas, kad tie neizbēgami ceļo pa vadu. Nesen mēs iegādājāmies jaunu datora monitoru, un tas bija īpaši izturīgā kastē ar patiešām blīvu putupolistirolu. Kā kaut kas no sitcom, es nepārtraukti strīdējos ar sievu par kastes glabāšanu. Man tas šķita ubagošana, lai to pārvērstu par kaut ko, turpretī viņai tas bija neglīts atkritums. Pēc tam Instructables vadīja ātruma konkursu, kura pamatā bija kartons. Un tā pēcpusdienā strīds tika atrisināts un šis projekts piedzima.

Mēs izmantojām izredžu galus, kas bija ap māju, lai iedzīvinātu projektu. Ideja bija tikai izmantot to, kas mums jau bija sēžot, lai paveiktu kaut ko foršu - par laimi, mums bija pasāžu pogu komplekts un aveņu pi, ko iegādājāmies pirms daudziem gadiem, lai izveidotu arkādes skapi. Griešanai mēs izmantojām zāģi un manu uzticamo veco kabatas nazi.

Piegādes

1. Kartona kaste2. Putupolistirola vai cita blīva pildviela 3. Arkādes pogas no Ali Express vai Amazon 4. Raspberry Pi 3B + 5. Kāds cits dators + ekrāns. 6. Nazis vai kaut kas, lai izgrieztu caurumus kartonā 7. Maskēšanas lente8. Pūšamā krāsa

1. solis: būvniecība

Būvniecība
Būvniecība
Būvniecība
Būvniecība
Būvniecība
Būvniecība

Mēs ātri sastādījām skici, kā mēs gribējām, lai lieta izskatās, pēc tam ar nazi un koka zāģi sagriezām kartonu un putupolistirolu pareizajā izmērā. Mēs atzīmējām kartonu ar labu pogu/kursorsviru izkārtojumu un uzmanīgi izgriezām caurumus ar nazi. Tas bija lielisks vingrinājums bērniem matemātikas pamatos. Kad karbons tika sagriezts, mēs to krāsojām un pēc tam ievietojām visas pogas. Galvenais interesants, ko mēs darījām, bija kontroliera augšpusē pielīmēt trīs kartona slāņus, lai tas būtu stingrāks. Tas nedaudz apgrūtināja izgriešanu, bet lieliski darbojās, lai virsma būtu gandrīz tikpat cieta kā koks.

Raspberry Pi 3B+ ir četri USB porti. Mums ir četru un četru arkādes pogu komplektu ģimene! Tā bija predestinācija.

2. solis: programmēšana

Programmēšana
Programmēšana
Programmēšana
Programmēšana
Programmēšana
Programmēšana
Programmēšana
Programmēšana

Šī projekta kods ir vienkāršs un kļūdains. To visu var atrast šeit:

4 kontrolieri ir savienoti, izmantojot USB, ar aveņu pi. Vietnē Raspberry pi darbojas neliels pitona skripts. Es izmantoju Python ievades bibliotēku, lai iegūtu signālus no pogām un kursorsvirām. Pēc tam programma pārveido signālu par īsu ASCII kodu un nosūta to, izmantojot TCP ligzdu, izmantojot wifi, uz datoru, kurā darbojas spēle (es to dēvēšu par spēļu serveri). Piemēram, kad spēlētājs 0 pārvieto kursorsviru pa kreisi, rakstzīmes “0XL” tiek nosūtītas pa TCP ligzdu uz spēļu serveri. Pārbaudei es savā Thinkpad vadīju SuperTuxKart. Neliela servera lietojumprogramma darbojas Thinkpad un klausās TCP ligzdā. Kodi, kas nāk no aveņu pi, izmantojot wifi, tiek pārvērsti tastatūras pogu nospiešanā, izmantojot pyautogui bibliotēku. Tātad, kad spēlētājs 0 uz kartona kontrollera pārvieto kursorsviru pa kreisi un kontrolieris izstaro “OXL”, serveris, kurā darbojas spēle, domā, ka spēlētājs nospiež tastatūras pogu “1”. Spēle ir jākonfigurē, lai atpazītu šos tastatūras spiedienus, kā parādīts opciju ekrānā. Šī spēle darbojas labi ar vienu vai diviem spēlētājiem, bet, kad 4 cilvēki agresīvi spēlē SuperTuxKart, serverim sāk trūkt datu no kontroliera. Es neesmu pārliecināts, vai tā ir kļūda: 1. Klienta (kontroliera) pusē2. Servera (Thinkpad) pusē 3. Iebūvēta Linux funkcionalitāte. Varbūt mans Ubuntu klēpjdators nevar atpazīt lielu skaitu vienlaicīgu taustiņu nospiešanu. Tātad, ja spēlētājs 0, 1 un 2 stūrē uz augšu un pa kreisi, tas nozīmē, ka vienlaikus tiek nospiestas 2 * 3 = 6 pogas. Es neesmu pārliecināts, vai mans dators (vai jebkurš dators) ir paredzēts tā apstrādei. Parasti karstie taustiņi ir 3 vai mazāk pogas, piem. CTRL + ALT + DEL. Nākotnē es mēģināšu ieslēgt 4 tcp ligzdas, pa vienam katram kontrolierim, un pēc tam servera pusē izveidot virtuālu spēļu paliktni. Vēl nav bijis laika, lai uzzinātu, kā to izdarīt, starp audzināšanu, darbu un kartona kārbu sagriešanu.

3. solis: nākotne

Tas bija vienkāršs koncepcijas pierādījums. Nākotnē kodam jābūt labākam. Es gribētu kodēt savienojumu kā Bluetooth HID ierīci, bet bluez5 operētājsistēmā Linux ir nedaudz laika, lai strādātu - tāpēc es devos ar TCP ligzdu + Python. Arī - pieņemsim to - kontrolieris izskatās kā heck. Ar vairāk laika es ieguldītu nedaudz vairāk enerģijas rūpīgākā griešanā. Tad es liktu vairāk balstu -kastes malas sāk nedaudz deformēties. Lai arī kas tas ir un cik tas maksā, šī lieta izskatās pietiekami labi. Es turpināšu pieķerties, kamēr vakarā skatīsimies filmas.

Ieteicams: