Design d'interaction — Réalité Virtuelle
Cours VR

Design d'Interaction VR — Niveau 2 : Intermédiaire

Résumé EN (abstract): This intermediate VR interaction design course builds on WebXR basics to develop rigorous spatial design skills. Students learn VR-specific ergonomics (cybersickness prevention, comfort zones, spatial UI), implement multi-room navigation with teleportation, design 3D interfaces (world-locked menus, wrist UI), conduct structured user testing using the System Usability Scale (SUS), and iterate based on data. The capstone project is a cultural mediation VR experience tested with ≥3 users. Outline: Spatial patterns → VR ergonomics → Advanced spatial UI → Multi-zone navigation → Spatial audio design → Structured user testing (SUS) → Data-driven iteration → Visual design in 3D space.

Objectifs d'apprentissage

À la fin de ce cours, l'étudiant·e sera capable de :

  1. Analyser (Bloom : analyzing) une expérience VR existante selon les critères de présence, confort et affordances spatiales.
  2. Appliquer (applying) les principes ergonomiques VR (zones de confort, limites de locomotion, gestion de la cybersickness).
  3. Concevoir (creating) une interface VR diégétique ou world-locked (panneau, poignet, tableau de bord).
  4. Implémenter (applying) une navigation multi-zones avec téléportation et waypoints en A-Frame.
  5. Évaluer (evaluating) une expérience VR avec le questionnaire SUS (System Usability Scale) et interpréter les scores.
  6. Produire (creating) une expérience VR de médiation culturelle itérée après tests documentés.

Module 1 — Patterns d'interaction spatiale (2h)

Concept

Les patterns d'interaction spatiale sont des solutions récurrentes à des problèmes récurrents en design VR. Les connaître évite de réinventer des solutions mal conçues.

Cinq patterns fondamentaux :

PatternDescriptionExemple
Saisie proximaleAttraper les objets proches par contactRamasser un livre dans une bibliothèque VR
RaycastingRayon depuis la tête ou la main pour sélectionner des objets distantsPointer un bouton sur un mur
Gaze + dwellFixer une cible pendant N secondes pour la sélectionnerMenu accessible sans contrôleur
Snap-to-socketL'objet se verrouille sur un point d'ancrage définiPoser une pièce dans un slot (puzzle, levier)
Locomotion téléportationArc de téléportation vers un point navigableExplorer une galerie d'art

Règle de cohérence : ne pas mélanger plusieurs patterns d'entrée sans logique claire. Si le raycasting est le mode principal, l'utilisateur ne doit pas deviner qu'il faut parfois marcher physiquement.

Lab 1.1 — Audit de patterns

Étapes :

  1. Choisir une expérience VR existante en navigateur (ou un exemple A-Frame)
  2. Identifier les patterns utilisés (au moins 2)
  3. Pour chaque pattern : est-il bien signalé ? Cohérent avec les autres patterns ? Accessible aux non-gamers ?
  4. Proposer 1 amélioration concrète

Module 2 — Ergonomie VR et prévention de la cybersickness (2h)

Concept

L'ergonomie VR est l'ensemble des contraintes qui permettent à un être humain d'utiliser une expérience VR pendant une durée prolongée sans inconfort ni danger.

Zone de confort visuel (depth of field) :

Prévention cybersickness — checklist :

Références :

LaViola Jr., J. J. (2000). A Discussion of Cybersickness. ACM SIGCHI Bulletin, 32(1), 47–56.

Lab 2.1 — Audit de confort

Étapes :

  1. Reprendre votre projet de Niveau 1
  2. Appliquer la checklist cybersickness
  3. Identifier 3 points d'inconfort potentiels
  4. Proposer 1 fix par point

Module 3 — Interfaces spatiales avancées (2h)

Concept

En VR, l'interface utilisateur 2D plate désoriente. Les meilleures VR intègrent l'UI dans l'espace :

Types d'UI en VR :

TypeDescriptionUsage
World-lockedPanneau ancré dans l'espace virtuel (il ne suit pas la tête)Informations contextuelles, menus de salle
Body-locked / wristTableau de bord attaché au poignet ou à la mainMenu principal, inventaire
Head-lockedSuit exactement la tête (HUD)Uniquement mini-indicators (health bar) — inconfortable en grand
DiégétiqueIntégrée au décor (tableau, téléphone VR, console)Immersion maximale

Panneau world-locked en A-Frame :

<a-entity id="info-panel" position="-1.5 1.5 -2.5" rotation="0 15 0">
 <a-plane width="1.5" height="0.8" color="#1a1a2e" opacity="0.85"></a-plane>
 <a-text value="Œuvre : DATA RUG\nArtiste : Kamel Ghabte\nTechnique : tapis IA génératif"
 position="0 0 0.01" width="1.3" color="white" align="center"></a-text>
