Innehållsförteckning:

Arduino videospelkontroller: 4 steg
Arduino videospelkontroller: 4 steg

Video: Arduino videospelkontroller: 4 steg

Video: Arduino videospelkontroller: 4 steg
Video: Уроки Ардуино #0 - что такое Arduino, куда подключаются датчики и как питать Ардуино 2024, Juli
Anonim
Arduino videospelkontroller
Arduino videospelkontroller

Har du ett Arduino -kit som ligger runt men ingen aning om vad du ska göra med det? Kanske inte, men i den här instruktionsboken kommer jag att visa dig steg för steg hur du bygger, kodar och integrerar Arduino i ditt projekt. För närvarande testas den här guiden bara med Clickteam Fusion Developer 2.5 men bygg- och Arduino -kodstegen kan användas universellt. Den här guiden kan komma att uppdateras för Unreal och Unity i framtiden.

Steg 1: Inköpslista

  • Arduino Uno eller liknande
  • USB-kabel
  • (400 poäng) Brödbräda eller 1 x perf/bandskiva
  • Arduino -kompatibla trådar.
  • Olika sensorer. Jag använde följande i mitt exempelprojekt:
  • Panelmonterad Potentiometer 10K brödbräda vänlig
  • Fotoresistor
  • Kraftkänsligt motstånd

Steg 2: Anslutningar

Anslutningar
Anslutningar

Obs! Det här är bara de sensorer som jag personligen har använt för mitt projekt. Det betyder att det finns mycket fler alternativ där ute. Steg för steg instruktioner om hur du kopplar dem kan hittas på olika platser beroende på sensorn.

Steg 3: Arduino -kod

Kopiera och ladda upp den här koden till din Arduino om du vill använda samma typ av sensorer som jag. Annars kan du använda din egen kod för dina sensorer. Det enda globala viktiga som krävs är att de variabler du vill använda i din spelmotor skrivs ut på den seriella bildskärmen eller kan läsas på något annat sätt.

// Dessa ställs in i början och ändras inte när programmet körs. Som vilken ANALOG IN stiftet använder.

const int potPin = A0; const int fsrAnalogPin = 5; const int photocellPin = 2; // Variabler: // LIGHT SENSOR: // Ljusmängd variabel: int photocellReading; // POTENTIOMETER // Värde Potentiometer int värde; // TRYCKGIVARE // Detta är rådata -variabeln från trycksensorn. int fsrReading; // Mapped version av fsrReading variabel int tryck; void setup () {// lägg din installationskod här, för att köra en gång: pinMode (potPin, INPUT); Serial.begin (9600); } void loop () {// TRYCKGIVARE // Här använder vi den angivna fsrAnalogPin för att läsa data från denna pin. fsrReading = analogRead (fsrAnalogPin); // Kartvärde 0-1023 till 0-255. tryck = karta (fsrReading, 0, 1023, 0, 255); // Kontrollera om trycket är under eller över en viss mängd genom att skriva ut en av de två. Denna tryckta variabel används senare i spelmotorn. if (tryck 70) {Serial.print ("6"); } // POTENTIOMETER -värde = analogRead (potPin); // Läs och spara analogt värde från potentiometervärde = map (värde, 0, 1023, 0, 360); // Kartvärde 0-1023 till 0-360 // Här delar vi upp 360 i sex olika segment. // Du kan ändra mängden segment till ett högre belopp. Varje segment skulle då ha ett mindre intervall. Till exempel skulle 8 segment ha ett intervall på 45 vardera. (360 /antal segment) // Om det nuvarande värdet faller in i ett segment kommer det att skriva ut namnet på det segmentet. if (värde 60 och värde 120 och värde 180 och värde 240 och värde 300 och värde <375) Serial.print ("Six"); // LJUSGIVARE // Här läser vi igen och ställer in en variabel, i det här fallet photocellReading. photocellReading = analogRead (photocellPin); // Vi kontrollerar mängden ljus, med mörkt och mycket mörkt tryck en 3 och normala ljusvärden utskrift 4. if (photocellReading <10) {Serial.println (" - 3"); } annars if (photocellReading <200) {Serial.println (" - 3 -"); } annars if (photocellReading <500) {Serial.println (" - 4 -"); } // Siffrorna i serien: // Det första numret är trycksensorn, 5 trycks inte och 6 trycks in. // Efter det är vilket segment Potentiometern är på för närvarande. // Och det sista talet är antingen en 3 = mörk eller 4 = ljus.

Steg 4: I spelmotorn: Klicka på Team 2.5

I Extension Manager hittar du Serial Object och installerar detta.

Placera serieobjektet, en räknare och en sträng i din ram. (Högerklicka i ramen - infoga objekt)

Skapa en händelse i Event Editor: Om data väntar: Ställ in den ändringsbara strängen på GetData ("Seriellt objekt")

Detta kommer att ställa in strängen till all data som skickas av Arduino, strängen ska nu se ut som Serial Monitor.

Skapa en annan händelse Alltid: Ställ in räknaren till: Sök (sträng $ ("String"), "4", 0)

Detta exempel kommer att försöka hitta de 4 som är lika med ljus som kan ses i Arduino -koden.

Om den hittar 4: an kommer den att sätta räknaren till 4, om den inte hittar 4 kommer räknaren att vara -1.

Nu kan du lägga till en ny händelse för att göra något med detta resultat:

Om räknare = -1: Här kan du ange vad som ska hända om det är falskt, som att ha en animering av en lampa som är avstängd.

Om räknare = -1: Det betyder att den har hittat variabeln och räknaren har ställts in till vilken variabel som helst (så länge den inte är -1), här kan du göra det så att lampanimationen växlar till att vara på.

I grund och botten genom att använda räknare som är inställda på antingen -1 som är falsk eller -1 vilket är sant kan du få händelser att hända.

Rekommenderad: