Contrôler deux canaux visuels indépendamment : ce que la microscopie sans marqueurs m'a fait repenser en VR
L'actualité : des chercheurs de Stanford ont mis au point un microscope qui révèle le fonctionnement interne de cellules vivantes en temps réel, sans marqueurs fluorescents. Techniquement, le point intéressant n'est pas seulement la résolution — c'est le contrôle du signal : observer sans injecter de bruit dans ce qu'on observe.
En développement VR, on retrouve une variante du même problème : comment présenter deux flux visuels délibérément différents à deux yeux, tout en gardant une seule expérience cohérente pour l'utilisateur ?
C'est la contrainte centrale d'Amblyotube (Seven Sports), une application Meta Quest d'entraînement visuel pour la coordination binoculaire, utilisable avec du contenu type YouTube.
Le pattern d'architecture
1. Deux pipelines de rendu, un seul contenu source
Le contenu est identique ; la post-traitation diffère par œil.
œil dominant → blur(shader paramétrable) → composition
œil en retrait → detection(figures) + highlight + flicker → composition
Concrètement, la boucle de rendu par œil ressemble à ceci :
// pseudo-shader, une passe par œil
float4 frag(Varyings i) : SV_Target {
float4 src = tex2D(_MainTex, i.uv);
if (isDominantEye) {
return blur(src, _BlurRadius); // flou doux, réglable
} else {
float mask = detectHumanFigure(src); // AI Sharpener (MFBF)
float4 hl = highlight(src, mask); // contour rouge / surbrillance jaune-vert
return flicker(hl, _FlickerHz, mask); // scintillement pulsé régulier
}
}
Ce découpage garde une seule source de vérité (le contenu) et isole toute la divergence dans une étape de post-traitement par œil — exactement le même principe que la microscopie sans marqueurs : séparer le signal du traitement qu'on lui applique.
2. Le blur comme variable, pas comme bug
Le Dominant Eye Shader applique un flou numérique doux et réglable. C'est un paramètre de session, pas un effet cosmétique. La difficulté d'ingénierie, ici, c'est la latence : flouter en temps réel sans casser la synchronisation entre les deux yeux, sinon l'utilisateur perçoit un décalage temporel plutôt qu'un décalage visuel voulu.
3. Détection de figures humaines côté œil en retrait
L'AI Sharpener (MFBF) détecte les silhouettes humaines et les met en évidence : contour rouge marqué, surbrillance jaune-vert, scintillement pulsé à rythme régulier. Question d'implémentation classique : le flicker doit rester régulier et non agressif, sinon on crée une charge attentionnelle au lieu d'un guidage.
4. Occlusion par masque partiel
L'occlusion « wedge » noircit une partie de la vue de chaque œil, de sorte que chacun voie des portions distinctes de la scène. Objectif : réduire la rivalité binoculaire.
5. Repère de fusion et état de convergence
Un point magenta vif dans la vue de l'œil en retrait, un point gris neutre discret dans celle de l'œil dominant. Le suivi les rapproche jusqu'à fusion en une seule image 3D. C'est essentiellement une boucle de feedback visuel pilotée par la position.
6. Entrées et calibration
Sélection de l'œil (gauche / droite), preset de sévérité (léger / modéré / sévère) ou contrôle de vision LogMAR. Navigation par pass-through et suivi des mains dans un menu flottant ; session en pièce virtuelle ou en Room View (pass-through AR).
Contraintes à ne pas ignorer
- Session recommandée : 30 à 40 min/jour, 1 h maximum.
- Public : 13 ans et plus.
- Positionnement : outil d'entraînement visuel complémentaire et d'assistance — ni diagnostic, ni traitement, ni guérison.
Ce que j'en retire
Un système qui doit faire converger deux signaux divergents se conçoit mieux en rendant la divergence explicite et réglable qu'en masquant un canal. Le patch adhésif et les lunettes rouge-bleu masquent ; le rendu par œil paramètre.
C'est la leçon que je retiens de la microscopie sans marqueurs appliquée à la VR : ne pas cacher la différence entre les deux canaux, mais la piloter comme un paramètre de première classe. Une seule source de contenu, deux traitements, un seul résultat cohérent — et surtout, un état observable à chaque instant plutôt qu'une boîte noire.
Meta Quest Store : https://www.meta.com/en-gb/experiences/amblyotube/25906906972338493/
Top comments (0)