</a-entity>

Lab 3.1 — Panneau d'information world-locked

Étapes :

  1. Créer un panneau world-locked dans votre scène
  2. Positionnement : placez-le là où l'utilisateur le verra naturellement sans chercher
  3. Contenu : 3 lignes d'information sur un objet de la scène
  4. Ajouter une interaction : click sur le panneau → l'objet auquel il correspond s'illumine

Module 4 — Navigation multi-zones avec waypoints (2h)

Concept

Les expériences VR avec plusieurs zones (salles, espaces distincts) nécessitent un système de navigation cohérent. Les waypoints de téléportation sont les marqueurs visuels qui indiquent où l'utilisateur peut aller.

Bonnes pratiques waypoints :

Template multi-zones A-Frame (structure) :

<!-- Zone 1 — Espace d'accueil -->
<a-entity id="zone-accueil" position="0 0 0">
 <a-plane id="waypoint-zone2" class="waypoint"
 position="0 0.01 -5" rotation="-90 0 0"
 width="0.8" height="0.8" color="#00ffcc" opacity="0.7"
 animation__pulse="property: opacity; from: 0.5; to: 1; dir: alternate; loop: true; dur: 1200">
 </a-plane>
</a-entity>
<!-- Zone 2 — Galerie -->
<a-entity id="zone-galerie" position="0 0 -10">
 <!--... -->
</a-entity>

Lab 4.1 — Expérience 2 zones

Étapes :

  1. Créer 2 zones distinctes (sol de couleur différente pour les distinguer visuellement)
  2. Ajouter 1 waypoint dans chaque zone (pour revenir)
  3. Ajouter une transition visuelle minimale au moment de la téléportation (fade in/out)
  4. Tester : un utilisateur sans explication trouve-t-il les waypoints en moins de 30 secondes ?

Module 5 — Audio spatial avancé (2h)

Concept

Le design sonore est le parent pauvre des prototypes VR — et pourtant il compte pour 30–40% du sentiment de présence. Un environnement VR sonore convainc même sur un écran 2D.

Architecture sonore d'une expérience VR :

Couche 1 : Ambiance (loop, bas volume)
 └─ Son d'environnement global (vent, hall, salle)

Couche 2 : Sons positionnels (anchored in 3D)
 └─ Source sonore A liée à l'objet A (positional: true)
 └─ Source sonore B liée à l'objet B (positional: true)

Couche 3 : Sons d'UI/feedback
 └─ Sons de validation d'interaction (courts, 100–300ms)
 └─ Sons d'erreur / limite

Sonification des transitions de zone :

Implémentation crossfade simplifié (JavaScript A-Frame) :

document.querySelector('#ambiance-zone1').setAttribute('sound', 'volume', 0);
document.querySelector('#ambiance-zone2').setAttribute('sound', 'volume', 0.4);

Lab 5.1 — Design sonore 2 zones

Étapes :

  1. Trouver 2 ambiances sonores CC0 distinctes (ex. nature/urbain, intérieur/extérieur)
  2. Assigner 1 ambiance par zone
  3. Ajouter 2 sons positionnels (un par zone, liés à un objet)
  4. Tester les yeux fermés : peut-on savoir dans quelle zone on est au son seul ?

Module 6 — Tests utilisateurs structurés : SUS (2h)

Concept

Le System Usability Scale (SUS) est un questionnaire standardisé de 10 questions qui mesure l'utilisabilité perçue d'un système. Score de 0 à 100. Score ≥ 68 = utilisabilité acceptable ; ≥ 85 = excellent.

Brooke, J. (1996). SUS: A "quick and dirty" usability scale. Dans P. Jordan et al. (Eds.), Usability Evaluation in Industry. Taylor & Francis. https://www.usability.gov/how-to-and-tools/methods/system-usability-scale.html

Les 10 questions SUS (adaptées VR) :

  1. Je pense que j'aimerais utiliser cette expérience VR fréquemment.
  2. J'ai trouvé cette expérience VR inutilement complexe.
  3. J'ai trouvé l'expérience VR facile à utiliser.
  4. Je pense que j'aurais besoin du soutien d'une personne technique pour utiliser cette expérience VR.
  5. J'ai trouvé que les différentes interactions de cette expérience VR étaient bien intégrées.
  6. Je pense qu'il y avait trop d'incohérences dans cette expérience VR.
  7. J'imagine que la plupart des gens apprendraient à utiliser cette expérience VR très rapidement.
  8. J'ai trouvé l'expérience VR très inconfortable à utiliser.
  9. Je me suis senti·e très confiant·e en utilisant cette expérience VR.
  10. J'ai dû apprendre beaucoup de choses avant de pouvoir utiliser cette expérience VR.

