7 choses à penser pour réduire le motion sickness de votre jeu VR (Développeurs)

Le motion sickness ou le mal du mouvement ou encore cinétose, c’est un type de dissonance cognitive qu’on retrouve dans les jeux en réalité virtuelle: le cerveau reçoit plusieurs informations contradictoires de la part de ses sens, et il ne sait pas résoudre cette incohérence. Dans le cas de la réalité virtuelle (VR): on bouge selon les yeux, et on ne bouge pas selon le corps.

C'est la bête noire des développeurs de jeux VR: comment réussir à faire jouer votre joueur dans un casque de réalité virtuelle, sans qu'il soit sujet aux nausées ou qu'il ait envie de vomir, au bout de 5 minutes de jeu ? Si vous n'en tenez pas compte dans votre jeu, cela pourrait vraiment vous jouer des tours. Beaucoup de personnes, avec une sensibilité accrue à cette dissonance, n’ont encore jamais porté de casque VR: vous risquez de les dégoûter à jamais.

Il y a eu des recherches dans ce domaine qui ont permis d’extraire quelques techniques bien connues, basées sur l'idée de persuader le cerveau qu'il est effectivement en train de bouger. En attendant les tapis omnidirectionnels de Ready Player One qui sauront parfaitement vous immerger, voici donc les 7 choses à savoir pour réduire le motion sickness de votre jeu.


1 - Maximisez la cadence d'affichage (FPS)

Moins un jeu tourne vite, plus l’œil perçoit les saccades, et plus votre cerveau se conforte dans l’idée que "ce mouvement-là, il n’est pas crédible, je ne suis pas véritablement en train de bouger". Ce paramètre dépend de la perception de chacun mais compter au minimum 60 FPS, pour une expérience de qualité. La plupart des casques VR supportent cette cadence de rafraîchissement. Faites en sorte que le jeu suive, quitte à altérer la qualité. Il vaut mieux que l'expérience VR soit moins jolie, mais qu'elle tourne à 60FPS, plutôt qu'elle soit superbe, mais à 10 FPS.


2 - Ne faites jamais bouger le joueur, sans interactions de sa part

C'est dans les recommandations officielles de Google Daydream, mais il est bon de le rappeler. Le mouvement doit être déclenché par le joueur. Même si vous voulez mettre de bonnes cinématiques, il faut impérativement que les mouvements du joueur soient déclenchés par le joueur lui-même, le plus possible.


3 - Téléportez votre personnage

C'est une méthode radicale: vu que le phénomène de dissonance provient du mouvement engendré par l’expérience VR, plutôt que de faire bouger le joueur en continu, utilisez un système télé-portatif pour le déplacer. Cela ne nuit pas forcément à l’immersion, et ça marche dans bon nombre d’expériences. Ce n'est cependant pas tout le temps possible d'utiliser ce système: on voit par exemple, mal un simulateur de voiture de course en VR type Project Cars, avec de la téléportation.


4 - Réduisez le champ de vision dans les mouvements continus

Comme mentionné avant, ce n'est pas toujours possible d'éviter les mouvements continus. Que faire dans ces cas-là alors ? Une méthode qui porte ses fruits pour réduire le motion sickness (au détriment de l’immersion) consiste à réduire le champ de vision du personnage lorsque celui-ci se déplace.

Ce principe se base aussi sur ce qui se passe dans la vraie vie, avec votre cerveau. Lorsque vous êtes à l'arrêt, votre vision périphérique est parfaitement active, vous voyez à 180 degrés. Mais en mouvement, le cerveau ne décode que très peu les informations périphériques perçues par l’œil pour se concentrer sur la direction où il va. Appliquer un masque sur votre visionneuse qui se réduit, à mesure que la vitesse augmente, peut-être une bonne pratique pour diminuer le motion sickness.


Illustration Réduction du champs de vision selon la vitesse du joueur VR

Réduction du champ de vision en fonction de la vitesse



5 - Ajoutez des points de référence à votre scène

