Zum Hauptinhalt springen
Version: 2.2.0

← Zurück zur Indexseite

2.1.1 Änderungsverzeichnis

Abhängigkeiten

  • Aktualisierte haply-inverse-c .dll Version 2.1.1 (erfordert Inverse SDK >= 2.1)
  • Aktualisiert Haply.Inverse.dll Version 2.1.1
  • com.unity.xr.core-utils Version 2.3.0 hinzugefügt
Warnung

Kompatibilität mit Unity-Versionen vor 2022.1.0f1 gebrochen. Bitte aktualisieren Sie auf eine neuere Version, wenn Sie Kompatibilitätsprobleme haben.

Wechselnde Änderungen

  • Inverse3 und VerseGrip Pass device als ConnectionStateChanged Ereignis erstes Argument
    • ConnectionStateChanged(state, prevState) > ConnectionStateChanged(device, state, prevState)
    • ConnectionStateChangedAsync(state, prevState) > ConnectionStateChangedAsync(device, state, prevState)
  • DeviceMapper State Eigenschaft auf schreibgeschützt geändert

Neue Funktionen

  • Die Inverse3Body-Komponente wendet die Körperausrichtung eines Inverse3 -Geräts auf ein bestimmtes GameObject an.
  • Inverse3:
    • Gerätedaten (Inspektor) zeigt an ControlMode und zuletzt Force, Position oder Angles an das Gerät gesendet.
    • JointsAngles und JointsAngularVelocity.
    • Powered zeigt an, ob das Gerät derzeit mit Strom versorgt wird.
    • PowerSupplyStatusChanged Einheitsereignis, das bei jeder Änderung des Stromversorgungsstatus ausgelöst wird.
    • Orientation ermittelt die aktuelle Ausrichtung des Geräts Inverse3 .
    • OrientationChangedAsync Ereignis, das immer dann ausgelöst wird, wenn sich die Ausrichtung des Körpers ändert.
    • RequestOrientation() um die Körperausrichtung manuell anzufordern.
    • ControlMode liefert den aktuellen Steuerungsmodus (CursorForce, CursorPosition, JointsTorques, JointsAngles).
    • ControlModeChanged Einheitsereignis, das immer dann ausgelöst wird, wenn sich der Kontrollmodus ändert.
    • ForceOutput, PositionOutput, JointsTorqueOutput und JointsAnglesOutput die Stromausgänge abrufen.
    • Release() die Gerätesteuerung durch Senden einer Nullkraft zurücksetzen (ersetzen TryResetForce()).
    • CoordinateConverter um die Einstellungen für die Koordinatenumrechnung mit voreingestellter Datei oder direktem Wert festzulegen.
    • ErrorEvent abgefeuert (im Hauptthread), wenn ClientConnection-Fehlerereignis mit zugeordnetem Gerät angehängt wird
  • VerseGrip:
    • CoordinateConverter um die Einstellungen für die Koordinatenumrechnung mit voreingestellter Datei oder direktem Wert festzulegen.
    • ErrorEvent abgefeuert (im Hauptthread), wenn ClientConnection-Fehlerereignis mit zugeordnetem Gerät angehängt wird
  • DeviceMapper:
    • Zur Laufzeit angeschlossene Geräte zuordnen.
    • Ruft Inverse3 Stromversorgung und Gehäuseausrichtung für jedes Inverse3 Gerät ab.
    • DeviceInfoPollingMode Modi Manual, Once (Standard) oder Continuous
    • devicesInfoPollDelay mit einem sicheren Minimum von 1sec wenn eine Körperausrichtung gewünscht wird, 0.5sec sonst.
    • Initialisierung nur bei aktivierter Komponente.
    • Gefilterte Geräte-Getter:
      • GetInverse3Devices(handedness) ruft Inverse3 Geräte ab, die nach der angegebenen Händigkeit gefiltert sind.
      • GetVerseGripDevices(handedness) ruft VerseGrip-Geräte ab, die mit Inverse3 -Geräten verbunden sind, die mit der angegebenen Händigkeit entsprechen.
      • GetInverse3(handedness) ruft das erste Inverse3 Gerät ab, das der angegebenen Händigkeit entspricht.
      • GetInverse3(verseGrip) ruft das Inverse3 Gerät ab, das mit einem bestimmten VerseGrip-Gerät verbunden ist.
      • GetVerseGrip(inverse3) ruft das VerseGrip-Gerät ab, das mit einem angegebenen Inverse3 -Gerät verbunden ist.
  • OrientationSettings für VerseGripCursor und Inverse3Body Komponenten hinzugefügt.
  • VerseGrip.Orientation ersetzen. VerseGrip.LocalRotation.
  • Ausdrücklich Inverse3D-Daten Typ für Inverse3 cache:
    • zwischengespeicherte Zustandsmerkmale: CursorPosition, JointsAngles, JointsAngularVelocity, Orientation,
    • GravityCompensation, StatusPowerSupply, ConfigTorqueScaling
    • zwischengespeicherte Steuerausgaben Eigenschaften: ControlMode, CursorForceOutput, CursorPositionOutput, JointsTorqueOutput, JointsAnglesOutput.
    • coordinateConverter wird verwendet, um empfangene und gesendete Daten in das angegebene Koordinatensystem zu konvertieren.
    • Cache auf dem Client abonnieren, um automatisch aktualisiert zu werden.
    • Ereignisse bei Cache-Aktualisierungen auslösen.
  • Ausdrücklich Joint3 Struktur mit Baum-Float-Mitgliedern j0, j1 und j2 (verwendet von JointsSetTorque und JointsSetAngles).
  • Ausdrücklich VerseGripData Typ für den VerseGrip-Cache:
    • zwischengespeicherte Zustandsmerkmale: Orientation, IsAttached, ButtonCount.
    • zwischengespeicherte Schaltflächenzustände.
    • Cache auf dem Client abonnieren, um automatisch aktualisiert zu werden.
    • coordinateConverter wird verwendet, um empfangene Daten in das angegebene Koordinatensystem zu konvertieren.
    • Ereignisse bei Cache-Aktualisierungen auslösen.
  • CoordinateConverter (ersetzen UnityConvert), um individuell festzulegen, wie der Gerätekoordinatenraum in Unity-Koordinatenraum:
    • Inverse3CoordinateConverter um die Cursor-Koordinaten und die Körperausrichtung zu konvertieren.
    • VerseGripCoordinateConverter um die VerseGrip-Ausrichtung zu konvertieren.
    • Vector3Settings und QuaternionSettings Strukturen, die zum Speichern der Einstellungen für die Koordinatenumrechnung verwendet werden.
    • Erstellen Sie Standard-Koordinatenkonverter-Voreinstellungen für Inverse3 und VerseGrip über das Menü Komponenten oder Assets.
      • Inverse3 (Cursor front) Konverter mit Einstellungen für das Gerät, bei dem der Cursor dem Benutzer zugewandt ist, die LED an der Seite.
      • Inverse3 (LED-Front) Konverter mit Einstellungen für Gerät mit der LED zum Benutzer, der Cursor auf der Seite.
      • VerseGrip (Standard) Konverter für Geräte, die mit der Taste oben auf den Bildschirm zeigen.
  • ClientConnection erhält FirmwareVersion, GravityCompensation und TorqueScaling am geöffneten Gerät.
  • ConnectionMonitor zeigt GravityCompensation, TorqueScaling und PowerSupply.

