Qu’est-ce-que le WebVR ?

Qu’est-ce-que le WebVR ?

Vous connaissez déjà tous le web tel qu’on l’utilise aujourd’hui : un navigateur et des centaines de millions (milliards…) de pages web qui vous donnent accès à des centaines de milliards d’informations. Le web est aujourd’hui présent aussi bien sur PC que sur les mobiles et accessibles via différentes navigateurs (Chrome, Chromium, Firefox, Safari, Internet Explorer, Opera…). Il n’y a pas vraiment besoin de revenir dessus, il s’agit de fort probablement votre quotidien si vous lisez ces lignes. Néanmoins, il y a un phénomène qui émerge tout doucement avec l’apparition progressive des casques de réalité virtuelle : c’est la création d’un web qui rendrait accessible des expériences en réalité virtuelle. C’est ce que la naissance d’un WebVR.

Qu’est-ce-que le WebVR ?

On l’a dit plus haut : c’est la possibilité de visionner via un casque de réalité virtuelle une expérience immersive en réalité virtuelle présentée par une page web et servie par un navigateur web. A l’heure actuelle, ce type d’expérience est encore en développement mais progresse de jour en jour. Techniquement cela consiste en la chose suivante : le navigateur web exécute une librairie javascript qui utilise par la suite l’interface du webGL.

Si vous souhaitez dès maintenant créer ou tester des expériences en réalité virtuelle, il vous faut l’appui de logiciel comme Unity 3D ou Unreal Engine et de créer différents exports via chaque SDK de chaque casque de réalité virtuelle. Un travail complexe, long et fastifieux (et souvent cher) pour les développeurs et le portage d’une application en réalité virtuelle doit souvent subir certaines améliorations pour pouvoir être effective. En outre, elle nécessite ensuite d’être déployée sur les Stores ce qui rajoute de la complexité en fonction des guidelines de chaque Store. Pour l’utilisateur, les implications sont les suivantes : il doit d’abord choisir sa plateforme (Oculus Store, SteamVR, Daydream, Google Play…), regarder si l’application en réalité virtuelle est disponible et ensuite télécharger l’application sur son smartphone ou PC (qui la plupart du temps n’est utilisée qu’une ou 2 fois). Pas vraiment pratique pour l’utilisateur (ni pour le développeur) …

Cette description est bien la preuve qu’il est aujourd’hui encore complexe de mettre en place une application en réalité virtuelle et de la rendre accessible à tous. Et s’il y a bien une promesse que le web essaye de tenir c’est bien celle-ci : « rendre accessible au plus grand nombre l’information quelqu’elle soit ». Avec le webVR c’est ce leitmotiv qui est à l’oeuvre.

Le webVR comment ça marche ?

Après avoir compris le principe, il convient de comprendre comment réaliser une application en réalité virtuelle pour le web. Pour se faire, il est possible d’utiliser une méthode bien connue des développeurs qui est d’utiliser la librairie three.js au sein de votre application et de faire tourner cette dernière sur un navigateur récent ayant intégré le webGL. Mais réussir à créer des applications 3D immersives grâce à ce type de technologie demande énormément d’efforts et de connaissances techniques qui ne sont pas l’apanage du premier développeur web venu.

Pour pallier cette difficulté, une équipe au sein de la Mozilla Foundation – mené par Vladimir Vukićević – qui s’est nommée MozVR a fait le pari suivant : le web est un merveilleux vecteur pour rendre la réalité virtuelle accessible à tous, mais étant donné qu’il n’existe à l’heure actuelle pas de technologie simple pour la mettre en place sur le web, les équipes de MozVR ont entrepris de créer une librairie javascript nommée A-Frame.

Qu’est-ce-que A-Frame ?

A-Frame est une librairie javascript open-source développée par une équipe de Mozilla depuis 2015. Le principe d’A-Frame est de permettre plus facilement la création de contenu sur le web en réalité virtuelle destinés aux casques de réalité virtuelle. Il s’appuie notamment sur la librairie javascript three.js mais qui est grandement simplifiée par des éléments HTML vous permettant de mettre rapidement en place une scene (<a-scene>). Pas besoin de vous y connaître à un haut niveau de développement pour obtenir un rendu en VR si vous avez des notions de HTML et de Javascript. Il vous suffit de créer une scène. Dans chaque scène les objets que vous créez sont des entités (entities) [box, sphere…]. Chaque entité est ensuite dotée de composants (components) dans lesquels vous définissez l’apparence, le comportement et la fonctionnalité.

Voici un exemple de scène et son code (ce que A-Frame nomme le « Hello World de la VR »)

La scène :

scene-hello-world-a-frame

Son code :

hello-world-vr-a-frame

Pour ceux qui connaissent le HTML, vous ne devriez pas être trop déroutés.

Les développeurs de A-Frame ont mis en place plusieurs éléments pour vous aider à développer avec A-Frame :

  • Un inspecteur pour modifier facilement votre scène. A l’instar d’un Unity ou d’un Unreal Engine vous pouvez modeler votre scene comme bon vous semble sans avoir besoin de modifier le code. Vous déplacez simplement les éléments de la scene et vous obtenez rapidement votre rendu. Un gros gain de temps et qui permet de mieux spatialiser et visualiser en 3D votre scene.

inspector-a-frame-vr

 

  • Les développeurs de A-Frame ont également mis en place une petite curation des différents composants javascript qui peuvent ajouter des éléments dynamiques à votre scene en réalité virtuelle. Cette liste est bien évidemment amenée à grossir dans les prochains mois mais va vous permettre de rajouter facilement d’autres éléments à votre scene sans avoir à les développer.

Quels sont les navigateurs qui sont compatibles ?

Pour l’heure, le web VR est encore en développement et est en version 0.3. Il peut être testé sur les navigateurs suivants :

Quels sont les casques de réalité virtuelle compatibles avec le webVR et A-Frame ?

L’objectif d’A-Frame et plus largement du webVR est de donner la capacité à n’importe quel casque de réalité virtuelle de profiter d’une expérience VR via un PC ou un smartphone possédant un navigateur web compatible.

Pour l’heure, les casques qui ont déjà été testé (ou bêta-testé) sont les suivants :

Quels en sont les avantages ?

Vous l’aurez compris, avec le webVR s’ouvre de nouvelles possibilités qui augurent de très beaux jours pour la réalité virtuelle. Grâce au webVR vous pourrez plus facilement regarder et créer du contenu en réalité virtuelle pour tous les casques de réalité virtuelle du marché. Vous n’aurez plus besoin de publier votre application sur les stores. Elle sera directement accessible via une page web que vous pourrez rendre accessible à tout le monde.

 

Plus aller plus loin

Quelques idées et sites pour aller découvrir le webVR :

La documentation pour démarrer avec A-Frame

• Vous pouvez suivre également le blog d’A-Frame mis à jour de manière hebdomadaire (avec de superbes expériences à tester) et intégrer la communauté pour partager vos connaissances et participer au projet.

Site d’info sur le webVR.

Quelles sont les difficultés de construire le webVR en l’état actuel par Justin Rogers.

• Quelques personnes à suivre sur le projet webVR : Diego Marcos (Mozilla), Josh Carpenter (Mozilla), Casey Yee (Mozilla), Chris Van Wiemeersch (Mozilla), Kevin Ngo (Mozilla), Brandon Jones (Google), Justin Rogers (Oculus) …

• Sur GoGlasses nous suivrons les grandes avancées du webVR. N’hésitez pas à nous suivre également sur Twitter.

 

Laisser un commentaire

comment-avatar

*