Zum Haupttext springen

← Zurück zur Indexseite

2.1.1 Änderungsprotokoll

Abhängigkeit​

  • haply- „inverse-c.dll“auf Version 2.1.1 aktualisieren (Voraussetzung: „Inverse SDK “ >= 2.1)
  • Haply.Inverse.dllauf Version 2.1.1 aktualisieren
  • com.unity.xr.core-utils Version 2.3.0 hinzugefügt
Warnung

Die Kompatibilität mit Versionen vor Unity 2022.1.0f1 ist nicht mehr gewährleistet. Sollten Kompatibilitätsprobleme auftreten, führen Sie bitte ein Update auf die neueste Version durch.

Änderungen, die die Kompatibilität beeinträchtigen​

  • Inverse3 sowie VerseGripist ConnectionStateChanged Als erstes Argument des Events deviceübermittelt.
    • ConnectionStateChanged(state, prevState) > ConnectionStateChanged(device, state, prevState)
    • ConnectionStateChangedAsync(state, prevState) > ConnectionStateChangedAsync(device, state, prevState)
  • DeviceMapper's State Die Eigenschaft wurde auf „schreibgeschützt“ gesetzt.

Neue Funktionen​

  • Die Komponente „Inverse3Body“ wendet die Ausrichtung des „ Inverse3 “-Geräts auf das angegebene GameObject an.
  • Inverse3:
    • Gerätedaten (Inspector) sind ControlModeund die zuletzt an das Gerät übertragene Force, Position oder Angleswird angezeigt.
    • JointsAngles sowie JointsAngularVelocity.
    • PoweredZeigt an, ob das Gerät derzeit mit Strom versorgt wird.
    • PowerSupplyStatusChanged Das Unity-Ereignis wird bei jeder Änderung des Stromversorgungsstatus ausgelöst.
    • OrientationRuft die aktuelle Ausrichtung des Geräts „ Inverse3 “ ab.
    • OrientationChangedAsync Das Ereignis wird jedes Mal ausgelöst, wenn sich die Ausrichtung des Hauptkörpers ändert.
    • RequestOrientation()fordert manuell die Ausrichtung des Hauptgeräts an.
    • ControlModeRuft den aktuellen Steuerungsmodus (CursorForce, CursorPosition, JointsTorques, JointsAngles) ab.
    • ControlModeChanged Unity-Ereignisse werden bei jeder Änderung des Steuerungsmodus ausgelöst.
    • ForceOutput, PositionOutput, JointsTorqueOutput sowie JointsAnglesOutputRuft den aktuellen Ausgabewert ab.
    • Release()setzt die Gerätesteuerung durch die Übertragung einer Nullkraft zurück (TryResetForce()ersetzt).
    • CoordinateConverterdefiniert die Einstellungen für die Koordinatentransformation anhand einer Voreinstellungsdatei oder manuell eingegebener Werte.
    • ErrorEventTritt auf, wenn (im Hauptthread) ein ClientConnection-Fehlerereignis im Zusammenhang mit einem zugeordneten Gerät hinzugefügt wird.
  • VerseGrip:
    • CoordinateConverterdefiniert die Einstellungen für die Koordinatentransformation anhand einer Voreinstellungsdatei oder manuell eingegebener Werte.
    • ErrorEventTritt auf, wenn (im Hauptthread) ein ClientConnection-Fehlerereignis im Zusammenhang mit einem zugeordneten Gerät hinzugefügt wird.
  • DeviceMapper:
    • Ordnet die zur Laufzeit verbundenen Geräte zu.
    • Ruft für jedes Gerät unter Inverse3 die Werte für„ Inverse3 “, „Power Supply “ und „Body Orientation“ab.
    • DeviceInfoPollingMode Der Modus ist Manual, Once(Standardwert) oder Continuousist.
    • devicesInfoPollDelayDer Sicherheits-Mindestwert gilt, wenn die Ausrichtung des Hauptkörpers abgefragt wird. 1sec, andernfalls 0.5secist.
    • Die Initialisierung erfolgt nur, wenn die Komponente aktiviert ist.
    • Getter für gefilterte Geräte:
      • GetInverse3Devices(handedness)Ruft die Geräte ab, die nach der angegebenen Handausrichtung (Handedness) gefiltert wurden: Inverse3 .
      • GetVerseGripDevices(handedness)Ruft das „VerseGrip“-Gerät ab, das mit einem „ Inverse3 “-Gerät verbunden ist, dessen Handausrichtung mit der angegebenen übereinstimmt.
      • GetInverse3(handedness)Ruft das erste Gerät von Inverse3 ab, dessen Handausrichtung mit der angegebenen übereinstimmt.
      • GetInverse3(verseGrip)Ruft das mit dem angegebenen „VerseGrip“-Gerät verbundene „ Inverse3 “-Gerät ab.
      • GetVerseGrip(inverse3)Ruft das VerseGrip-Gerät ab, das mit dem angegebenen Inverse3 -Gerät verbunden ist.
  • Die „OrientationSettings“wurden den Komponenten „VerseGripCursor“ und „Inverse3Body“ hinzugefügt.
  • VerseGrip.Orientationdies VerseGrip.LocalRotationersetzt.
  • Inverse3 Explizit für den Cache Inverse3D-Daten Typ:
    • Eigenschaft „Cached-Status“: CursorPosition, JointsAngles, JointsAngularVelocity, Orientation,
    • GravityCompensation, StatusPowerSupply, ConfigTorqueScaling
    • Eigenschaften der zwischengespeicherten Steuerausgänge: ControlMode, CursorForceOutput, CursorPositionOutput, JointsTorqueOutput, JointsAnglesOutput.
    • coordinateConverterwird verwendet, um empfangene und gesendete Daten in das angegebene Koordinatensystem umzuwandeln.
    • Der Cache wird durch das Abonnieren des Clients automatisch aktualisiert.
    • Sobald der Cache aktualisiert wird, wird ein Ereignis ausgelöst.
  • Drei float-Mitglieder j0, j1, j2mit expliziter Joint3 Struktur (JointsSetTorque sowie JointsSetAngles(verwendet in).
  • Explizite Angaben für den VerseGrip-Cache VerseGripData Typ:
    • Eigenschaft „Cached-Status“: Orientation, IsAttached, ButtonCount.
    • Zwischengespeicherter Schaltflächenstatus.
    • Der Cache wird durch das Abonnieren des Clients automatisch aktualisiert.
    • coordinateConverterwird verwendet, um die empfangenen Daten in das angegebene Koordinatensystem zu konvertieren.
    • Sobald der Cache aktualisiert wird, wird ein Ereignis ausgelöst.
  • CoordinateConverter(UnityConvert (Alternativ) definiert man individuell, wie der Gerätekoordinatenraum in den Unity-Koordinatenraum umgewandelt wird:
    • Inverse3CoordinateConverterwandelt die Cursor-Koordinaten und die Ausrichtung des Hauptkörpers um.
    • VerseGripCoordinateConverterändert die Ausrichtung von VerseGrip.
    • Vector3Settings sowie QuaternionSettings Strukturen werden zum Speichern von Koordinatensystem-Transformations-Einstellungen verwendet.
    • Erstellen Sie im Menü „Komponenten“ oder „Assets“ Standardvoreinstellungen für Koordinatentransformationen für „ Inverse3 “ und „VerseGrip“.
      • Inverse3 (Arm-vorwärts-Pose) Konverter: Dies sind die Einstellungen für Geräte, bei denen der Arm zum Benutzer zeigt und sich das LED-Symbol an der Seite befindet.
      • Inverse3 (Symbol „Nach vorne gerichtet“) Konverter: Dies ist die Einstellung für Geräte, bei denen das LED-Symbol zum Benutzer zeigt und die Arme seitlich anliegen.
      • VerseGrip (Standard) Konverter: Für Geräte, bei denen der Bildschirm nach oben zeigt und sich die Eingabetasten oben befinden.
  • Wenn das Gerät geöffnet wird, ClientConnectiondies FirmwareVersion, GravityCompensation, TorqueScalingholt.
  • ConnectionMonitorist GravityCompensation, TorqueScaling, PowerSupplywird angezeigt.

Fehlerbehebung​

  • JointsSetTorque sowie JointsSetAngles Auch bei der Verwendung Inverse3.DeviceStateChangedBehebung des Problems, bei dem […] ausgelöst wird
  • Automatische Wiederverbindung des Geräts nach dem Trennen der Verbindung
  • Beenden des Build-Vorgangs und Aufräumen des Client-Polling-Threads
  • Fehlerbehebungen und Stabilitätsverbesserungen.
  • Änderung der Gerätezuordnung nach dem Entladen/Laden einer Szene

Einstellung der Unterstützung​

  • ClientConnection.Configuration.HapticFrequencyHzist HapticPollFrequencywird durch ersetzt
  • ClientConnection.Configuration.PollDelayNsist HapticPollDelayNswird durch ersetzt
  • DeviceBehaviour.ConnectionStateChangedAsyncwird in der nächsten Hauptversion entfernt werden
  • Inverse3.Position은 Inverse3.CursorPositionwird durch … ersetzt
  • Inverse3.LocalPosition은 Inverse3.CursorLocalPositionwird durch … ersetzt
  • Inverse3.TryResetForce()ist Release()wird durch ersetzt
  • VerseGrip.LocalRotation은 VerseGrip.Orientationwird durch … ersetzt
  • JointsSetTorque(Vector3)ist JointsSetTorques(Joint3)wird durch … ersetzt
  • JointsSetTorque(float, float, float)ist JointsSetTorques(float, float, float)wird durch ersetzt
  • JointsSetAngles(Vector3)ist JointsSetAngles(Joint3)wird durch … ersetzt

← Zurück zur Inhaltsübersicht