Zum Hauptinhalt springen

Inverse3 und der VerseGrip-Controller

Inverse3 Der VerseGrip-Controller undder Device Mapper sind so konzipiert, dass sie mithilfedes Device Mappers die jeweiligen physischen Geräte nahtlos in die Game-Objekte von Unity integrieren. Durch die Nutzung hochfrequenter Sensordaten ermöglichen diese Komponenten eine präzise und reaktionsschnelle Steuerung innerhalb der virtuellen Umgebung. Die Funktionen beider Komponenten sind sowohl in logischer als auch in funktionaler Hinsicht aufeinander abgestimmt und sorgen so für ein einheitliches Benutzererlebnis.

Diese Controller bilden die Grundlage für das „ Haply Inverse Unity Package“ und nutzen die fortschrittlichen Hardwarefunktionen des „Haply “, um Entwicklern die Erstellung von VR-Anwendungen mit hohem Immersionsgrad und hervorragender Interaktivität zu ermöglichen. Sie steuern geschickt die Transformation zwischen den lokalen Koordinaten des Geräts und den räumlichen Parametern der Spielwelt und gewährleisten so eine natürliche und fesselnde Interaktion.

Inverse3 Controller​

Inverse3 Controller-Komponenten spielen eine wichtige Rolle bei der Zuordnung von „Inverse3 “-Geräten zu den entsprechenden Spielobjekten. Mithilfe von häufig aktualisierten Sensordaten werden die physischen Bewegungen des Geräts präzise im virtuellen Raum widergespiegelt. Zu den wichtigsten Funktionen gehören:

Inverse3 Die wichtigsten Funktionen und APIs​

  • Ereignis „Gerätezustandsänderung“:Inverse3 Dies ist ein zentrales Ereignisdes Controllers, das bei jedem Haptik-Frame ausgelöst wird und eine Echtzeit-Aktualisierung der Cursorposition und -geschwindigkeit ermöglicht. Es ist unverzichtbar für Anwendungen, die den Gerätezustandkontinuierlich überwachen müssen, sowie für die Implementierung von Echtzeit-Steuerbefehlen.

  • Abrufen von Position und Geschwindigkeit:CursorPosition、CursorVelocity、CursorLocalPosition、CursorLocalVelocity bietet unter anderem Eigenschaften, über die Sie auf den aktuellen Zustand des Geräts zugreifen können. Dies ist wichtig, um physische Bewegungen präzise in den virtuellen Raum abzubilden.

  • Kraft- und Positionskontrolle:SetCursorForce や SetCursorPosition bietet Methoden wie diese und ermöglicht die direkte Steuerung des Geräts. Entwickler können Kräfte ausüben oder Positionen festlegen und so die Interaktion im virtuellen Raum verbessern.

Inverse3 Inspektoransicht​

inverse3 Inspektor des Controllers

  • Gerät: Wählen Sie ein bestimmtes Gerät aus.<refresh device list> Wenn Sie darauf klicken, wird das Gerät mithilfe von Device Mapper im Editor-Modus abgerufen, und alle Gerät Das Dropdown-Menü wird aktualisiert.
  • Handhabung: Filtert die Geräte anhand der Einstellung, ob sie für die linke oder rechte Hand bestimmt sind.
  • Cursor: Ist mitdem „Inverse3Cursor“-Objekt verknüpft und bewegt sich entsprechend den Aktualisierungen der Geräteposition.
  • Body: Wird mit „Inverse3Body“ verbunden, das die Ausrichtung des physischen Gerätekörpers angibt.
  • Koordinatenumrechnung: Legt fest, wie die Cursorposition des Geräts und die Ausrichtung des Geräts in die Spielwelt umgerechnet werden. Ermöglicht eine präzise und individuell anpassbare Zuordnung.
  • Cursor-Daten: Zeigt die Position des Cursors innerhalb der Spielwelt an.
  • Gerätedaten: Zeigt die Echtzeit-Eingangs- und Ausgangsdaten des Geräts an.
  • Veranstaltungen: Unity-Ereignisse, die im Hauptthread ausgelöst werden und die Interaktion mit der Szene sowie die Aktualisierung der Benutzeroberfläche vereinfachen.
    • Bereit: Sie werden benachrichtigt, sobald das Gerät verfügbar ist.
    • ControlModeChanged: Zeigt eine Änderung des Steuerungsmodus des Geräts an (z. B. Kraftregelung oder Positionsregelung).
    • PowerSupplyStatusChanged: Benachrichtigt über eine Änderung des Stromversorgungsstatus des Geräts.

