Aller au contenu principal

← Retour à la page d'accueil

Journal des modifications 2.1.1

Dépendances​

  • Mise à jour : haply- inverse-c.dll version 2.1.1 (nécessite Inverse SDK >= 2.1)
  • Mise à jour : Haply.Inverse.dll version 2.1.1
  • Ajouté : com.unity.xr.core-utils version 2.3.0
avertissement

La compatibilité avec les versions de Unity antérieures à la version 2022.1.0f1 a été interrompue. Veuillez effectuer une mise à jour vers une version plus récente si vous rencontrez des problèmes de compatibilité.

Modifications incompatibles​

  • Inverse3 et VerseGrip vomiter device comme premier argument de l'événement ConnectionStateChanged
    • ConnectionStateChanged(state, prevState) > ConnectionStateChanged(device, state, prevState)
    • ConnectionStateChangedAsync(state, prevState) > ConnectionStateChangedAsync(device, state, prevState)
  • La propriété State « von DeviceMapper » est désormais en lecture seule.

Nouvelles fonctionnalités​

  • Le composant Inverse3Body applique l'orientation d'un dispositif « Inverse3 » à un GameObject spécifié.
  • Inverse3:
    • Afficher les données de l'appareil (Inspector) ControlMode ainsi que la dernière valeur envoyée à l'appareil Force, Position ou Angles an.
    • JointsAngles et JointsAngularVelocity.
    • Powered indique si l'appareil est actuellement alimenté en courant.
    • L'événement Unity PowerSupplyStatusChanged est déclenché dès que l'état de l'alimentation électrique change.
    • Orientation fournit l'orientation actuelle de l'appareil « Inverse3 ».
    • L'événement OrientationChangedAsync se déclenche dès que la position du corps change.
    • RequestOrientation() demande manuellement l'alignement du corps.
    • ControlMode renvoie le mode de contrôle actuel (CursorForce, CursorPosition, JointsTorques, JointsAngles).
    • L'événement Unity ControlModeChanged est déclenché dès que le mode de commande change.
    • ForceOutput, PositionOutput, JointsTorqueOutput et JointsAnglesOutput sont disponibles dans les derniers numéros.
    • Release() réinitialise la commande de l'appareil en envoyant une force nulle (remplace TryResetForce()).
    • CoordinateConverter sert à définir la conversion des coordonnées via un fichier de paramètres par défaut ou une valeur saisie directement.
    • ErrorEvent est déclenché dans le thread principal lorsqu'un événement d'erreur de ClientConnection survient pour un périphérique associé.
  • VerseGrip:
    • CoordinateConverter sert à définir la conversion des coordonnées via un fichier de paramètres par défaut ou une valeur saisie directement.
    • ErrorEvent est déclenché dans le thread principal lorsqu'un événement d'erreur de ClientConnection survient pour un périphérique associé.
  • DeviceMapper:
    • Affecte les appareils connectés lors de l'exécution.
    • Consultez Inverse3 pour connaître les caractéristiquesd'alimentation et d'orientation de chaque appareil Inverse3.
    • Modi von DeviceInfoPollingMode: Manual, Once (Standard) ou Continuous
    • devicesInfoPollDelay avec une valeur minimale garantie 1sec, si l'orientation du corps est demandée, sinon 0.5sec.
    • N'est initialisé que si le composant est activé.
    • Recherche d'appareils filtrés :
      • GetInverse3Devices(handedness) récupère les appareils Inverse3 filtrés selon la main dominante indiquée.
      • GetVerseGripDevices(handedness) récupère les appareils VerseGrip associés à des appareils « Inverse3 » correspondant à la main dominante indiquée.
      • GetInverse3(handedness) affiche le premier appareil « Inverse3 » correspondant à la main dominante indiquée.
      • GetInverse3(verseGrip) récupère l'appareil « Inverse3 » associé à un appareil VerseGrip spécifique.
      • GetVerseGrip(inverse3) récupère l'appareil VerseGrip associé à un appareil « Inverse3 » spécifié.
  • Les paramètres d'orientation ont été ajoutés aux composants VerseGripCursor et Inverse3Body.
  • VerseGrip.Orientation remplacé VerseGrip.LocalRotation.
  • Expliziter Inverse3Data- Type pour le cache de Inverse3:
    • Caractéristiques des états mis en mémoire tampon : CursorPosition, JointsAngles, JointsAngularVelocity, Orientation,
    • GravityCompensation, StatusPowerSupply, ConfigTorqueScaling
    • Caractéristiques des dépenses fiscales mises en réserve : ControlMode, CursorForceOutput, CursorPositionOutput, JointsTorqueOutput, JointsAnglesOutput.
    • coordinateConverter est utilisé pour convertir les données reçues et envoyées selon le système de coordonnées spécifié.
    • Le cache s'abonne au client afin d'être mis à jour automatiquement.
    • Les mises à jour du cache déclenchent des événements.
  • Expliziter Joint3-Structure comportant trois éléments de type float j0, j1 et j2 (utilisé par JointsSetTorque et JointsSetAngles).
  • Expliziter VerseGripData- Type de cache pour VerseGrip :
    • Caractéristiques des états mis en mémoire tampon : Orientation, IsAttached, ButtonCount.
    • États des touches enregistrés en mémoire tampon.
    • Le cache s'abonne au client afin d'être mis à jour automatiquement.
    • coordinateConverter est utilisé pour convertir les données reçues selon le système de coordonnées spécifié.
    • Les mises à jour du cache déclenchent des événements.
  • Convertisseur de coordonnées (remplacé par UnityConvert), afin de définir individuellement la manière dont l'espace de coordonnées de l'appareil est converti en espace de coordonnées Unity :
    • Inverse3CoordinateConverter pour la conversion des coordonnées du curseur et l'orientation du solide.
    • VerseGripCoordinateConverter pour la conversion de l'orientation VerseGrip.
    • Vector3Settings- et QuaternionSettings-Des structures utilisées pour stocker les paramètres de transformation des coordonnées.
    • Créer des paramètres par défaut pour les convertisseurs de coordonnées d'Inverse3 et de VerseGrip via le menu « Composants » ou « Ressources ».
      • Convertisseur «Inverse3 » (position du bras tendu vers l'avant) avec des réglages pour un appareil dont le bras est orienté vers l'utilisateur et dont le symbole LED se trouve sur le côté.
      • Convertisseur «Inverse3 » (position « Icon Forward ») avec des réglages adaptés à un appareil dont le symbole LED est tourné vers l'utilisateur et dont le bras est placé sur le côté.
      • Convertisseur VerseGrip (standard) pour un appareil dont l'écran est orienté vers l'avant et dont la touche d'entrée se trouve en haut.
  • Connexion client reçoit FirmwareVersion, GravityCompensation et TorqueScaling, dès qu'un appareil est ouvert.
  • Moniteur de connexion montre GravityCompensation, TorqueScaling et PowerSupply an.

Corrections de bogues​

  • Inverse3.DeviceStateChanged a également été utilisé à tort dans le cas de JointsSetTorque et JointsSetAngles déclenché.
  • Reconnexion automatique de l'appareil après une déconnexion.
  • Nettoyage du thread de sondage du client à la fin de la compilation.
  • Correction de bugs et amélioration de la stabilité.
  • Problème résolu concernant l'affectation des appareils après le chargement ou le déchargement d'une scène

Obsolète​

  • ClientConnection.Configuration.HapticFrequencyHz a été remplacé par HapticPollFrequency remplacé
  • ClientConnection.Configuration.PollDelayNs a été remplacé par HapticPollDelayNs remplacé
  • DeviceBehaviour.ConnectionStateChangedAsync sera supprimé dans la prochaine version majeure
  • Inverse3.Position a été remplacé par Inverse3.CursorPosition remplacé
  • Inverse3.LocalPosition a été remplacé par Inverse3.CursorLocalPosition remplacé
  • Inverse3.TryResetForce() a été remplacé par Release() remplacé
  • VerseGrip.LocalRotation a été remplacé par VerseGrip.Orientation remplacé
  • JointsSetTorque(Vector3) a été remplacé par JointsSetTorques(Joint3) remplacé
  • JointsSetTorque(float, float, float) a été remplacé par JointsSetTorques(float, float, float) remplacé
  • JointsSetAngles(Vector3) a été remplacé par JointsSetAngles(Joint3) remplacé

← Retour à la page d'accueil