Inhaltsverzeichnis:
- Schritt 1: Materialien
- Schritt 2: Breadboarding
- Schritt 3: Codieren des Arduino
- Schritt 4: Einheit
- Schritt 5: Abschließende Hinweise
Video: Einfacher Unity-Controller - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:18
Beschreibung
Dieses Projekt ist ein sehr einfacher Controller, der Unity beim Drücken von Tasten Eingaben geben kann. Ich habe ihn entworfen, um ein von mir erstelltes Spiel zu steuern, bei dem der Spieler nach links und rechts gehen kann. Natürlich können Sie es jederzeit für weitere Kontrollen anpassen. Es ist nicht erforderlich, zusätzliche Bibliotheken zu verwenden.
Schritt 1: Materialien
Benötigte Komponenten
- -Arduino 2x Widerstand
- -[~220 Ohm
- -Drähte
- -2x Tasten
- -Breadboard
Schritt 2: Breadboarding
Ich begann damit, den Arduino GND-Port mit einem negativen (-) Pin auf der linken Seite des Steckbretts zu verbinden und die 5V mit einem positiven (+) auf der rechten Seite des Steckbretts zu verbinden.
Danach habe ich die Knöpfe an die Stelle gesetzt, an der ich das m haben wollte. Und verband sie mit den Drähten und Widerständen.
Schritt 3: Codieren des Arduino
Zuerst müssen Sie etwas Code schreiben, damit Ihr Arduino ausgeführt wird. Ich habe Kommentare in den Code eingefügt, die erklären, was es tut.
// Pins deklarieren, mit denen Schaltflächen verbunden sind.
const int buttonPin1 = 3; const int buttonPin2 = 4;
Void-Setup ()
{// Starten Sie die serielle Serial.begin (9600); // Konfigurieren Sie die Pins als Ausgabe. pinMode (buttonPin1, INPUT); pinMode (buttonPin2, INPUT); }
Leere Schleife ()
{ // Den Zustand der Schaltfläche lesen if (digitalRead (buttonPin1) == HIGH) { // diese Zeile drucken, wenn der Zustand HIGH ist. Serial.println ("Links"); Verzögerung (20); aufrechtzuerhalten. If (digitalRead (buttonPin2) == HIGH) {// diese Zeile drucken, wenn der Zustand HIGH ist. Serial.println ("Rechts"); Verzögerung (20); } }
Schritt 4: Einheit
Wenn Sie kein Spiel bereit haben, funktioniert dieser Code auf jedem Spielobjekt in Unity.
Wenn dies der Fall ist, benötigen Sie ein Spielobjekt, um sich zu bewegen.
Der Einfachheit halber erstellen wir einen Würfel, indem wir zu GameObject->3D-Objekt->Cube gehen
Sobald sich der Würfel in Ihrer Szene befindet, wählen Sie ihn aus und klicken Sie auf die Schaltfläche Komponente hinzufügen und erstellen Sie ein neues Skript.
Außerdem müssen Sie den API-Kompatibilitätsgrad ändern, damit die System. IO. Ports-Bibliothek funktioniert.
Gehen Sie dazu zu Bearbeiten->Projekteinstellungen->Player
Scrollen Sie in diesem Menü nach unten, bis Sie die Api-Kompatibilitätsstufe finden und wählen Sie. NET 2.0 anstelle von. Net 2.0-Teilmenge
Sie können jetzt mit der Codierung beginnen.
using System. Collections;using System. Collections. Generic; mit UnityEngine; Verwenden von System. IO. Ports;
Öffentliche Klasse PlayerMovement: MonoBehaviour
{ Geschwindigkeit des öffentlichen Schwimmers; Schwimmerbewegung;
SerialPort sp = neuer SerialPort ("COM3", 9600);
void Start()
{ // Führen Sie den Code aus, um den seriellen Port OpenSerialPort () zu öffnen; }
void OpenSerialPort()
{ // Öffnen Sie den seriellen Port sp. Open (); sp. ReadTimeout = 1; }
Leere Bewegung (String-Richtung)
{ // Überprüfen Sie, welche Richtung das Arduino weitergegeben hat if (Direction == "Left") { Bewegung = -1; } if (Richtung == "Rechts") { Bewegung = 1; } // Berechnen Sie den Betrag, um den das Spielobjekt verschoben wird float translation = Bewegung * Geschwindigkeit; // Wende die Bewegung auf das Spielobjekt an transform. Translate(translation, 0, 0); }
void Update()
{ if (sp. IsOpen) { try { // während der serielle Port geöffnet ist, führen Sie die Bewegungsfunktion aus und übergeben Sie die Zeile, die der Arduino druckt Movement (sp. ReadLine ()); } catch (System. Exception) {
}
}
} }
Schritt 5: Abschließende Hinweise
Überprüfen Sie, ob Ihre Komponenten funktionieren
Ein Problem, auf das ich bei der Erstellung gestoßen bin, war, dass alle Drähte und der Code richtig waren und es sollte überhaupt kein Problem geben, aber es funktionierte nicht. In meinem Fall war es ein Draht, der nicht funktionierte, obwohl die Das gleiche kann mit einigen Ihrer anderen Komponenten passieren.
Empfohlen:
Einfacher LED-Farbwechsel "Kerze": 5 Schritte (mit Bildern)
Einfacher LED-Farbwechsel "Kerze": Dies ist ein einfaches Farbwechsellicht, das sich hervorragend für Kinder und Erwachsene eignet. Sieht in einem schwach beleuchteten Raum wunderschön aus, ideal für die Feiertage und macht ein ziemlich cooles Nachtlicht
EINFACHER CARBOT -- ARDUINO -- BLUETOOTH-STEUERUNG -- TUTORIAL: 10 Schritte (mit Bildern)
EINFACHER CARBOT || ARDUINO || BLUETOOTH-STEUERUNG || TUTORIAL: IN DIESEM ANLEITUNG ZEIGE ICH, WIE MAN EINEN EINFACHEN BOT HERSTELLT, DER VON IHREM SMARTPHONE ÜBER BLUETOOTHPARTS GEBAUT WIRD:☻ARDUINO☻2X GETRIEBEMOTOREN☻HC-05 BLUETOOTH MODUL☻LAPTOP ODER PC ICH HABE EINE POWER BANK VERWENDET
Günstiger und einfacher Batteriehalter Version 1: 7 Schritte
Günstiger und einfacher Batteriehalter Version 1: Batteriehalter halten natürlich Batterien und sind SEHR nützlich in elektronischen Projekten, insbesondere bei solchen, die Batterien benötigen. Dies ist der einfachste Batteriehalter, den ich mir vorstellen kann. Das Beste ist, dass es billig ist und Haushaltsgegenstände verwendet werden, die
Günstiger und einfacher Batteriehalter Version 2: 6 Schritte
Günstiger und einfacher Batteriehalter Version 2: Dies ist die zweite Version meines Batteriehalters. Dieser Halter ist für diejenigen, die eine schöne enge Passform mögen. Tatsächlich ist es so eng, dass Sie etwas brauchen, um die leere Batterie herauszuhebeln. Das heißt, wenn Sie es zu klein messen und nicht genug Platz für den Schläger lassen
So zeigen Sie alle Schritte standardmäßig an – ABER EINFACHER !!!: 5 Schritte
So sehen Sie alle Schritte standardmäßig - ABER EINFACHER !!!: Einige von Ihnen wissen dies vielleicht bereits, aber ich poste dies nur, falls einige das neue Update nicht gesehen haben und das andere instructable betrachten. Ich hoffe du magst es! Oder tue ich? Benötigte Materialien: Ihr Computer 130 Ohm Widerstand 2x 5mm blaue LED-Leuchten