Le cerveau est bête: si vous mettez, une casquette, des lunettes, ou autres choses à votre personnage, qui rentre dans son champ de vision, vous pouvez réduire le motion sickness du joueur. Premièrement, ça minimise le champ de vision de la partie mobile (conforme à l'étape 4). Ensuite, ça ajoute un point de référence, pour tous les autres mouvements de la scène. Enfin, cela rajoute des détails (casquettes, ou autres... ) qui contribuent à l’immersion du joueur: ça ne présente donc que des avantages.

Ce même principe de “point de référence” s’applique en voiture, si on réfléchit bien: vous êtes en voiture, vous subissez les accélérations/décélérations du véhicule, mais vous ne vomissez pas ou rarement ! Car vous avez un point de référence: la carrosserie, les vitres, les fauteuils, ... tout cela est fixe. A contrario, si on vous mettait dans une bulle transparente sans rien d’autres que vous-même, en vous faisant subir des accélérations analogues à celle d’une voiture, il y a fort à parier que vous ayez des nausées très rapidement, si vous bougez la tête.

Par exemple, dans notre expérience E.V.A. le joueur est un astronaute, il porte donc un casque d'astronaute qui dépasse sur son champ de vision, l’objet qui englobe sa tête est fixe par rapport au déplacement du joueur. Il constitue donc un point de référence aux autres mouvements susceptibles d’arriver.


Explications points de référence - expérience E.V.A

Points de référence de l'expérience E.V.A



6 - Minimisez les rotations forcées de la caméra

Éviter à tout prix que votre caméra tourne, sans que le joueur tourne sa tête. C’est le mouvement qui augmente le plus rapidement la nausée. Rien de plus dévastateur, que voir un environnement défilé autour de soi, en n'ayant pas bougé d’un centimètre la tête. Et pour le comprendre il suffit de retourner à la maternelle: vous tournez très rapidement sur vous-même, au bout de 50 tours, vous êtes perdus et ne marchez plus droit. Alors imaginez que sans mouvement, la Terre entière se met à tourner autour de vous: c’est bien pire, et c'est pour cela que le portage de Minecraft sur Oculus Rift, est à mon sens mal réalisé: la caméra est contrôlée par la souris et non pas par la tête.

Beaucoup de jeux, contrôlent la caméra avec la souris. C’est le cas notamment de la plupart des FPS. Il est pour ces jeux, difficile de se passer de ce genre de mouvement. Un bon conseil est d’étudier précisément le scénario/gameplay pour que le joueur n’ait pas à se retourner trop souvent. Rappelez-vous de ce dicton inventé de toute pièce: “les moins nerveux sont les mouvements, le moins le jeu est gerbant”


7 - Augmentez l’immersion, l’ambiance 3D

Maximiser l’immersion et le réalisme de la scène que vit le joueur. Rien n'est futile quand il s'agit de faire baisser la cinétose.

Tout ce qui peut faire croire au cerveau du joueur, qu’on est effectivement en train de bouger est bon à prendre, cela permet d'éviter les effets cumulés. Dans ce contexte, utiliser des sons spatialisés dans une scène où c’est pertinent, est un atout: il constitue un sens crédible de plus en faveur de l’idée qu’on est en mouvement.

Nous sommes accoutumés aux véhicules roulants: rappeler donc les bruits de moteurs quand ca fait sens, s’il y a des déplacements. Et faites les de plus en plus stridents à mesure que la vitesse augmente ! Il y a de bonnes chances que la cinétose diminue.

Si vous concevez une expérience pour un casque tracké en position, exploiter l’espace de mouvement offert par les casques, et utilisez-les à bon escient pour que les déplacements du joueur dans la vraie vie correspondent au déplacement du personnage dans le jeu.


Conclusion

Pensez à intégrer ces petits “hacks” pour augmenter la durée à laquelle le joueur pourra jouer à votre jeu. Il vous en remerciera beaucoup, et cela réduira sa facture en gingembre. Il est toutefois bon de noter, qu’à mesure qu’on teste des expériences VR, le cerveau s’accoutume, et a tendance à réduire sa sensibilité au motion sickness.


Article publié le 04/10/2019 à 08:35 par Jérôme



Consulter plus d'articles de Histoires de développeurs