inverse3 Während der Ausführung des Controllers

Inverse3 Gizmo​

Es werden visuelle Anzeigen bereitgestellt, die die Position des Geräts und die maximale Reichweite des Cursors anzeigen. Die Farben sind je nach Hand (links oder rechts) unterschiedlich.

  • Blau kennzeichnet das Gerät für die linke Hand.
  • Rot kennzeichnet das Gerät für die rechte Hand.
  • Bei Geräten, bei denen die Einstellungen für links und rechts nicht zugewiesen sind, werden beide Farben angezeigt, bis dies zur Laufzeit festgelegt wird.

inverse3 Angabe für die linke bzw. rechte Hand

VerseGrip-Controller​

Inverse3 Genau wie der Controller ordnet auch der VerseGrip-Controller das VerseGrip-Gerät einem verknüpften Spielobjekt zu. Diese Komponente ist für die Nutzung der VerseGrip-spezifischen Eingabefunktionen unerlässlich.

Die wichtigsten Funktionen und die API von VerseGrip​

  • Ereignis „Gerätezustandsänderung“: Benachrichtigt über Änderungen der Geräteausrichtung und des Tastenstatus. Durch zeitnahe Rückmeldungen unterstützt es die Entwicklung interaktiver Anwendungen, die auf Benutzereingaben und die Geräteausrichtung reagieren.

  • Schaltfläche Interaktion: Methode zur Erkennung von Tastenbetätigungen (GetButton、GetButtonDown、GetButtonUp) und ermöglicht so die Eingabe in den taktilen Thread.

  • Anhang Staat: Überwacht den Verbindungsstatus mit anderen Geräten undAttached sowie Detached Wir informieren Sie über das Ereignis. Dies ist hilfreich für Anwendungen, die von der physischen Konfiguration des Geräts abhängen.

VerseGrip-Inspektoransicht​

Inspektor für den VerseGrip-Controller

  • Gerät: Wählen Sie ein bestimmtes Gerät aus.<refresh device list> Wenn Sie darauf klicken, wird der Client im Editor-Modus aktiviert, und alle Gerät Das Dropdown-Menü wird aktualisiert.
  • Cursor: Er ist mitdem „VerseGripCursor“-Objekt verknüpft und dreht sich entsprechend der aktualisierten Ausrichtung des Geräts.
  • Koordinatenumrechnung: Legt fest, wie die Ausrichtung des Geräts in die Spielwelt umgerechnet wird. Ermöglicht eine präzise und individuell anpassbare Zuordnung.
  • Cursor-Daten: Zeigt die Drehung des Cursors innerhalb der Spielwelt an.
  • Gerätedaten: Zeigt die lokale Ausrichtung des Geräts, den Status der Tasten und den Befestigungsstatus an.
  • Veranstaltungen: Im Hauptthread werden Unity-Ereignisse ausgelöst, um Interaktionen mit der Szene und der Benutzeroberfläche zu unterstützen.
    • Bereit: Sie werden benachrichtigt, sobald das Gerät verfügbar ist.
    • Button Down: Wird ausgelöst, wenn die Taste gedrückt wird.
    • Button Up: Wird ausgelöst, wenn der Knopf gelöst wird.
    • Angeschlossen: Wird angezeigt, wenn das Gerät an „ Inverse3 “ angeschlossen ist.
    • Getrennt: Wird angezeigt, wenn das Gerät von „ Inverse3 “ getrennt wurde.

Während der Ausführung des VerseGrip-Controllers