Aller au contenu

Intégrer la veste Skinetic d'Actronika

Image title 2

La veste Skinetic d'Actronika est compatible avec VRmaze à partir de la version 2023 via l'API Skinetic (SkineticSDK.dll).

Compatibilité

Reposant sur le fichier SkineticSDK.dll, VRmaze supporte l'ensemble des équipements Actronika compatible avec l'API Skinetic.

Licence spécifique nécessaire

L'utilisation de la veste Skinetic nécessite une licence spécifique de VRmaze. Renseignez-vous auprès de votre revendeur pour plus d'informations.

Installation

la veste Skinetic d'Actronika nécessite la copie d'un fichier dans le dossier d'installation de VRmaze. Ce fichier est obligatoirement fourni par Actronika qui en est propriétaire. Il convient en effet de copier le fichier SkineticSDK.dll dans le dossier d'installation de VRmaze (%InstallFolder%\VRmazeViewer_Data\Plugins\x86_64\).

SkineticSDK.dll

Le fichier SkineticSDK.dll est nécessaire au fonctionnement de la veste Skinetic directement dans VRmaze. Ce fichier est la propriété d'Actronika et n'est pas intégré à l'installeur de VRmaze. Renseignez-vous auprès d'Actronika ou son revendeur pour en savoir plus.

Version de la librairie

Il convient de copier la version X64 de l'API pour fonctionner dans VRmaze.

Principe de fonctionnement dans VRmaze

Dans VRmaze, l'utilisation d'une veste Skinetic s'effectue en deux étapes principales. Tout d'abord, un gestionnaire qui permet non seulement d'établir la communication mais aussi de précharger l'ensemble des effets à lire lors de la passation. Un ensemble de nœuds secondaires permettent la configuration de ces effets. Des nœuds de déclenchements permettent d'emettre les effets à des moments spécifiques.

Gestionnaire de communication

Image title 2

Le gestionnaire de communication avec la veste Skinetic.

Le gestionnaire de communication va chercher à se connecter automatiquement via la méthode choisie. Si la communication est établie, il enregistrera l'ensemble des effets auprès de la veste. Les paramètres de connexion sont les suivants :

  • Le numéro de série (par défaut 0, ce qui permet de se connecter à la première veste reconnue)
  • La méthode de communication (auto-détection, USB, Bluetooth ou Wifi)

Ajout et type de sensation

