Rubik's cube - Réalité virtuelle - Écran seul

Поділитися
Вставка
  • Опубліковано 30 жов 2024
  • Cette vidéo de démonstration a été réalisée dans le cadre d'un enseignement de réalité virtuelle à l'université de technologie de Compiègne (UTC). Ce projet a été réalisé en binôme.
    Voir aussi : vidéo avec écran et joueur - • Rubik's cube - Réalité...
    ** Objectif du projet **
    Ce projet avait pour objectif d'étudier les questions d'interactions utilisateur dans un environnement virtuel. Nous avons choisi le Rubik's cube qui présentait l'avantage d'être simple à modéliser, nous permettant de nous consacrer réellement à la problématique centrale, et de proposer des interactions relativement complexes dans les trois dimensions de l'espace virtuel.
    ** Contraintes techniques **
    Nous avons dû tenir compte du matériel mis à notre disposition pour ce projet et des limitations qui en découlaient. Le matériel que nous avons finalement employé était :
    Un projecteur stéréoscopique pour la 3D
    Un wand : télécommande avec capteur de position à 6 degrés de liberté
    Un flock of birds : capteur de position à 6 degrés de liberté
    Par ailleurs, une bibliothèque logicielle de reconnaissance de formes réalisée dans le cadre d'un autre projet a été mise à notre disposition.
    ** Manipulation **
    L'utilisateur tient le flock of birds dans sa main gauche et le wand dans sa main droite. Les capteurs permettent d'utiliser les deux mains dans l'environnement virtuel. Les boutons du wand sont utilisés pour déterminer l'action à accomplir :
    Pas de bouton : pas d'action
    Bouton de gauche : tourner la face sélectionnée avec la main gauche
    Bouton central : tourner le cube sur lui-même (main droite)
    Bouton de droite : tourner la face sélectionnée avec la main droite
    Pour tourner une face, l'utilisateur sélectionne la face par pointage, appuie sur le bouton correspondant à la main utilisée et dessine avec cette main un demi-cercle pour une rotation d'un quart de tour ou un cercle pour une rotation d'un demi-tour. Il aurait été plus aisé d'avoir deux wands, mais nous n'en avions qu'un.
    Tourner le cube sur lui-même se fait par translation de bas en haut et de gauche à droite ainsi que par rotation du poignet.
    On peut mélanger le cube en dessinant un double-cercle.
    ** Représentation **
    Les deux mains sont représentées par des cônes dans l'environnement virtuel. Un rayon est utilisé pour pointer (raycasting). La sélection d'une face se fait par intersection entre cette face et un des rayons et est signalée par une ombre rouge sur la face ainsi que par l'affichage de la couleur correspondante (couleur du carré central) en bas de l'écran (à droite ou à gauche en fonction de la main).
    ** Enseignements principaux **
    1) Le fait que la main droite détermine l'action, même lorsque l'action est réalisée avec la main gauche, rend l'utilisation de la main gauche fort peu naturelle. L'utilisateur a tendance à « oublier » d'utiliser cette main avec laquelle la manipulation est si peu intuitive.
    2) La 3D stéréoscopique et le réalisme graphique n'ont pas semblé influencer la capacité de l'utilisateur à percevoir « dans » l'environnement virtuel. Les aides visuelles telles que le raycasting ou la redondance des informations rendent l'environnement beaucoup plus facilement « saisissable » (par exemple l'affichage de la face sélectionnée en bas de l'écran qui rend possible, quoique difficile, la sélection d'une face cachée).
    3) Le positionnement dans l'environnement basé sur la position des mains dans l'environnement réel est peu intuitif. Un positionnement basé sur le déplacement (positions relatives) aurait sans doute amélioré le vécu de l'utilisateur (problème bien connu stylet/souris pour l'interaction 2D).
    4) L'enseignement principal est sans doute que la capacité pour le joueur d'agir dans les trois dimensions est essentielle pour réussir à percevoir dans les trois dimensions. Nous avions tenté par exemple de supprimer la rotation du cube autour de l'axe « profondeur », et l'utilisateur devait faire de gros efforts pour ne pas « se perdre » lorsqu'il faisait tourner le cube. Avec les 6 degrés de liberté (trois axes), la manipulation était beaucoup plus aisée et l'environnement virtuel mieux « perçu ».
    Par ailleurs, alors que les rotations de face nous ont surtout posé des difficultés techniques, le choix des mouvements permettant de déplacer le cube a été crucial pour permettre à l'utilisateur de se « repérer » correctement dans l'environnement virtuel afin de ne pas perdre le fil au cours d'une séquence de mouvements.
  • Наука та технологія

КОМЕНТАРІ • 1

  • @polletfa
    @polletfa  13 років тому

    @kizadory 3ds Max pour modéliser le cube et Virtools pour l'application. La reconnaissance des gestes a été programmée en C++ par un autre groupe d'étudiants.