Unity-Oculus-VR-Grundlagen

Oculus Quest & Unity – Controller Buttons verwenden

Gefällt Dir der Artikel? Dann teile ihn doch, um diese Informationen auch anderen zugänglich zu machen!

Seiteninhalt

Wenn du in deiner Anwendung auf die Eingabe der Oculus Quest Touch Controller zurückgreifen möchtest, dann kannst du die OVRInput Klasse in Unity verwenden.

OVRInput Klasse Unity

Dort findet die ganze Magie statt, also die Weitergabe der Button Inputs über den Controller an deine Unity Anwendung. Im Abschnitt Touch findest du Hinweise zum Mapping. Genau diese Werte kannst du in einem eigenen Skript jederzeit verwenden.

Erstelle dir ein neues C# Skript und verwende die Update-Methode um die Tasten abzufragen, du findest eine Liste alle Befehle auf der Oculus Seite. Ich zeige dir das mit Hilfe der Taste Button One.

Button Mapping

Im ersten Schritt über ein IF-Bedingungsabfrage den Button abfragen, ob dieser gedrückt wird. Danach gibst du über ein print() eine beliebige Meldung aus, um zu verstehen ob der Input überhaupt klappt. Sobald dies funktioniert kannst du deine eigene Logik integrieren.

Füge dein Skript als Komponente an ein leeres oder bestehendes GameObject. Ich erstelle ein neues GameObject und nenne dieses InputManager.

Starte die Anwendung drücke den Button One, also die Taste A auf dem rechten Touch Controller und behalte deine Unity Console im Blick. Unsere Zeichenkette wird einmal ausgegeben, jedes mal wenn du die Taste nach unten drückst.

Unity Console Controller

Dies kannst du natürlich auch mit anderen Tasten machen und hier im Rumpf der Bedingungsabfrage dann deine Logik integrieren. Dafür solltest du aber C# Programmierkenntnisse haben.

Ich zeige dir dazu ein kurzes Beispiel. Beim Drücken der Taste soll ein GameObject instanziiert werden. Dupliziere oder erstelle eine Sphere die über einen Rigidbody mit aktiver Gravity (Erdanziehung) verfügt und positioniere sie an deine gewünschte Stelle. Erstelle daraus jetzt ein Prefab. Erweitere dein InputScript mit einer Logik zum Instanziieren des GameObjects und weise das Prefab zu.

				
					using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class MyButtonInput : MonoBehaviour
{
    public GameObject objectToSpawn;

    // Update is called once per frame
    void Update()
    {
        // Wurde die Taste ___ auf dem Touch Controller gedrückt?
        if(OVRInput.GetDown(OVRInput.Button.One))
        {
            // Button A wurde gedrückt => Aktion ausführen
            print("Button A wurde gedrückt!");
        }
    }
}
				
			

Dadurch fallen jetzt per Knopfdruck Objekte in Form einer Sphere vom Himmel. Diese Logik kannst du für alle anderen Buttons ebenfalls übernehmen und so die Komplexität erweitern.

Hinweis: Mit dem ultimativen Unity Cheat Sheet erhältst du einen detaillierten Überblick über Tipps & Tricks mit dem Umgang von Unity. Sichere dir jetzt das Cheat Sheet, um deine Anwendungen noch einfacher und effektiver erstellen zu können!

Objekte in Form einer Sphere

Hinweis: Du möchtest eigene 2D/3D Spiele und Anwendungen erstellen? Dann teste jetzt nobreakpoints Pro. Dort findest du in verschiedenen Online-Kursen und Workshops das nötige Wissen, um deine Ideen in die Wirklichkeit umzusetzen.

Free

Trial

Keine Extra-Kosten.
Jederzeit kündbar.

Bist du bereit atemberaubende Spiele und 3D Anwendungen zu erstellen?

*Nach 1 Monat wird die Mitgliedschaft automatisch auf monatlicher Basis zum Premium-Preis verlängert, bis du kündigst. Angebot kann nur einmal pro Nutzer beansprucht werden.

Gefällt Dir der Artikel? Dann teile ihn doch, um diese Informationen auch anderen zugänglich zu machen!

Weitere Blogartikel

Bist du bereit deine eigenen Spiele & Apps zu erstellen?

Teste jetzt alle Online-Kurse mit nobreakpoints Pro und erstelle problemlos deine eigenen 2D/3D Spiele und XR Anwendungen.

Suche

Bist du bereit deine eigenen Spiele & Apps zu erstellen?

Teste jetzt alle Online-Kurse mit nobreakpoints Pro und erstelle problemlos deine eigenen 2D/3D Spiele und XR Anwendungen.