Obsah:

Tylt: 6 krokov
Tylt: 6 krokov

Video: Tylt: 6 krokov

Video: Tylt: 6 krokov
Video: Карлсен Уничтожил Всех! Norway Chess 2017. Блиц Шахматы 2024, November
Anonim
Tylt
Tylt
Tylt
Tylt
Tylt
Tylt

Popis projektu: Vytvorenie pohybového ovládača, ktorý dokáže prenášať údaje tam a späť z dosky arduino do vývojového enginu hry Unity 5. V tomto prípade používame trojosový akcelerometer (Adxl345) na ovládanie polohy X a Y herných objektov vo vnútri enginu Unity. Akcelerometer a arduino sú zostavené do obdĺžnikového boxu, aby vytvorili pohodlný a užívateľsky prívetivý ovládač.

Materiály:

Akcelerometer

Lepidlo

Doska Arduino Základné schopnosti spájkovania

BreadboardLaser Cutter (pásová píla by tiež fungovala, ale nie tak presne)

Plexisklo (Alebo iný materiál, z ktorého chcete zostaviť arduino a akcelerometer) kábel USB 1.1

Drôty

Krok 1: Mechanická montáž

Mechanická montáž
Mechanická montáž
Mechanická montáž
Mechanická montáž
Mechanická montáž
Mechanická montáž

Najprv si napichnite čapy v akcelerátore. V tomto prípade sú všetky piny spájkované, ale jediné potrebné piny sú: port VIN, port Grnd, port SDA a port SCL. Akcelerometer umiestnite na dosku tak, aby všetky kolíky boli v rôznych radoch, ale v rovnakom stĺpci. Ďalej pripojte štyri vodiče z arduina k urýchľovaču. Jeden vodič by mal smerovať z 5V portu na arduine do portu VIN na akcelerometri. Pripojené by mali byť aj oba uzemňovacie porty na arduine a akcelerometri. Porty SDA a SCL na arduino by mali byť tiež pripojené (a zodpovedajúce) k portom SDA a SCL na akcelerometri. Na zadnej strane vášho arduina zistíte, ktoré z jeho portov sú SDA a SCL. O pripojenie napájacieho zdroja si nemusíte robiť starosti, všetka energia bude do arduina dodávaná prostredníctvom kábla USB 1.1.

Krok 2: Navrhnite svoju hru

Toto je pravdepodobne najdôležitejšia časť hry a dôrazne sa odporúča, aby ste sa v tomto projekte uspokojili s jednotou. Môžete skutočne hrať akýkoľvek typ hry, ktorý chcete, rozhodli sme sa vytvoriť hru v štýle loptičky a labyrintu. Pri hre dbajte na to, aby ste z väčšieho herného objektu vyrobili všetky predmety, ktoré je potrebné ovládať.

Krok 3: Kódovanie

Toto je pravdepodobne najťažšia časť projektu. Prvá vec, ktorú budete chcieť urobiť, je stiahnuť si knižnicu kódov pre akcelerometer ADXL345 v Arduino IDE. Nájdete ho na webovej stránke adafruit. Po nahraní na arduino vyplivne veľa údajov na sériový monitor. Naozaj by tu bolo ideálne chytiť pozičné údaje XYZ a odoslať ich priamo do projektu jednoty, ale odosielanie plavákov nie je také jednoduché, ako sa zdá. Pri odosielaní údajov ich jednota vždy načíta ako reťazec, s ktorým sa ťažko pracuje. Aby sme to obišli, môžeme urobiť sériu príkazov if pre arduino. napríklad:

if (event.acceleration.y> 3) {

Serial.println ("vpravo");

}

Budeme chcieť vykonať tieto typy porovnaní pre osem rôznych smerov: hore, dole, vľavo, vpravo, hore-vpravo, hore-vľavo, dole-vpravo a dole-vľavo.

Odoslaním týchto reťazcov pokynov ich môžeme skutočne použiť! V Unity na našom ovládači prehrávača (ktorý by mal byť pripojený k objektu alebo skupine objektov, ktoré chcete ovládať) budeme chcieť použiť príkaz if, ktorý bude používať reťazec, ktorý sa číta v:

if (serial. ReadLine () == "left") {

Debug. Log („vľavo“);

transform. Rotate ((-Time.deltaTime * 50), 0, 0);

}

A znova to budeme chcieť urobiť pre všetkých osem smerov.

Teraz je najťažšie skutočne umožniť odoslanie údajov do jednoty. V tom istom skripte budeme chcieť povoliť sériovú knižnicu: pomocou System. IO. Ports

Potom budeme chcieť vytvoriť novú inštanciu sériového portu:

SerialPort serial = nový SerialPort ("COM5", 9600);

** Ak chcete skontrolovať, ktorý COM používa vaše arduino, môžete to urobiť v Arduino IDE, ale najbežnejšie sú COM3 a COM5. **

V rámci našej štartovacej funkcie chceme teraz otvoriť sériový port:

if (! serial. IsOpen) {

serial. Open ();

serial. ReadTimeout = 10;

}

Po tom všetkom vyskúšajte prenos dát a uvidíte, že to funguje!

Krok 4: Rezanie

Rezanie
Rezanie
Rezanie
Rezanie

Teraz, keď máte kódovanú hru a arduino komunikujúce s Unity 5, je projekt v podstate dokončený. Chcete ho však zostaviť do užívateľsky prívetivého a atraktívneho ovládača, ktorý budú používať všetci vaši priatelia! Na vytvorenie tohto ovládača môžete použiť akýkoľvek materiál, ktorý by ste chceli, len sa uistite, že nevyhodí vaše súradnice vo vašom akcelerátore, možno sa budete musieť vrátiť a zodpovedajúcim spôsobom upraviť kód. Nezabudnite tiež nechať otvorený port USB 1.1, aby ste mohli pripojiť ovládač k počítaču. V tomto prípade sme použili plexisklo. Najprv budete musieť zmerať rozmery každého kusu, aby vyhovovali vašim potrebám. Opäť nezabudnite vziať do úvahy otvorenie portu USB 1.1. Ďalej pomocou laserovej rezačky vystrihnite všetky kusy skrinky ovládača. Plexisklo môžete rezať aj pásovou pílou, ale laserová rezačka je presnejšia. Okrem toho sme pásovou pílou vyrezali malý kus dreva, ktorý mal rovnaké rozmery ako arduino. Aj keď to nie je potrebné, odporúča sa to pri montážnom kroku.

Krok 5: Zostava ovládača

Zostava ovládača
Zostava ovládača
Zostava ovládača
Zostava ovládača

(Ak ste kus dreva neporezali podľa odporúčaní v predchádzajúcom kroku, preskočte tento prvý pokyn) Vezmite svoj kus dreva a položte naň arduino dosku. Potom dosku priskrutkujte k drevu a uistite sa, že je pevne na svojom mieste. Potom drevo prilepte k spodnému dielu plexiskla. Ak ste preskočili drevo, môžete dosku priskrutkovať priamo na plexisklo, čo by ju však mohlo poškodiť alebo sa stať nepohodlným, ak nie je dostatočne hrubá na skrutku. Potom odstráňte lepiacu nálepku zo zadnej časti dosky, potom ju umiestnite zblízka a pohodlne vedľa arduina. Potom prilepte zvyšné časti škatule a vytvorte ovládač, znova sa uistite, že je port USB 1.1 stále prístupný.

Krok 6: Plug and Play

Skončil si! Pripojte svoj sladký ovládač k počítaču pomocou kábla USB 1.1 a vyskúšajte si svoju hru!

Odporúča: