Talaan ng mga Nilalaman:
- Hakbang 1: Mga Kagamitan
- Hakbang 2: Breadboarding
- Hakbang 3: Pag-coding ng Arduino
- Hakbang 4: Pagkakaisa
- Hakbang 5: Huling Mga Tala
Video: Simple Unity Controller: 5 Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:13
Paglalarawan
Ang proyektong ito ay isang napaka simpleng controller na maaaring magbigay ng input sa Pagkakaisa kapag pinindot ang mga pindutan ay dinisenyo ko ito upang makontrol ang isang laro na ginawa ko kung saan ang player ay maaaring makakaliwa at pakanan. Siyempre maaari mong palaging ayusin ito para sa higit pang mga kontrol. Hindi na kailangang gumamit ng anumang labis na mga aklatan.
Hakbang 1: Mga Kagamitan
Mga sangkap na kailangan
- -Arduino 2x risistor
- - [~ 220 Ohm
- -Wires
- -2x Butones
- -Breadboard
Hakbang 2: Breadboarding
Nagsimula ako sa pamamagitan ng pagkonekta sa arduino GND port sa isang negatibong (-) pin sa kaliwang bahagi ng breadboard, at ikonekta ang 5V sa isang positibo (+) sa kanang bahagi ng breadboard.
Pagkatapos nito inilagay ko ang mga pindutan sa lugar na nais kong maging. At ikinonekta ang mga ito gamit ang mga wires at resistors.
Hakbang 3: Pag-coding ng Arduino
Una sa lahat kakailanganin mong magsulat ng ilang code para sa iyo upang tumakbo ang Arduino. Naglagay ako ng mga komento sa code na nagpapaliwanag kung ano ang ginagawa nito.
// Ideklara ang mga pin na konektado ang mga pindutan.
Const int buttonPin1 = 3; Const int buttonPin2 = 4;
walang bisa ang pag-setup ()
{// Simulan ang serial Serial.begin (9600); // I-configure ang mga pin bilang output. pinMode (buttonPin1, INPUT); pinMode (buttonPin2, INPUT); }
walang bisa loop ()
{// Basahin ang estado ng pindutan kung (digitalRead (buttonPin1) == TAAS) {// i-print ang linyang ito kung ang estado ay TAAS. Serial.println ("Kaliwa"); pagkaantala (20); } kung (digitalRead (buttonPin2) == TAAS) {// i-print ang linyang ito kung ang estado ay TAAS. Serial.println ("Kanan"); pagkaantala (20); }}
Hakbang 4: Pagkakaisa
Kung wala kang handa na laro, gagana ang code na ito sa anumang gameobject sa pagkakaisa.
kung ito ang kaso kakailanganin mo ang isang gameobject upang lumipat.
Para sa kapakanan ng pagiging simple lilikha kami ng isang kubo sa pamamagitan ng pagpunta sa GameObject-> 3D Object-> Cube
sa sandaling ang kubo ay nasa iyong eksena, piliin ito at pindutin ang pindutang Idagdag ang Bahagi, at lumikha ng bagong script.
Gayundin kakailanganin mong baguhin ang antas ng pagiging tugma ng Api upang gumana ang library ng System. IO. Ports.
Upang gawin ito pumunta sa I-edit-> Mga Setting ng Proyekto-> Player
mag-scroll pababa sa menu na ito hanggang sa makita mo ang Antas ng Pagkakatugma ng Api at piliin ang. NET 2.0 sa halip na. Net 2.0 subset
Handa ka na ngayon upang simulan ang pag-coding.
gamit ang System. Collection; using System. Collection. Generic; gamit ang UnityEngine; gamit ang System. IO. Ports;
pampublikong klase PlayerMovement: MonoBehaviour
{bilis ng float ng publiko; float kilusan;
SerialPort sp = bagong SerialPort ("COM3", 9600);
walang bisa Start ()
{// Patakbuhin ang code upang buksan ang serial port OpenSerialPort (); }
walang bisa ang OpenSerialPort ()
{// Buksan ang serial port sp. Open (); sp. ReadTimeout = 1; }
walang bisa Kilusan (Direksyon ng string)
{// Suriin kung anong direksyon ang naipasa ng arduino kung (Direksyon == "Kaliwa") {movement = -1; } kung (Direksyon == "Tama") {kilusan = 1; } // kalkulahin ang halaga kung saan ililipat ang gameobject float translation = kilusan * bilis; // Ilapat ang kilusan sa transform ng gameobject. Translate (pagsasalin, 0, 0); }
walang bisa ang Pag-update ()
{if (sp. IsOpen) {subukan {// habang bukas ang serialport ay isagawa ang paggalaw ng paggalaw at ipasa ang linya na pini-print ng Arduino ang Kilusan (sp. ReadLine ()); } catch (System. Exception) {
}
}
} }
Hakbang 5: Huling Mga Tala
Suriin kung gumagana ang iyong mga sangkap
Ang isang problema na nakasalamuha ko sa paglikha ng ito ay ang lahat ng mga wire at code ay tama at dapat walang problema sa lahat, ngunit hindi ito gumagana. Sa aking kaso ito ay isang kawad na hindi gumagana, bagaman ang pareho ang maaaring mangyari sa ilan sa iyong iba pang mga bahagi.
Inirerekumendang:
Batay sa Arduino DIY Game Controller - Arduino PS2 Game Controller - Paglalaro ng Tekken Sa DIY Arduino Gamepad: 7 Mga Hakbang
Batay sa Arduino DIY Game Controller | Arduino PS2 Game Controller | Nagpe-play ng Tekken Sa DIY Arduino Gamepad: Kamusta, ang paglalaro ng mga laro ay laging masaya ngunit ang paglalaro ng iyong sariling DIY custom na laro Controller ay mas masaya. Kaya gagawa kami ng isang laro Controller gamit ang arduino pro micro sa mga itinuturo na ito
Disenyo ng isang Simple Cache Controller sa VHDL: 4 na Hakbang
Disenyo ng isang Simple Cache Controller sa VHDL: Sinusulat ko ito na itinuturo, dahil nakita kong medyo mahirap na makakuha ng ilang sanggunian na VHDL code upang malaman at simulan ang pagdidisenyo ng isang cache controller. Kaya't dinisenyo ko ang isang cache Controller aking sarili mula sa simula, at matagumpay itong nasubukan sa FPGA. Mayroon akong p
Disenyo ng isang Simple VGA Controller sa VHDL at Verilog: 5 Hakbang
Disenyo ng isang Simple VGA Controller sa VHDL at Verilog: Sa itinuturo na ito, magdidisenyo kami ng isang simpleng VGA Controller sa RTL. Ang VGA Controller ay ang digital circuit na idinisenyo upang himukin ang mga pagpapakita ng VGA. Nagbabasa ito mula sa Frame Buffer (VGA Memory) na kumakatawan sa frame na ipapakita, at bumubuo
Arduino Game Controller + Unity Game: 5 Hakbang
Arduino Game Controller + Unity Game: Sa pagtuturo na ito ipapakita ko sa iyo kung paano bumuo / magprogram ng isang arduino game controller na maaaring kumonekta sa pagkakaisa
Ang Controller ng Arduino Game Na May Mga ilaw na Tumutugon sa Iyong Laro ng Unity :: 24 Hakbang
Arduino Game Controller Sa Mga Ilaw na Tumutugon sa Iyong Laro ng Unity :: Una ay isinulat ko ang bagay na ito sa salita. Ito ang kauna-unahang pagkakataon na gumagamit ako ng itinuturo kaya't tuwing sasabihin ko: isulat ang code tulad ng nalalaman na tumutukoy ako sa imahe sa tuktok ng hakbang na iyon. Sa proyektong ito gumagamit ako ng 2 arduino ’ s upang magpatakbo ng 2 magkakahiwalay na bit