<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Human Factors | Étienne Peillard</title><link>https://www.etiennepeillard.com/fr/category/human-factors/</link><atom:link href="https://www.etiennepeillard.com/fr/category/human-factors/index.xml" rel="self" type="application/rss+xml"/><description>Human Factors</description><generator>Wowchemy (https://wowchemy.com)</generator><lastBuildDate>Wed, 11 Mar 2026 00:00:00 +0000</lastBuildDate><image><url>https://www.etiennepeillard.com/media/sharing.png</url><title>Human Factors</title><link>https://www.etiennepeillard.com/fr/category/human-factors/</link></image><item><title>TP — Avatars et incarnation en réalité virtuelle</title><link>https://www.etiennepeillard.com/fr/teaching/lab/avatar/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://www.etiennepeillard.com/fr/teaching/lab/avatar/</guid><description>&lt;h3 id="vue-densemble">Vue d’ensemble&lt;/h3>
&lt;p>Dans ce TP, vous explorerez comment les avatars sont créés, animés et incarnés en réalité virtuelle.&lt;/p>
&lt;p>Les avatars constituent un élément central des systèmes immersifs. Ils permettent aux utilisateurs de percevoir et d’interagir avec un environnement virtuel à travers un corps virtuel. Cependant, la conception et la calibration des avatars peuvent fortement influencer &lt;strong>l’embodiment&lt;/strong>, &lt;strong>le confort&lt;/strong>, et &lt;strong>la perception de l’utilisateur&lt;/strong>.&lt;/p>
&lt;p>Dans ce TP vous allez :&lt;/p>
&lt;ul>
&lt;li>créer et importer un avatar humanoïde&lt;/li>
&lt;li>l’animer à l’aide du suivi VR&lt;/li>
&lt;li>expérimenter des modifications du corps de l’avatar&lt;/li>
&lt;li>évaluer leur impact sur &lt;strong>l’embodiment et l’expérience utilisateur&lt;/strong>&lt;/li>
&lt;/ul>
&lt;h2 id="1--création-dun-avatar">1 — Création d’un avatar&lt;/h2>
&lt;p>Créez ou téléchargez un avatar à l’aide de &lt;strong>Mixamo&lt;/strong>.&lt;/p>
&lt;ol>
&lt;li>Allez sur &lt;strong>&lt;a href="https://www.mixamo.com" target="_blank" rel="noopener">https://www.mixamo.com&lt;/a>&lt;/strong>&lt;/li>
&lt;li>Sélectionnez un personnage dans la bibliothèque&lt;/li>
&lt;li>Téléchargez le personnage au format &lt;strong>FBX&lt;/strong>&lt;/li>
&lt;/ol>
&lt;h3 id="importer-lavatar-dans-unity">Importer l’avatar dans Unity&lt;/h3>
&lt;ol>
&lt;li>Créez un nouveau &lt;strong>projet Unity 3D&lt;/strong>.&lt;/li>
&lt;li>Importez le &lt;strong>modèle FBX de l’avatar&lt;/strong> dans le projet.&lt;/li>
&lt;li>Glissez l’avatar dans la scène.&lt;/li>
&lt;/ol>
&lt;h4 id="configurer-les-matériaux-et-textures">Configurer les matériaux et textures&lt;/h4>
&lt;p>Lors de l’importation de modèles FBX, Unity peut intégrer les matériaux et textures directement dans le fichier du modèle. Il est préférable de les extraire afin de pouvoir les modifier.&lt;/p>
&lt;ol>
&lt;li>Sélectionnez le modèle de l’avatar dans le panneau &lt;strong>Project&lt;/strong>.&lt;/li>
&lt;li>Dans l’&lt;strong>Inspector&lt;/strong>, ouvrez l’onglet &lt;strong>Materials&lt;/strong>.&lt;/li>
&lt;li>Cliquez sur :&lt;/li>
&lt;/ol>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Extract Materials
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">Extract Textures
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;ol start="4">
&lt;li>Assignez les matériaux extraits aux éléments de mesh appropriés si nécessaire.&lt;/li>
&lt;li>Assignez les textures extraites aux bons paramètres des matériaux.&lt;/li>
&lt;li>Vérifiez que l’avatar est correctement rendu dans la scène.&lt;/li>
&lt;/ol>
&lt;h2 id="2--utiliser-lavatar-dans-une-scène-vr">2 — Utiliser l’avatar dans une scène VR&lt;/h2>
&lt;p>Suivez le tutoriel disponible ici :&lt;/p>
&lt;p>&lt;strong>Unity VR Avatar Tutorial&lt;/strong>&lt;/p>
&lt;p>&lt;a href="https://immersive-insiders.com/blog/how-to-animate-your-avatar-for-vr-in-unity" target="_blank" rel="noopener">https://immersive-insiders.com/blog/how-to-animate-your-avatar-for-vr-in-unity&lt;/a>&lt;/p>
&lt;blockquote>
&lt;p>⚠️ Note&lt;br>
Le tutoriel original utilise l’API Ready Player Me, qui a depuis été abandonnée.&lt;br>
Ignorez toutes les étapes liées à Ready Player Me et utilisez à la place &lt;strong>l’avatar Mixamo que vous avez importé&lt;/strong>.&lt;/p>
&lt;/blockquote>
&lt;p>L’objectif de cette partie est de :&lt;/p>
&lt;ul>
&lt;li>ajouter l’avatar dans une scène VR&lt;/li>
&lt;li>connecter la tête et les mains de l’avatar au &lt;strong>casque VR et aux contrôleurs&lt;/strong>&lt;/li>
&lt;li>observer comment les mouvements de l’avatar suivent les mouvements de l’utilisateur.&lt;/li>
&lt;/ul>
&lt;h2 id="3--cinématique-inverse-inverse-kinematics--ik">3 — Cinématique inverse (Inverse Kinematics — IK)&lt;/h2>
&lt;p>En réalité virtuelle, les avatars ne disposent généralement pas d’un suivi complet du corps.&lt;br>
La plupart des systèmes VR ne suivent que :&lt;/p>
&lt;ul>
&lt;li>le &lt;strong>casque (HMD)&lt;/strong>&lt;/li>
&lt;li>le &lt;strong>contrôleur gauche&lt;/strong>&lt;/li>
&lt;li>le &lt;strong>contrôleur droit&lt;/strong>&lt;/li>
&lt;/ul>
&lt;p>Cependant, l’avatar possède de nombreuses articulations (épaules, coudes, colonne vertébrale, hanches, etc.).&lt;/p>
&lt;p>Pour animer l’ensemble du corps à partir de quelques points suivis, les systèmes VR utilisent la &lt;strong>cinématique inverse (Inverse Kinematics — IK)&lt;/strong>.&lt;/p>
&lt;h3 id="cinématique-directe-vs-cinématique-inverse">Cinématique directe vs cinématique inverse&lt;/h3>
&lt;p>Il existe deux approches principales pour animer des personnages articulés.&lt;/p>
&lt;h4 id="cinématique-directe-forward-kinematics--fk">Cinématique directe (Forward Kinematics — FK)&lt;/h4>
&lt;p>En cinématique directe, le mouvement est appliqué &lt;strong>articulation par articulation&lt;/strong>.&lt;/p>
&lt;p>Par exemple :&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">épaule → coude → poignet → main
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Chaque rotation influence les articulations suivantes.&lt;/p>
&lt;p>Cette approche est couramment utilisée dans l’animation traditionnelle.&lt;/p>
&lt;h4 id="cinématique-inverse-inverse-kinematics--ik">Cinématique inverse (Inverse Kinematics — IK)&lt;/h4>
&lt;p>En cinématique inverse, on connaît la &lt;strong>position finale souhaitée&lt;/strong> d’un membre.&lt;/p>
&lt;p>Par exemple :&lt;/p>
&lt;ul>
&lt;li>la main doit être à la position du contrôleur.&lt;/li>
&lt;/ul>
&lt;p>Le système calcule alors automatiquement les rotations des articulations intermédiaires :&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">position du contrôleur → main → coude → épaule
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>L’IK permet donc à un corps virtuel de suivre les mouvements de l’utilisateur même avec un suivi limité.&lt;/p>
&lt;h3 id="ik-dans-les-avatars-vr">IK dans les avatars VR&lt;/h3>
&lt;p>Dans la plupart des systèmes VR :&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Dispositif suivi&lt;/th>
&lt;th>Partie du corps de l’avatar&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>HMD&lt;/td>
&lt;td>tête&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>contrôleur gauche&lt;/td>
&lt;td>main gauche&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>contrôleur droit&lt;/td>
&lt;td>main droite&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>Un solveur IK estime ensuite la position :&lt;/p>
&lt;ul>
&lt;li>des coudes&lt;/li>
&lt;li>des épaules&lt;/li>
&lt;li>du torse&lt;/li>
&lt;li>parfois des jambes&lt;/li>
&lt;/ul>
&lt;p>Cette reconstruction permet à l’avatar de paraître naturel même si seuls quelques points sont suivis.&lt;/p>
&lt;h3 id="exemple-simple-dik-dans-unity">Exemple simple d’IK dans Unity&lt;/h3>
&lt;p>Le composant &lt;strong>Animator&lt;/strong> de Unity inclut un système IK intégré.&lt;/p>
&lt;p>Exemple :&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-csharp" data-lang="csharp">&lt;span class="line">&lt;span class="cl">&lt;span class="k">void&lt;/span> &lt;span class="n">OnAnimatorIK&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="n">layerIndex&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">animator&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">SetIKPosition&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">AvatarIKGoal&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">LeftHand&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">leftController&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">position&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">animator&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">SetIKRotation&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">AvatarIKGoal&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">LeftHand&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">leftController&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">rotation&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">animator&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">SetIKPosition&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">AvatarIKGoal&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">RightHand&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">rightController&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">position&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">animator&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">SetIKRotation&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">AvatarIKGoal&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">RightHand&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">rightController&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">rotation&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Ce code force les mains de l’avatar à suivre la position des contrôleurs VR.&lt;/p>
&lt;h3 id="expérience">Expérience&lt;/h3>
&lt;p>Lors des tests de votre avatar, observez :&lt;/p>
&lt;ul>
&lt;li>comment les bras bougent lorsque vous levez les mains&lt;/li>
&lt;li>si les coudes se comportent de manière naturelle&lt;/li>
&lt;li>si les proportions du corps affectent la qualité de l’IK&lt;/li>
&lt;/ul>
&lt;p>Les modifications corporelles introduites plus tard dans le TP peuvent affecter significativement le comportement de l’IK.&lt;/p>
&lt;h3 id="optionnel--ajouter-un-miroir">Optionnel — Ajouter un miroir&lt;/h3>
&lt;p>Voir son avatar à la troisième personne aide à évaluer l’embodiment.&lt;/p>
&lt;p>Vous pouvez ajouter un miroir dans votre scène avec le package Unity suivant :&lt;/p>
&lt;p>&lt;a href="Mirror%20Asset.unitypackage">&lt;strong>Mirror Package&lt;/strong>&lt;/a>&lt;/p>
&lt;p>Placez le miroir devant le joueur afin qu’il puisse observer son avatar.&lt;/p>
&lt;h2 id="4--animation-du-bas-du-corps-optionnel">4 — Animation du bas du corps (Optionnel)&lt;/h2>
&lt;p>Si vous souhaitez aller plus loin, vous pouvez animer le bas du corps de votre avatar.&lt;/p>
&lt;p>Suivez le tutoriel :&lt;/p>
&lt;p>&lt;a href="https://immersive-insiders.com/blog/animating-ready-player-me-avatar-lower-body-for-vr-in-unity" target="_blank" rel="noopener">https://immersive-insiders.com/blog/animating-ready-player-me-avatar-lower-body-for-vr-in-unity&lt;/a>&lt;/p>
&lt;p>Même si ce tutoriel a été écrit pour Ready Player Me, les étapes devraient rester valides car &lt;strong>les avatars Mixamo utilisent également un rig humanoïde&lt;/strong>.&lt;/p>
&lt;p>L’objectif de cette section est de :&lt;/p>
&lt;ul>
&lt;li>améliorer le réalisme des mouvements de l’avatar&lt;/li>
&lt;li>ajouter une animation de marche&lt;/li>
&lt;li>synchroniser les mouvements du haut et du bas du corps.&lt;/li>
&lt;/ul>
&lt;h2 id="5--personnalisation-de-lavatar-et-modification-du-corps">5 — Personnalisation de l’avatar et modification du corps&lt;/h2>
&lt;p>Dans la section précédente, vous avez adapté l’avatar pour qu’il corresponde au corps de l’utilisateur (hauteur des yeux, position de la tête, etc.).&lt;/p>
&lt;p>Dans cette section, vous allez &lt;strong>modifier volontairement le corps de l’avatar&lt;/strong> afin d’explorer comment ces changements influencent :&lt;/p>
&lt;ul>
&lt;li>l’embodiment&lt;/li>
&lt;li>le confort&lt;/li>
&lt;li>la perception du mouvement.&lt;/li>
&lt;/ul>
&lt;p>Préparez plusieurs configurations d’avatar en modifiant des paramètres tels que :&lt;/p>
&lt;h3 id="changer-léchelle-de-lavatar">Changer l’échelle de l’avatar&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-csharp" data-lang="csharp">&lt;span class="line">&lt;span class="cl">&lt;span class="n">avatar&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">transform&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">localScale&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="k">new&lt;/span> &lt;span class="n">Vector3&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="m">1.3f&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="m">1.3f&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="m">1.3f&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="modifier-la-longueur-des-bras">Modifier la longueur des bras&lt;/h3>
&lt;p>Exemple :&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">UpperArm_L scale = 1.4
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">UpperArm_R scale = 1.4
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="modifier-les-proportions-du-corps">Modifier les proportions du corps&lt;/h3>
&lt;p>Variations possibles :&lt;/p>
&lt;ul>
&lt;li>corps plus large&lt;/li>
&lt;li>corps plus mince&lt;/li>
&lt;li>torse plus court&lt;/li>
&lt;li>tête plus grande&lt;/li>
&lt;/ul>
&lt;h3 id="créer-un-avatar-non-humain">Créer un avatar non humain&lt;/h3>
&lt;p>Exemples :&lt;/p>
&lt;ul>
&lt;li>bras extrêmement longs&lt;/li>
&lt;li>tête surdimensionnée&lt;/li>
&lt;li>jambes très courtes&lt;/li>
&lt;/ul>
&lt;h3 id="avatars-hybrides">Avatars hybrides&lt;/h3>
&lt;p>Vous pouvez également expérimenter avec des avatars humanoïdes possédant des caractéristiques non humaines :&lt;/p>
&lt;ul>
&lt;li>humanoïde avec tête de chat&lt;/li>
&lt;li>corps robotique&lt;/li>
&lt;li>proportions stylisées&lt;/li>
&lt;/ul>
&lt;p>L’objectif est d’explorer comment la morphologie de l’avatar influence la perception et l’interaction de l’utilisateur.&lt;/p>
&lt;h2 id="6--évaluation-de-lembodiment">6 — Évaluation de l’embodiment&lt;/h2>
&lt;p>Afin d’évaluer l’impact des modifications de l’avatar, réalisez une petite étude utilisateur.&lt;/p>
&lt;p>Testez &lt;strong>deux avatars&lt;/strong> :&lt;/p>
&lt;ol>
&lt;li>un avatar normal&lt;/li>
&lt;li>un avatar modifié&lt;/li>
&lt;/ol>
&lt;p>Les participants doivent expérimenter les deux configurations.&lt;/p>
&lt;h3 id="questionnaire">Questionnaire&lt;/h3>
&lt;p>Les participants évaluent chaque affirmation à l’aide d’une &lt;strong>échelle de Likert de 1 à 7&lt;/strong>.&lt;/p>
&lt;h4 id="embodiment">Embodiment&lt;/h4>
&lt;ul>
&lt;li>
&lt;p>&lt;em>J’ai eu l’impression que le corps virtuel était mon corps.&lt;/em>&lt;/p>
&lt;/li>
&lt;li>
&lt;p>&lt;em>Les mouvements de l’avatar semblaient être mes propres mouvements.&lt;/em>&lt;/p>
&lt;/li>
&lt;/ul>
&lt;h4 id="agency">Agency&lt;/h4>
&lt;ul>
&lt;li>&lt;em>J’ai eu l’impression de contrôler l’avatar.&lt;/em>&lt;/li>
&lt;/ul>
&lt;h4 id="confort">Confort&lt;/h4>
&lt;ul>
&lt;li>&lt;em>Les proportions du corps semblaient naturelles.&lt;/em>&lt;/li>
&lt;/ul>
&lt;h3 id="discussion">Discussion&lt;/h3>
&lt;p>Après l’expérience, discutez :&lt;/p>
&lt;ul>
&lt;li>quelles modifications d’avatar étaient les plus perturbantes ?&lt;/li>
&lt;li>lesquelles restaient naturelles ?&lt;/li>
&lt;li>comment ces résultats sont-ils liés à &lt;strong>la proprioception et à la perception du corps&lt;/strong> ?&lt;/li>
&lt;/ul>
&lt;h2 id="rapport">Rapport&lt;/h2>
&lt;p>Vous devrez remettre un court rapport décrivant votre travail.&lt;/p>
&lt;p>Votre rapport doit inclure :&lt;/p>
&lt;h4 id="configurations-davatar">Configurations d’avatar&lt;/h4>
&lt;ul>
&lt;li>description des configurations d’avatar testées&lt;/li>
&lt;li>explication de leur implémentation dans Unity&lt;/li>
&lt;/ul>
&lt;h4 id="résultats-du-questionnaire">Résultats du questionnaire&lt;/h4>
&lt;ul>
&lt;li>résumé des réponses des participants&lt;/li>
&lt;li>comparaison entre avatars normaux et modifiés&lt;/li>
&lt;/ul>
&lt;h4 id="discussion-1">Discussion&lt;/h4>
&lt;p>Discutez les résultats en lien avec :&lt;/p>
&lt;ul>
&lt;li>l’embodiment&lt;/li>
&lt;li>la proprioception&lt;/li>
&lt;li>la perception du corps en réalité virtuelle&lt;/li>
&lt;/ul>
&lt;p>Vous pouvez également proposer des explications pour les effets observés.&lt;/p></description></item><item><title>TP — Cybersickness et confort en réalité virtuelle</title><link>https://www.etiennepeillard.com/fr/teaching/lab/cybersickness-confort/</link><pubDate>Tue, 10 Mar 2026 00:00:00 +0000</pubDate><guid>https://www.etiennepeillard.com/fr/teaching/lab/cybersickness-confort/</guid><description>&lt;p>&amp;lt;&amp;ndash;&lt;/p>
&lt;ul>
&lt;li>Clarifier le rendu, tous les étudiants ne donnent pas les résultats de la même manière, il faut préciser les éléments à inclure dans le rapport.
&amp;ndash;&amp;gt;&lt;/li>
&lt;/ul>
&lt;p>L’objectif de ce TP est d’étudier comment différents choix de conception en réalité virtuelle peuvent influencer &lt;strong>le confort utilisateur et le cybersickness&lt;/strong>.&lt;/p>
&lt;p>Vous allez modifier une application de navigation VR existante, implémenter plusieurs fonctionnalités pouvant impacter le confort, et évaluer leur effet à l’aide &lt;strong>d’une petite expérimentation utilisateur&lt;/strong>.&lt;/p>
&lt;h2 id="1-expérience-de-référence-baseline">1. Expérience de référence (baseline)&lt;/h2>
&lt;p>&lt;a href="https://moodle.imt-atlantique.fr/mod/folder/view.php?id=45324" target="_blank" rel="noopener">Commencez à partir du &lt;strong>projet Unity du TP Navigation&lt;/strong> utilisé précédemment.&lt;/a>&lt;/p>
&lt;p>Déployez l’application sur le casque VR.&lt;/p>
&lt;p>Utilisez la &lt;strong>tâche de navigation dans la ville&lt;/strong> déjà présente dans le projet.&lt;/p>
&lt;p>Demandez à &lt;strong>3 participants&lt;/strong> d’effectuer la tâche.
Les participants doivent essayer d’activer le maximum de buzzers pendant &lt;strong>2 minutes&lt;/strong>, comme dans le TP précédent.&lt;/p>
&lt;p>Après la tâche, demandez à chaque participant d’évaluer son expérience avec les échelles suivantes :&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Nausée : 0–10
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">Vertige : 0–10
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">Fatigue visuelle : 0–10
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Notez les résultats.
Ces résultats constituent votre &lt;strong>condition de référence (baseline)&lt;/strong>.&lt;/p>
&lt;h2 id="2-implémentation-de-fonctionnalités-impactant-le-confort">2. Implémentation de fonctionnalités impactant le confort&lt;/h2>
&lt;p>Vous devez implémenter &lt;strong>au moins trois fonctionnalités indépendantes&lt;/strong> pouvant influencer le confort en réalité virtuelle.&lt;/p>
&lt;p>Chaque fonctionnalité doit être implémentée &lt;strong>indépendamment&lt;/strong> afin de pouvoir être activée ou désactivée pour les tests.&lt;/p>
&lt;p>Exemples de fonctionnalités possibles (vous pouvez en proposer d’autres si elles sont pertinentes) :&lt;/p>
&lt;h3 id="facteurs-liés-au-déplacement">Facteurs liés au déplacement&lt;/h3>
&lt;ul>
&lt;li>Navigation continue au joystick&lt;/li>
&lt;li>Téléportation&lt;/li>
&lt;li>Rotation continue&lt;/li>
&lt;li>Rotation par pas (snap turning)&lt;/li>
&lt;li>Modification de la vitesse de rotation&lt;/li>
&lt;li>Accélération brutale&lt;/li>
&lt;li>Accélération / décélération progressive&lt;/li>
&lt;li>Augmentation ou réduction de la vitesse de déplacement&lt;/li>
&lt;/ul>
&lt;h3 id="comportement-de-la-caméra">Comportement de la caméra&lt;/h3>
&lt;ul>
&lt;li>Camera lag (délai entre le mouvement de la tête et la caméra)&lt;/li>
&lt;li>Head bobbing (oscillation simulant la marche)&lt;/li>
&lt;li>Oscillation artificielle de la caméra&lt;/li>
&lt;li>Stabilisation artificielle de la caméra&lt;/li>
&lt;/ul>
&lt;h3 id="champ-de-vision-et-perception-visuelle">Champ de vision et perception visuelle&lt;/h3>
&lt;ul>
&lt;li>Réduction du champ de vision pendant le déplacement (vignette / tunneling)&lt;/li>
&lt;li>Ajustement dynamique du FOV en fonction de la vitesse&lt;/li>
&lt;li>Champ de vision plus large&lt;/li>
&lt;li>Champ de vision plus réduit&lt;/li>
&lt;/ul>
&lt;h3 id="perception-spatiale">Perception spatiale&lt;/h3>
&lt;ul>
&lt;li>Échelle du monde incorrecte&lt;/li>
&lt;li>Décalage de la hauteur de la caméra&lt;/li>
&lt;li>Horizon incliné&lt;/li>
&lt;li>Légère rotation de la caméra (roll)&lt;/li>
&lt;/ul>
&lt;h3 id="indices-environnementaux">Indices environnementaux&lt;/h3>
&lt;ul>
&lt;li>Ajout de repères visuels stables (ex : cockpit, nez virtuel)&lt;/li>
&lt;li>Suppression des repères visuels&lt;/li>
&lt;li>Objets mobiles dans l’environnement&lt;/li>
&lt;li>Environnement statique vs dynamique&lt;/li>
&lt;/ul>
&lt;h3 id="rendu-et-complexité-visuelle">Rendu et complexité visuelle&lt;/h3>
&lt;ul>
&lt;li>Réduction du framerate (simulation)&lt;/li>
&lt;li>Motion blur&lt;/li>
&lt;li>Contraste visuel élevé&lt;/li>
&lt;li>Contraste visuel réduit&lt;/li>
&lt;/ul>
&lt;p>Certaines de ces modifications peuvent &lt;strong>augmenter l’inconfort&lt;/strong>, tandis que d’autres peuvent &lt;strong>le réduire&lt;/strong>.&lt;/p>
&lt;h2 id="3-expérimentation-utilisateur">3. Expérimentation utilisateur&lt;/h2>
&lt;p>Pour chaque fonctionnalité implémentée, répétez la même expérience.&lt;/p>
&lt;p>Demandez à &lt;strong>3 participants&lt;/strong> d’effectuer la tâche.&lt;/p>
&lt;p>Règles importantes :&lt;/p>
&lt;ul>
&lt;li>Les participants &lt;strong>ne doivent pas savoir quelle modification est activée&lt;/strong>.&lt;/li>
&lt;li>Utilisez &lt;strong>la même tâche et la même durée&lt;/strong> (2 minutes).&lt;/li>
&lt;li>Activez &lt;strong>une seule fonctionnalité à la fois&lt;/strong>.&lt;/li>
&lt;/ul>
&lt;p>Après chaque condition, les participants doivent évaluer :&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Nausée : 0–10
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">Vertige : 0–10
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">Fatigue visuelle : 0–10
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Notez tous les résultats.&lt;/p>
&lt;h2 id="4-jeu-de-données-partagé">4. Jeu de données partagé&lt;/h2>
&lt;p>Reportez vos résultats dans &lt;a href="https://docs.google.com/spreadsheets/d/11vtGWGslkL-WzMGXTXbfBq_d_-7ucZgrNPbDUQ9zcD8/edit?usp=sharing" target="_blank" rel="noopener">ce &lt;strong>document partagé&lt;/strong>&lt;/a>.&lt;/p>
&lt;p>Pour chaque condition, indiquez :&lt;/p>
&lt;ul>
&lt;li>la fonctionnalité implémentée&lt;/li>
&lt;li>les paramètres utilisés&lt;/li>
&lt;li>les résultats des trois participants&lt;/li>
&lt;/ul>
&lt;p>Ce document permettra à toute la classe de &lt;strong>comparer différents facteurs influençant le confort en VR&lt;/strong>.&lt;/p>
&lt;h2 id="5-rapport">5. Rapport&lt;/h2>
&lt;p>Votre rapport doit contenir les éléments suivants.&lt;/p>
&lt;h3 id="implémentation">Implémentation&lt;/h3>
&lt;p>Expliquez comment chaque fonctionnalité a été implémentée :&lt;/p>
&lt;ul>
&lt;li>scripts modifiés ou créés&lt;/li>
&lt;li>paramètres utilisés&lt;/li>
&lt;li>choix techniques&lt;/li>
&lt;/ul>
&lt;p>Vous pouvez inclure des extraits de code ou des schémas si nécessaire.&lt;/p>
&lt;h3 id="résultats">Résultats&lt;/h3>
&lt;p>Présentez vos résultats expérimentaux :&lt;/p>
&lt;ul>
&lt;li>condition de référence (baseline)&lt;/li>
&lt;li>chaque condition modifiée&lt;/li>
&lt;/ul>
&lt;p>Comparez vos résultats avec ceux obtenus par les autres groupes dans le document partagé.&lt;/p>
&lt;p>Discutez notamment :&lt;/p>
&lt;ul>
&lt;li>quels facteurs ont eu le plus d’impact&lt;/li>
&lt;li>si les résultats correspondent à vos attentes&lt;/li>
&lt;/ul>
&lt;h3 id="discussion">Discussion&lt;/h3>
&lt;p>Ajoutez des observations et remarques personnelles :&lt;/p>
&lt;ul>
&lt;li>impressions subjectives pendant les tests&lt;/li>
&lt;li>différences entre participants&lt;/li>
&lt;li>limites de l’expérience&lt;/li>
&lt;/ul>
&lt;p>Discutez également des explications possibles pour les effets observés.&lt;/p>
&lt;h3 id="design-guidelines">Design guidelines&lt;/h3>
&lt;p>À partir de vos expériences et des résultats collectifs de la classe, proposez &lt;strong>au moins cinq recommandations de conception&lt;/strong> pour améliorer le confort dans les applications VR.&lt;/p>
&lt;p>Chaque recommandation doit inclure :&lt;/p>
&lt;ul>
&lt;li>une description courte de la recommandation&lt;/li>
&lt;li>une justification basée sur vos observations expérimentales&lt;/li>
&lt;/ul></description></item></channel></rss>