Passer directement au contenu principal

Inverse3 et le curseur de VerseGrip

Haply Le pack Inverse Unity comprend des composants de curseur dédiés aux périphériquesInverse3 et VerseGrip, permettant un contrôle et une interaction précis au sein de l'environnement Unity. Ces composants (Inverse3 Cursor et VerseGripCursor) sont conçus pour ajuster dynamiquement la position et la rotation des objets de jeu en fonction des données reçues des manettes correspondantes.

Résumé​

Le composant « curseur » sert de pont entre un périphérique physique Haply et un objet de jeu virtuel dans Unity ; il convertit les données de position et de rotation du périphérique en déplacement et en orientation de l'objet de jeu. Grâce à cette conversion, l'utilisateur peut interagir de manière intuitive avec l'environnement virtuel, et ses mouvements physiques se traduisent par des réactions dans l'espace virtuel.

Classe CursorBase​

Au cœur du composant « curseur » se trouve CursorBase En classe,Inverse3Cursor et VerseGripCursor fournit des fonctionnalités de base communes aux deux. Cela inclut l'association des périphériques, l'instanciation des modèles et la gestion du contrôle de l'affichage.

Principales propriétés et méthodes​

  • Périphérique: associé au périphérique permettant de contrôler le curseur. Il est configuré automatiquement lors de l'exécution.
  • ModèlePrefab: Spécifie le préfabriqué à utiliser pour le modèle de curseur. Ce préfabriqué est ModelParent est automatiquement instancié en tant qu'enfant de celui-ci.
  • ModelParent: définit la transformation parent du préfabriqué de modèle instancié. Si cette propriété n'est pas définie, la transformation du curseur est utilisée par défaut.
  • Modèle: Fait directement référence au modèle de curseur existant dans la scène. Une fois cette option activée,ModelPrefab Aucune instanciation n'est effectuée.
  • HideControllerModel: permet de contrôler l'affichage du modèle du curseur. En fonction des besoins du gameplay, il est possible de l'afficher ou de le masquer de manière dynamique.
  • Rayon: indique le rayon lorsque le modèle du curseur est une sphère. Il est calculé à partir du périmètre de la maillage du modèle.
  • Douceur: PositionSmoothness et RotationSmoothness Elle propose des options permettant d'assurer un déplacement et une rotation fluides du curseur, ce qui améliore l'expérience utilisateur.

Remarque : il est important de référencer correctement le modèle de curseur dans le composant de curseur afin d'éviter tout comportement inattendu.

curseur

Le modèle de curseur par défaut créé par le dispositif haptique comporte des points colorés représentant trois axes :« Forward »(bleu),« Up »(vert) et« Right »(rouge). Cette conception permet de repérer plus facilement l'orientation de l'appareil dans l'environnement virtuel. Sur un VerseGrip calibré,« Forward » correspond à la direction vers laquelle pointe le doigt, tandis que« Up » correspond à la face supérieure.

Inverse3 Composant « Cursor »​

Inverse3Cursor Cette fonction est réservée aux périphériques « Inverse3 » et met à jour la position locale du curseur dans Unity afin qu'elle reflète la position physique du périphérique.

PositionSmoothness Dans les paramètres, vous pouvez régler la fluidité du déplacement du curseur. En contrôlant la réactivité du curseur aux mouvements physiques, vous améliorez l'expérience utilisateur.

Composant VerseGrip Cursor​

VerseGripCursor Il s'agit d'une extension des fonctionnalités de l'appareil VerseGrip qui met à jour la rotation du curseur dans Unity afin qu'elle reflète la rotation physique de l'appareil.

useDeviceLocalSpace Ces paramètres permettent de choisir s'il faut s'aligner sur l'orientation du monde ou sur celle de l'objet parent, ce qui améliore la flexibilité de la conception.

RotationSmoothness Ce paramètre permet de contrôler la fluidité de la rotation du curseur. Il permet ainsi aux développeurs d'ajuster avec précision la réactivité du curseur aux changements d'orientation du VerseGrip physique.

Détails de la mise en œuvre​

Lors de l'initialisation,Model Si aucune valeur n'est attribuée, le composant curseur utilise la valeur spécifiée ModelPrefab を ModelParent sont instanciés en tant qu'enfants afin d'assurer leur représentation visuelle au sein de la scène. Ces composants sont associés aux Contrôleur de périphériques Il se synchronise et ajuste en temps réel la position et l'orientation du curseur en fonction des mouvements du périphérique physique.

Vous pouvez soit attacher les deux composants au même GameObject pour contrôler leur position et leur rotation, soit les attacher à des GameObjects distincts en fonction de vos besoins. Les développeurs disposent ainsi d'outils flexibles leur permettant de créer des expériences haptiques immersives dans Unity.