Fehlerbehebungen

  • Inverse3.DeviceStateChanged ausgelöst auch mit JointsSetTorque und JointsSetAngles.
  • Verbinden Sie das Gerät nach dem Trennen der Verbindung automatisch wieder.
  • Client-Polling-Thread beim Beenden des Builds bereinigen.
  • Behebung von Fehlern und Verbesserung der Stabilität.
  • Gerätezuordnung nach dem Entladen/Laden einer Szene korrigiert

Abgelehnt

  • ClientConnection.Configuration.HapticFrequencyHz ersetzt durch HapticPollFrequency
  • ClientConnection.Configuration.PollDelayNs ersetzt durch HapticPollDelayNs
  • DeviceBehaviour.ConnectionStateChangedAsync wird in der nächsten Hauptversion entfernt
  • Inverse3.Position ersetzt durch Inverse3.CursorPosition
  • Inverse3.LocalPosition ersetzt durch Inverse3.CursorLocalPosition
  • Inverse3.TryResetForce() ersetzt durch Release()
  • VerseGrip.LocalRotation ersetzt durch VerseGrip.Orientation
  • JointsSetTorque(Vector3) ersetzt durch JointsSetTorques(Joint3)
  • JointsSetTorque(float, float, float) ersetzt durch JointsSetTorques(float, float, float)
  • JointsSetAngles(Vector3) ersetzt durch JointsSetAngles(Joint3)

← Zurück zur Indexseite