VRmaze propose un ensemble de sensations simples pouvant être utilisées en passation. La sensation de base consiste à utiliser un fichier SPN préalablement créé dans le logiciel [Unitouch Studio] (https://www.skinetic.actronika.com/unitouch-studio) :

Image title 2

La sensation sous forme de fichier SPN.

VRmaze propose une sensation spécifique de type Direction Belt Sensation. Cette sensation permet d’émettre un effet en fonction de deux vecteurs directions, ce qui fera vibrer automatiquement certains vibrateurs de la veste. Cette sensation ne dispose pas de fichier SPN mais directement de l'identifiant du son à jouer directement. La difficulté réside dans le fait de connaitre l'identifiant du son à jouer.

Image title 2

Les propriétés de la sensation Direction Belt.

Obtenir l'index du son

La sensation Direction Belt n'utilise pas de fichier SPN, mais directement l'identifiant du son à jouer. La difficulté réside dans le fait de connaitre le bon identifiant pour le bon son à jouer. Une méthode pour l'obtenir est de créer un fichier SPN dans Unitouch Studio contenant le son voulu et d'éditer ce fichier avec le bloc note. La valeur a rechercher est associé au mot clé SignalIndex.

Sensation Direction Belt

La sensation Direction Belt n'est exploitable qu'avec des graphes de comportements.

Nœuds de déclenchement

VRmaze propose plusieurs nœuds de déclenchement des sensations. Ces noeuds disposent de paramètres communs :

  • Volume (de 0 à 250)
  • Vitesse (>0, par défaut, 1)
  • Nombre de répétitions (0 pour une répétition infinie)
  • Délai de répétition (>0, en seconde)
  • Durée maximale (0 pour une durée infinie)
  • Identifiant de sensation (permettant de jouer une sensation spécifique)
  • Priorité (défaut 50)
  • Touche d’arrêt (permettant l'arret de l'effet en cours de lecture)

Image title 2

Les propriétés du déclencheur par timecode.

Les nœuds de déclenchement varient en fonction de leur type :

  • Déclencheur par timecode (on indique un timecode de déclenchement)
  • Déclencheur par touche du clavier (la touche saisie déclenche la lecture)

Paramètres variables

Les nœuds de déclenchement disposent de propriétés pouvant faire l'objet de contrôle animé. il est ainsi possible de modifier les propriétés (volume, vitesse etc.) dans le temps, toutefois, il faudra déclencher à nouveau une lecture pour prendre en compte ces variations, l'effet en cours de lecture n'est pas adapté en temps réel.

Graphe de comportement

L'ensemble des sensations peuvent être contrôlées via des graphes de comportements. Ces comportements peuvent être attachés à tout type d'entité. VRmaze propose plusieurs nodes de graphe permettant la création, la lecture et l’arrêt d'effets.

Pour créer et jouer un effet, deux nodes sont disponibles, et chacun d'eux renvoi une valeur entière correspondant à l'identifiant d'effet, qui peut être utilisé dans d'autres nodes, notamment pour arreter un effet précis :

  • Create and play effect
  • Quick create and play effect

Image title 2

Les deux nodes de création et lecture d'effet.

Identifiant d'effet

L'identifiant d'effet est renvoyé lors de la création de se dernier. Ainsi, les nodes de création d'effet dispose d'une valeur de sortie correspondant à l'identifiant en question.

L’arrêt des effets en cours de lecture se fait par deux nodes distincts :

  • Stop effect
  • Stop All effects

Image title 2

Les deux nodes d’arrêt d'effets.

Le node Stop effect prend en paramètre un identifiant d'effet tandis que le node Stop all effects arrêtera la lecture de tous les effets en cours.

Graphe de comportement

Les graphes de comportements peuvent gérer des déclenchements complexes.

Accession aux sensations et au gestionnaire Skinetic

Chacun de ces nodes de graphe de comportement nécessite un paramètre d'entrée correspondant soit à la sensation, soit au gestionnaire. Comme dans tout graphe de comportement, il faut donc chercher la bonne entité correspondant au paramètre requis. Par exemple, en imaginant un gestionnaire nommé SkineticManager attaché au protocole, nous pouvons le retrouver via ce graphe :

!

Graphe permettant l'accès au gestionnaire Skinetic et à n'importe quelle Sensation.

Voici un exemple complet de déclenchement et arrêt par touche du clavier, avec reférencement du manager et d'une sensation :

!

Graphe complet de contrôle d'une sensation au clavier.

Sensation Direction Belt

Le contrôle des sensations de types Direction Belt est différent. En effet, l'ensemble du contrôle est automatisé, et seuls deux nodes permettent d'affiner la sensation. Cette sensation est provoquée à partir d'une direction donnée. Il est possible de fournir cette direction sous d'un Vecteur 3D direction ou sous forme d'un couple d'entités 3D (dans ce cas, il est nécessaire de fournir une entité Sujet et un objet 3D, et la direction sera calculée). VRmaze calculera l'angle correspondant aux données d'entrée et fera vibrer la veste en conséquence.

Voici un exemple de graphe permettant le contrôle d'une sensation Direction Belt en prennant en paramètre le sujet courant et une cible sous forme d'objet 3D.

!

Graphe complet de contrôle d'une sensation Direction Belt.

Position des vibrateurs

La position des vibrateurs est pré-intégrée à VRmaze et la sensation Direction Belt fera vibrer le ou les vibrateurs correspondant. Le positionnement des vibrateurs de la veste permet d'avoir une bonne précision sur l'avant et l'arrière au détriment de la précision latérale, ou moins de vibrateurs sont présents.