Zum Hauptinhalt springen

← Zurückzur Inhaltsübersicht

2.1.1 Versionshinweise

Abhängigkeiten​

  • haply: „-inverse-c.dll“ auf Version 2.1.1 aktualisiert (erfordert „Inverse SDK “ >= 2.1)
  • Haply.Inverse.dll auf Version 2.1.1 aktualisieren
  • Neue Version 2.3.0 von „com.unity.xr.core-utils“
Hinweis

Dieses Update beeinträchtigt die Kompatibilität mit Versionen vorUnity 2022.1.0f1. Sollten Kompatibilitätsprobleme auftreten, führen Sie bitte ein Upgrade auf eine neuere Version durch.

Destruktive Änderungen​

  • Inverse3 und VerseGrip wird device als ConnectionStateChanged Übergabe des ersten Parameters des Ereignisses
    • ConnectionStateChanged(state, prevState) > ConnectionStateChanged(device, state, prevState)
    • ConnectionStateChangedAsync(state, prevState) > ConnectionStateChangedAsync(device, state, prevState)
  • DeviceMapper State Die Eigenschaft wurde auf „schreibgeschützt“ gesetzt

Neue Funktionen​

  • Die „Inverse3Body“-Komponente wendet die Körperausrichtung des „ Inverse3 “-Geräts auf das angegebene GameObject an.
  • Inverse3:
    • Gerätedaten (Inspektor) anzeigen ControlModesowie die schließlich an das Gerät gesendete Force、Position oder Angles。
    • JointsAngles und JointsAngularVelocity。
    • Powered Zeigt an, ob das Gerät derzeit mit Strom versorgt wird.
    • PowerSupplyStatusChanged Unity-Ereignis, das bei einer Änderung des Stromversorgungsstatus ausgelöst wird.
    • Orientation Ruft die aktuelle Ausrichtung des Geräts unter Inverse3 ab.
    • OrientationChangedAsync Ein Ereignis, das ausgelöst wird, wenn sich die Ausrichtung des Körpers ändert.
    • RequestOrientation(), dient zur manuellen Abfrage der Körperausrichtung.
    • ControlMode Den aktuellen Steuerungsmodus abrufen (CursorForce, CursorPosition, JointsTorques, JointsAngles).
    • ControlModeChanged Unity-Ereignis, das bei einer Änderung des Steuerungsmodus ausgelöst wird.
    • ForceOutput、PositionOutput、JointsTorqueOutput und JointsAnglesOutput Den aktuellen Ausgabewert abrufen.
    • Release() Die Gerätesteuerung zurücksetzen, indem ein Kraftwert von null gesendet wird (alternativ TryResetForce()).
    • CoordinateConverter, um die Einstellungen für die Koordinatentransformation mithilfe von Voreinstellungsdateien oder durch direkte Zuweisung zu definieren.
    • ErrorEvent Wird im Hauptthread ausgelöst, d. h. wenn ein Fehlerereignis der ClientConnection auftritt, das mit einem zugeordneten Gerät in Verbindung steht.
  • VerseGrip:
    • CoordinateConverter, um die Einstellungen für die Koordinatentransformation mithilfe von Voreinstellungsdateien oder durch direkte Zuweisung zu definieren.
    • ErrorEvent Wird im Hauptthread ausgelöst, d. h. wenn ein Fehlerereignis der ClientConnection auftritt, das mit einem zugeordneten Gerät in Verbindung steht.
  • DeviceMapper:
    • Zuordnung der angeschlossenen Geräte zur Laufzeit.
    • Rufeden Stromversorgungsstatus („ Inverse3 “) und die Ausrichtung („body orientation“) für jedes „ Inverse3 “-Gerät ab.
    • DeviceInfoPollingMode Zu den Modellen gehören Manual、Once(Standard) oder Continuous
    • devicesInfoPollDelay Sicherheitsmindestwert: Bei der Abfrage der Körperausrichtung beträgt dieser 1sec, andernfalls 0.5sec。
    • Wird nur initialisiert, wenn die Komponente aktiviert ist.
    • Methode zum Abrufen von Geräten mit Filterkriterien:
      • GetInverse3Devices(handedness) Ruft die Geräte von „ Inverse3 “ ab, die nach der angegebenen Händigkeit (Handedness) gefiltert wurden.
      • GetVerseGripDevices(handedness) Inverse3 -Geräte abrufen, die der angegebenen Händigkeit (handedness) entsprechen, sowie die zugehörigen VerseGrip-Geräte.
      • GetInverse3(handedness) Das erste „ Inverse3 “-Gerät abrufen, das der angegebenen Händigkeit (handedness) entspricht.
      • GetInverse3(verseGrip) Ruft das „ Inverse3 “-Gerät ab, das mit dem angegebenen „VerseGrip“-Gerät verknüpft ist.
      • GetVerseGrip(inverse3) Ruft das VerseGrip-Gerät ab, das mit dem angegebenen „ Inverse3 “-Gerät verknüpft ist.
  • Bei den Komponenten „VerseGripCursor“ und „Inverse3Body“ wurden „OrientationSettings“hinzugefügt.
  • VerseGrip.Orientation Ersatz VerseGrip.LocalRotation。
  • Explizite Cache-Einstellungen für Inverse3 bereitstellen Inverse3D-Daten Typ:
    • Eigenschaften des Cache-Status:CursorPosition、JointsAngles、JointsAngularVelocity、Orientation,
    • GravityCompensation、StatusPowerSupply、ConfigTorqueScaling
    • Steuerung der Cache-Ausgabe Eigenschaften:ControlMode、CursorForceOutput、CursorPositionOutput、JointsTorqueOutput, JointsAnglesOutput。
    • coordinateConverter Dient zur Umrechnung der empfangenen und gesendeten Daten gemäß dem angegebenen Koordinatensystem.
    • Cache den Abonnement-Client, damit er automatisch aktualisiert wird.
    • Ein Ereignis wird bei einer Cache-Aktualisierung ausgelöst.
  • explizit Joint3 Struktur, die drei float-Elemente enthält j0、j1 und j2(verwendet für JointsSetTorque und JointsSetAngles).
  • Explizite Bereitstellung des VerseGrip-Caches VerseGripData Typ:
    • Eigenschaften des Cache-Status:Orientation、IsAttached、ButtonCount。
    • Den Status der Schaltfläche zwischenspeichern.
    • Cache den Abonnement-Client, damit er automatisch aktualisiert wird.
    • coordinateConverter Dient zur Umwandlung der empfangenen Daten gemäß dem angegebenen Koordinatensystem.
    • Ein Ereignis wird bei einer Cache-Aktualisierung ausgelöst.
  • CoordinateConverter(Ersatz) UnityConvert), mit denen jeweils festgelegt wird, wie der Gerätekordinatenraum in den Unity-Koordinatenraum umgewandelt wird:
    • Inverse3CoordinateConverter, zur Umrechnung der Cursor-Koordinaten und der Körperausrichtung.
    • VerseGripCoordinateConverter, um die Ausrichtung von VerseGrip zu ändern.
    • Vector3Settings und QuaternionSettings Struktur zum Speichern der Einstellungen für die Koordinatensystemumrechnung.
    • Über das Menü „Komponenten“ oder „Assets“ können Sie Standardvoreinstellungen für Koordinatentransformationen für „ Inverse3 “ und „VerseGrip“ erstellen.
      • Inverse3(Arm-Forward-Pose) Konverter, dessen Einstellungen für Geräte geeignet sind, bei denen der Arm zum Benutzer hin ausgerichtet ist und sich das LED-Symbol an der Seite befindet.
      • Inverse3(Symbol „Nach vorne gerichtet“) Konverter, dessen Einstellungen für Geräte geeignet sind, bei denen das LED-Symbol zum Benutzer zeigt und sich der Arm an der Seite befindet.
      • VerseGrip (Standard) – Konverter für Geräte, bei denen der Bildschirm nach vorne zeigt und sich die Eingabetasten oben befinden.
  • ClientConnection Abrufen, wenn das Gerät eingeschaltet ist FirmwareVersion、GravityCompensation und TorqueScaling。
  • ConnectionMonitor Anzeigen GravityCompensation、TorqueScaling und PowerSupply。

Fehlerbehebung​

  • Inverse3.DeviceStateChanged wird ebenfalls beim Aufruf JointsSetTorque und JointsSetAngles wird ausgelöst.
  • Nach dem Trennen der Verbindung wird das Gerät automatisch wieder verbunden.
  • Beim Beenden wird der Polling-Thread des Clients bereinigt.
  • Es wurden einige Fehler behoben und die Stabilität verbessert.
  • Behebung eines Problems mit der Gerätzuordnung nach dem Entladen/Laden einer Szene

Veraltet​

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

← Zurückzur Inhaltsübersicht