Échelle de Likert 1–5 pour chaque question. Calcul SUS : Σ[(score questions impaires - 1) + (5 - score questions paires)] × 2.5

Lab 6.1 — Test SUS avec 3 testeurs

Étapes :

  1. Préparer l'expérience avec les zones (Lab 4.1) + le son (Lab 5.1)
  2. Rédiger 3 tâches concrètes pour le test
  3. Faire tester 3 personnes (sans aide pendant les tâches)
  4. Faire remplir le SUS immédiatement après la session
  5. Calculer le score SUS pour chaque testeur + moyenne

Module 7 — Itération basée sur les données (2h)

Concept

Les données de test servent à prioriser les corrections. Toutes les observations ne se valent pas.

Grille de priorisation (Eisenhower VR) :

ProblèmeImpact présenceImpact confortPriorité
Waypoint invisibleHaut-P0
Cybersickness sur un déplacement-CritiqueP0
Son mal calibréMoyen-P1
Couleur de panneau peu lisibleFaible-P2

Règle d'itération :

Lab 7.1 — Plan d'itération

Étapes :

  1. Lister tous les problèmes révélés en Module 6
  2. Les classer P0/P1/P2
  3. Fixer les P0 dans votre prototype
  4. Retester avec 1 testeur : le P0 est-il résolu ?

Module 8 — Design visuel dans l'espace 3D (2h)

Concept

Le design visuel VR suit les règles du design graphique mais dans 3 dimensions. Les erreurs classiques :

Règles pratiques :

Grille typographique 3D :

<!-- Titre principal -->
<a-text value="Titre" width="2.5" color="white" align="center"
 position="0 2 -3" font="roboto"></a-text>
<!-- Sous-titre -->
<a-text value="Sous-titre" width="1.8" color="#cccccc" align="center"
 position="0 1.6 -3" font="roboto"></a-text>
<!-- Corps -->
<a-text value="Texte de corps" width="1.5" color="#aaaaaa"
 position="0 1.2 -3" font="roboto"></a-text>

Lab 8.1 — Audit visuel

Étapes :

  1. Prendre 3 screenshots de votre expérience depuis la position de départ
  2. Vérifier le contraste texte/fond sur chaque screenshot
  3. Identifier les éléments visuellement surchargés
  4. Appliquer 2 corrections visuelles et documenter le before/after

Projet fil rouge — "Médiation culturelle VR"

Brief

Créer une expérience VR de médiation culturelle (art, patrimoine, science, design) qui guide et informe un visiteur à travers 2 espaces distincts, avec au moins 3 œuvres ou objets présentés.

Contraintes

Livrables

  1. Fichier HTML fonctionnel (ou lien hébergement)
  2. Documentation de design (2 pages A4) : concept, personas, plan de navigation, décisions de design
  3. Rapport de test : grilles SUS des 3 testeurs, score moyen, problèmes identifiés
  4. Rapport d'itération : P0 fixés, P1 planifiés
  5. Présentation (8 min) : démo live + analyse des retours

Rubrique d'évaluation

CritèreInsuffisant (1)Satisfaisant (2)Bon (3)Excellent (4)
Navigation multi-zonesZones inaccessibles ou désorientation2 zones accessibles, waypoints peu visibles2 zones, waypoints clairs, feedback de transitionNavigation fluide, feedback riche, 0 désorientation
Interfaces spatialesUI 2D plate, mal positionnéePanneaux world-locked présents3+ panneaux bien positionnés, lisiblesPanneaux intégrés au design de l'espace (diégétiques)
Interactions< 3 interactions ou sans états3 interactions, états incomplets3 interactions, 3 états chacune3+ interactions, transitions fluides, feedback multimodal
Design sonoreAbsentAmbiance seuleAmbiance + sons positionnelsAmbiance par zone + crossfade + sons d'interaction
Tests SUSAbsents1–2 testeurs, SUS incomplet3 testeurs, score calculé3+ testeurs, analyse + itération documentée
Qualité visuelleDésorganisée, contraste insuffisantLisible mais non cohérenteCohérente, contraste correctPalette définie, hiérarchie typographique, espace négatif

Lectures & ressources


Niveau suivant : Design d'Interaction VR — Niveau 3Formation sur mesure pour votre école ou équipe : Prendre rendez-vous

Formation sur mesure

Workshop intensif (1–2 j) — écoles, studios, musées. Théorie condensée + labs + accompagnement projet.

Prendre rendez-vous (30 min, gratuit) →