Inhaltsverzeichnis:
- Schritt 1: Funktioniert dies auf Ihrem Telefon?
- Schritt 2: Starten Sie ein neues Unity-Projekt
- Schritt 3: Erstellen Sie einen Umschalter
- Schritt 4: MONSTER
- Schritt 5: Kontrolle unseres Charakters
- Schritt 6: Lassen Sie es mich erklären
- Schritt 7: Feinschliff
- Schritt 8: Holen wir es auf Ihr Telefon
Video: Augmented Reality-App für Anfänger - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:20
Dieses Tutorial zeigt Ihnen, wie Sie eine Augmented-Reality-App für Anfänger erstellen. Wir werden Unity3D und die Groundplane-Erkennung von Vuforia verwenden, um eine markerlose AR-App für Android oder IOS zu erstellen. Wir werden Unity ein 3D-Modell hinzufügen und es mit einem mobilen Joystick bewegen. Diese Methode funktioniert auch mit jedem anderen kostenlosen 3D-Modell, das Sie finden können.
Schritt 1: Funktioniert dies auf Ihrem Telefon?
Zunächst müssen wir sicherstellen, dass Ihr Telefon die Groundplane-Erkennung von Vuforia unterstützt. Stellen Sie also sicher, dass Ihr Telefon in der Liste der unterstützten Geräte aufgeführt ist.
library.vuforia.com/articles/Solution/Vufo…
Das einzige, was Sie als Software benötigen, ist die kostenlose Version von Unity. Wenn Sie es noch nicht haben, gehen Sie zu Unity3d.com und klicken Sie auf Unity abrufen. Jetzt verwende ich Version 2018.2.0, wenn diese Version nicht mehr verfügbar ist, gehen Sie zu älteren Versionen von Unity und laden Sie 2018.2.0 herunter.
Stellen Sie während des Installationsvorgangs sicher, dass Sie die Pakete für IOS oder Android installieren, je nachdem, welchen Telefontyp Sie haben, und stellen Sie sicher, dass Sie die Vuforia-Unterstützung installieren.
Schritt 2: Starten Sie ein neues Unity-Projekt
Starten Sie ein neues Unity-Projekt und löschen Sie die Hauptkamera. Gehen Sie in der oberen Menüleiste zu Spielobjekt, Vuforia und fügen Sie eine "ARCamera" hinzu.
Bevor alles funktionieren kann, müssen wir Vuforia aktivieren. Gehen Sie also zu den Dateierstellungseinstellungen, wechseln Sie die Plattform, die XR-Einstellungen und aktivieren Sie die Unterstützung von Vuforia Augmented Reality.
Klicken Sie auf das Spielobjekt "ARCamera" und im Inspektor auf Vuforia-Konfiguration. Unten aktivieren Sie die Geräteverfolgung und ändern Sie den Verfolgungsmodus auf Positionsbezogen.
Fügen Sie eine Bodenebenenbühne und einen Flugzeugfinder aus demselben Vuforia-Menü hinzu, aus dem Sie die Kamera erhalten haben.
Ändern Sie im Ebenenfinder das Dropdown-Menü auf interaktiv, deaktivieren Sie das Häkchen bei Bühne duplizieren und ziehen Sie das Objekt der Grundebenenbühne in den leeren Ankerbühnen-Slot im Ebenenfinder.
Jetzt müssen wir unseren Joystick hinzufügen, also gehen Sie im oberen Menü zu Assets, Import Package, Cross Platform Input.
Gehen Sie im neu hinzugefügten Standard-Assets-Ordner zu Prefabs und ziehen Sie das mobile Single-Stick-Control-Prefab in die Szene.
Löschen Sie die Sprungschaltfläche. Klicken Sie mit der rechten Maustaste in die Hierarchie und fügen Sie eine Benutzeroberfläche und ein Ereignissystem hinzu.
Klicken Sie zuletzt auf das Joystick-Root-Spielobjekt, um eine Komponente hinzuzufügen, und fügen Sie einen Canvas-Skalierer hinzu. Ändern Sie das Dropdown-Menü, um es mit der Bildschirmgröße zu skalieren. Ändern Sie im Joystick-Skript den Bewegungsbereich auf 25.
Schritt 3: Erstellen Sie einen Umschalter
Das Standardverhalten des Inhaltspositionierungsverhaltens ist jetzt, wenn wir auf den Bildschirm klicken, wird die Grundebenenbühne neu positioniert. Dazu gehört auch, wenn wir auf UI-Objekte wie Schaltflächen oder Joysticks klicken, sodass dies nicht das ist, was wir wollen. Da Vuforia derzeit keine Bearbeitung des Inhaltspositionierungsverhaltens zulässt, um dieses Problem zu beheben, können wir entweder unsere eigenen von Grund auf neu schreiben oder für dieses Tutorial einfach einen Schalter erstellen, der diese Funktion ein- oder ausschaltet.
Klicken Sie mit der rechten Maustaste auf den Joystick und erstellen Sie eine Benutzeroberfläche, umschalten. Erweitern Sie alles und ändern Sie die Farben oder den Text, wenn Sie möchten.
Fügen Sie im Abschnitt "Ein Wert geändert" des Schalters den Ebenenfinder hinzu und aktivieren Sie das Spielobjekt basierend auf dem Wert des Schalters. Sobald das Objekt in der Welt platziert ist, sollten wir den Umschalter wahrscheinlich ausschalten. Gehen Sie also zum Verhalten der Inhaltspositionierung und ziehen Sie den Umschalter auf den gerade platzierten Inhalt und stellen Sie den Umschalter auf Aus.
Schritt 4: MONSTER
Gehen Sie zu Fenster, allgemein, und fügen Sie ein Asset-Store-Fenster hinzu.
Suche nach „Charaktermonster“und sortiere nach frei, nimm das erste Ergebnis und importiere dieses.
Ziehen Sie das Monster-Fertigteil unter die Groundplane-Bühne, um es zu einem Kind zu machen. Setzen Sie seine Position und Drehung auf Null. Stellen Sie die x-y- und z-Skala auf.1 ein.
Gehen Sie zum Animator und löschen Sie alles außer dem Eintrag. Ziehen Sie die Lauf- und Leerlaufanimationen aus dem Animationsordner des Monsters.
Klicken Sie im Parameterbereich auf die Plus-Schaltfläche und fügen Sie zwei Trigger „Walk“und „Idle“hinzu.
Klicken Sie auf jede Animation und fügen Sie der anderen einen Übergang hinzu.
Klicken Sie auf jeden Übergang und fügen Sie eine Bedingung hinzu, setzen Sie für den ersten Übergang in Gang und für den zweiten in Leerlauf. Deaktivieren Sie das Häkchen bei Beendigungszeit und ziehen Sie alle Schieberegler auf 0.
Jetzt möchten wir, dass jede Animation in einer Schleife läuft. Klicken Sie also auf jede Animation und navigieren Sie zu ihrem Clip. Klicken Sie bei jedem auf Bearbeiten und überprüfen Sie die Schleifenzeit.
Schritt 5: Kontrolle unseres Charakters
Klicken Sie mit der rechten Maustaste in den Assets-Ordner und erstellen Sie ein C#-Skript namens "CharacterController" und fügen Sie dieses hinzu:
Verwenden von System. Collections;
mit System. Collections. Generic; mit UnityEngine; mit UnityStandardAssets. CrossPlatformInput; öffentliche Klasse CharacterController: MonoBehaviour { private const float speed =.1f; private Animator-Animation; // Verwenden Sie dies für die Initialisierung void Start () { anim = GetComponent (); } // Update wird einmal pro Frame aufgerufen void Update () { // Zeichen vom Joystick-Eingang verschieben float x = CrossPlatformInputManager. GetAxis ("Horizontal"); float y = CrossPlatformInputManager. GetAxis ("Vertikal"); if (!x. Equals(0) && !y. Equals (0)) { transform.eulerAngles = new Vector3 (transform.eulerAngles.x, Mathf. Atan2 (x, y) * Mathf. Rad2Deg, transform.eulerAngles.z); } if (!x. Equals (0) || !y. Equals (0)) { transform.position += transform.forward * Time.deltaTime * speed; anim. SetTrigger ("gehen"); } else { anim. SetTrigger ("idle"); } } public void PlaceCharacter () { transform.localPosition = Vector3.zero; } }
Schritt 6: Lassen Sie es mich erklären
Zuallererst haben wir oben einen konstanten Float definiert. Wenn Sie also möchten, dass sich Ihr Monster schneller oder langsamer bewegt, ändern Sie einfach diesen Wert.
Dieses Skript wird unserem Monster hinzugefügt, damit wir etwas wie "GetComponent()" tun können, um eine Referenz auf diesen Monster-Animator zu erhalten (auf diese Weise können wir die Animationen aus dem Code abspielen).
Wir holen uns dann die x- und y-Bewegung des Joysticks aus dem plattformübergreifenden Eingabemanager und speichern sie jeweils in einer Variablen.
Dann verwenden wir diese beiden Variablen, um das Monster entsprechend der Joystick-Eingabe zu drehen und zu bewegen.
Wenn sich das Monster bewegt, spielen wir die Laufanimation ab und wenn es sich nicht bewegt, spielen wir die Leerlaufanimation ab.
Die letzte Funktion, die wir haben, ist, dass wir die lokale Position des Monsters jedes Mal auf Null zurücksetzen, wenn die Bodenebene neu positioniert wird. So wie unsere App jetzt eingerichtet ist, positioniert Vuforia die Grundebene jedes Mal, wenn wir auf den Bildschirm klicken. Unser Monster kann sich auf der Bühne bewegen, also müssen wir seine Position bei jeder Neupositionierung relativ zur Bühne auf Null zurücksetzen.
Schritt 7: Feinschliff
Schließlich müssen wir nur noch unsere CharacterController.cs zu unserem Monster hinzufügen. Gehen Sie also zur Root-Transformation des Monster-Prefab in der Hierarchie und klicken Sie darauf. Dadurch wird es im Inspektor nach rechts gezogen. Klicken Sie auf Komponente hinzufügen und suchen Sie nach dem Zeichencontroller-Skript. Fügen Sie das hinzu.
Wir müssen auch sicherstellen, dass unsere PlaceCharacter-Funktion tatsächlich aufgerufen wird. Gehen Sie also zum Spielobjekt Flugzeugfinder und klicken Sie darauf.
Im Inspektor sollte es einen erweiterten Abschnitt geben, auf den Sie klicken können, um ihn zu erweitern. Dort gibt es ein Unity-Ereignis namens "OnContentPlaced". Fügen Sie eine Funktion hinzu, indem Sie auf die Plus-Schaltfläche klicken. Ziehe das Monster dort in den leeren Slot, wähle das Charakter-Controller-Skript und wähle schließlich die Funktion "PlaceCharacter".
Schritt 8: Holen wir es auf Ihr Telefon
Wenn Sie Android oder IOS verwenden, klicken Sie auf Datei, erstellen Sie die Einstellungen und gehen Sie zu den Player-Einstellungen für Ihre jeweilige Plattform. Stellen Sie in beiden Fällen sicher, dass Sie etwas für die Bundle-Kennung eingeben (in der Form "com. IhrName. IhrAppName"). Stellen Sie außerdem sicher, dass im Feld für die Beschreibung der Kameraverwendung eine Nachricht angezeigt wird.
Wenn Sie Android verwenden, deaktivieren Sie die Android TV-Kompatibilität und ändern Sie Ihr minimales Build-Ziel in Nougat.
Klicken Sie entweder auf Build und Ausführen oder klicken Sie auf Build und installieren Sie die.apk mit ADB oder Android Studio.
Wenn Sie auf IOS klicken, klicken Sie auf Build und öffnen Sie dann den resultierenden Ordner in XCode. Melden Sie sich für ein kostenloses Apple-Entwicklerkonto an (falls wir noch keins haben), wählen Sie Ihr Team aus und klicken Sie auf die Play-Taste, um es auf Ihr Handy zu laden!
Lass es mich in den Kommentaren wissen, wenn du Fragen hast!
Empfohlen:
Einführung in Visuino - Visuino für Anfänger.: 6 Schritte
Einführung in Visuino | Visuino für Anfänger.: In diesem Artikel möchte ich über Visuino sprechen, eine weitere grafische Programmiersoftware für Arduino und ähnliche Mikrocontroller. Wenn Sie ein elektronischer Bastler sind, der in die Welt von Arduino einsteigen möchte, aber keine Vorkenntnisse in der Programmierung hat
So programmieren und veröffentlichen Sie Matlab 2016b in Word (Anleitung für Anfänger): 4 Schritte
So codieren und veröffentlichen Sie Matlab 2016b in Word (Einsteigerhandbuch): Matlab ist ein leistungsstarkes Sprachprogramm, das zum Berechnen technischer Ergebnisse verwendet wird. Es hat die Fähigkeit, Visualisierungen, Berechnungen und Programmierung auf benutzerfreundliche Weise zu integrieren. Mit diesem Programm kann der Benutzer Probleme und Lösungen veröffentlichen
So importieren Sie Java-Projekte in Eclipse für Anfänger – wikiHow
So importieren Sie Java-Projekte in Eclipse für Anfänger: EinführungDie folgende Anleitung führt Sie Schritt für Schritt durch die Installation von Java-Projekten auf der Computersoftware Eclipse. Java-Projekte enthalten alle Codes, Schnittstellen und Dateien, die zum Erstellen eines Java-Programms erforderlich sind. Diese Projekte sind pla
Augmented-Reality-Puzzle: 11 Schritte
Augmented Reality Puzzle: Puzzlespiele sind einfach wunderbar. Es gibt Rätsel aller Art, das typische Puzzle, das Labyrinth, mit Token und sogar Videospiele dieses Genres (zum Beispiel Captain Toad). Puzzlespiele erfordern, dass der Spieler eine Problemlösungsstrategie entwickelt
So zeigen Sie Augmented Reality auf Ihrem Computer an – wikiHow
So zeigen Sie Augmented Reality auf Ihrem Computer an: In diesem Tutorial zeige ich Ihnen, wie Sie Augmented Reality auf Ihrem Computer nur mit einer Webcam anzeigen. Papier und das Internet