Inverse3 sowie der VerseGrip-Cursor
Haply Das „Inverse Unity Package“ bietet spezielle Cursor-Komponenten für die Geräte „ Inverse3 “ und „VerseGrip“ und ermöglicht so eine präzise Steuerung und Interaktion in der Unity-Umgebung. Die Komponenten „Inverse3 -Cursor“ und „VerseGrip-Cursor“wurden so konzipiert, dass sie die Position und Drehung von Spielobjekten dynamisch auf der Grundlage der Daten derjeweiligen Gerätesteuerungenanpassen.
Übersicht
Die Cursor-Komponente fungiert als Brücke zwischen dem physischen Gerät Haply und den virtuellen Spielobjekten in Unity und wandelt die Positions- und Rotationsdaten des Geräts in die Bewegung und Ausrichtung der Spielobjekte um. Durch diese Umwandlung können Nutzer auf intuitive Weise mit der virtuellen Umgebung interagieren, wobei ihre tatsächlichen Bewegungen eins zu eins in virtuelle Reaktionen umgesetzt werden.
Klasse „CursorBase“
Im Kern der Cursor-Komponente liegt CursorBase Es gibt eine Klasse, und diese Klasse ist Inverse3CursorWow VerseGripCursorbietet grundlegende Funktionen, die von allen gemeinsam genutzt werden.
Dazu gehören die Verwaltung von Geräteverbindungen, die Instanziierung von Modellen und die Steuerung der Sichtbarkeit.
Wichtige Eigenschaften und Methoden
- Gerät: Es wird mit dem Gerät verbunden, das den Cursor steuert, und wird zur Laufzeit automatisch konfiguriert.
- ModellPrefab: Legt das Prefab fest, das für das Cursor-Modell verwendet werden soll. Dieses Prefab ist
ModelParentwird automatisch als Unterklasse instanziiert. - ModelParent: Definiert die übergeordnete Transformation des instanziierten Modell-Prefabs. Wird kein Wert festgelegt, wird die Transformation des Cursors als Standardwert verwendet.
- Modell: Verweist direkt auf das vorhandene Cursor-Modell in der Szene. Wenn diese Option aktiviert ist,
ModelPrefabDie Instanziierung wird übersprungen. - HideControllerModel: Steuert die Sichtbarkeit des Cursor-Modells und ermöglicht es, dieses je nach den Anforderungen des Spiels dynamisch ein- oder auszublenden.
- Radius: Wenn es sich bei dem Cursor-Modell um eine Kugel handelt, gibt dieser Wert den Radius an, der anhand der Netzgrenze des Modells berechnet wird.
- Glattheit:
PositionSmoothnessWowRotationSmoothnessbietet Optionen, die die Position und Drehung des Cursors flüssiger gestalten und so die Benutzererfahrung verbessern.
Hinweis: Um unerwartete Verhaltensweisen zu vermeiden, ist es äußerst wichtig, dass die Cursor-Komponente korrekt auf das Cursor-Modell verweist.

Das mit dem Haptic Rigerstellte Standard-Cursor-Modell zeigt farbige Punkte, die die drei Achsen darstellen: „Forward“(blau), „Up“(grün) und „Right“(rot). Dieses Design hilft dabei, die Ausrichtung des Geräts in einer virtuellen Umgebung visuell zu erfassen. Bei einem kalibrierten VerseGrip muss „Forward“mit der Zeigerrichtung übereinstimmen und „Up“mit der Oberseite.
Inverse3 Cursor-Komponente
Inverse3Cursorist speziell auf das Gerät „ Inverse3 “ zugeschnitten und passt die lokale Position des Cursors in Unity an die tatsächliche Position des Geräts an.
PositionSmoothness In den Einstellungen können Sie die Geschmeidigkeit der Cursorbewegungen anpassen und die Reaktionsfähigkeit des Cursors auf tatsächliche Bewegungen steuern, um die Benutzererfahrung zu verbessern.
VerseGrip Cursor-Komponente
VerseGripCursorerweitert die Funktionalität mit dem VerseGrip-Gerät und passt die Drehung des Cursors in Unity an die tatsächliche Drehung des Geräts an.
useDeviceLocalSpace Mit dieser Einstellung können Sie wählen, ob der Cursor an der Welt- oder an der Richtung des übergeordneten Objekts ausgerichtet werden soll, was die Flexibilität beim Entwerfen erhöht.
RotationSmoothness Diese Einstellung steuert die Sanftheit der Cursor-Drehung und ermöglicht es Entwicklern, die Reaktionsfähigkeit des Cursors auf tatsächliche Richtungsänderungen des VerseGrip fein abzustimmen.
Implementierungsdetails
Beim Initialisieren ModelWurde diese nicht zugewiesen, verwendet die Cursor-Komponente die angegebene ModelPrefab을 ModelParentIndem Sie eine Instanz davon erstellen, wird es in der Szene visuell dargestellt.
Diese Komponenten sind miteinander verbunden GerätesteuerungenIn Synchronisation damit werden die Position und die Drehung des Cursors in Echtzeit an die tatsächlichen Bewegungen des Geräts angepasst.
Die beiden Komponenten können mit demselben GameObject verbunden werden, um dessen Position und Drehung zu steuern, oder je nach Verwendungszweck mit separaten GameObjects verbunden werden. Auf diese Weise stehen Entwicklern in Unity vielseitige Werkzeuge zur Verfügung, mit denen sie immersive haptische Erlebnisse umsetzen können.