SIG 2013 - Retour sur la démo "Immersion dans un SIG"
Durant la session plénière de la conférence SIG 2013, nous avons eu le plaisir de vous présenter une démonstration dans laquelle nous avons montré comment, à partir d'une base de données SIG 2D (OpenStreetMap en l'occurrence) nous pouvions arriver à construire un environnement 3D immersif. Je reviens sur les différentes étapes qui nous ont permis d'atteindre ce résultat.
Olivier et moi-même, accompagnés de notre cobaye pour la démonstration du SIG en mode immersif lors de la plénière de SIG 2013 |
L'extraction des données OSM à l'aide d'ArcGIS
Après avoir décidé la zone de la démonstration (le voisinage du Palais des Congrès de Versailles), il fallait trouver un jeu de données vectoriel contenant à la fois les axes des voies, les emprises de bâtiments, un ensemble d'éléments de mobilier urbain ainsi que des informations sur l'occupation des sols. Le plus simple fut de se tourner vers la base de données OpenStreetMap et d'extraire les données à l'aide de l'extension ArcGIS Editor for OSM. Cette dernière fournie un ensemble d'outils de géotraitement pour extraire, mettre à jour et réintégrer des données dans la base de données OpenStreetMap.
Une des principales limites rencontrée en choisissant d'utiliser des données OSM c'est l'absence d'information permettant d'extruder les bâtiments. Pour cette démo, nous avons utilisé des vues immersives UrbanDive de Mappy afin d'obtenir le nombre d'étages de chaque bâtiment.
Une autre alternative aurait été d'utiliser les données IGN BD Topo disposant des informations permettant l'extrusion des bâtiments.
Modélisation 3D avec CityEngine
Pour générer les modèles 3D des bâtiments, des voies et des éléments urbains, nous avons utilisé l'outil Esri CityEngine, parfaitement adapté à ce besoin. En effet, en appliquant des règles procédurales basées sur des styles de bâtiments et de voies typiques de centres historiques tels que Versailles, on a rapidement pu générer une modélisation 3D du quartier à partir des couches 2D issues d'OpenStreetMap. Les règles utilisées dans cette démo sont toutes des règles issues des différents tutoriaux disponibles sur le centre de ressources de CityEngine.
Import de données OSM dans CityEngine et génération des géométries de base, notamment pour les voies |
Application de règles procédurales dans CityEngine |
Modèles 3D générés dans CityEngine avec import de bâtiments spécifiques (au format Collada) comme ici le Palais des Congrès |
Pour améliorer le réalisme de la scène 3D, on a ajouté aux modèles 3D générés automatiquement quelques modèles 3D spécifiques comme pour le Palais des Congrés. Ce dernier a été modélisé à l'aide de l'outil Trimble Sketchup.
On notera que CityEngine disposant d'outils d'import de fichiers au format OSM, on aurait donc pu directement intégrer les données OSM dans CityEngine et définir interactivement les hauteurs de bâtiments.
On notera que CityEngine disposant d'outils d'import de fichiers au format OSM, on aurait donc pu directement intégrer les données OSM dans CityEngine et définir interactivement les hauteurs de bâtiments.
Compilation de la scène 3D avec Unity
La dernière étape consiste à constituer une scène 3D interactive puis à la compiler avec Unity 3D, un environnement de développement de jeux vidéo. Pour cela, nous avons exporté les différentes couches de CityEngine (bâtiments, voies, mobilier urbain, occupation du sols et arbres) au format Autodesk FBX. Ce tutoriel explique comment réaliser l'export et comment l'automatiser dans CityEngine à l'aide d'un script Python.
Unity 3D permet ensuite de paramétrer les fonctionnalités de navigation interactive dans la scène et de créer un l'avatar qui représentera l'acteur de la scène 3D. Une fois ce paramétrage effectué, la scène 3D est compilée sous la forme d'un fichier exécutable.
Exécution de la scène avec le masque immersif Oculus
Pour offrir un environnement de réalité virtuelle à l'utilisateur, la technologie de masque immersif en cours de développement par la société californienne Oculus VR permet d'offrir une vision stéréoscopique réaliste. Le masque contient des capteurs permettant d'interpréter les mouvements du masque dans l'espace pour et de les répercuter dans la vue immersive de l'utilisateur. En option, on peut compléter cet équipement d'une manette de console de jeu vidéo pour permettre d'ajouter des mouvements d'accélération et de saut dans la scène.
Pour la démonstration, nous avions retransmis les deux oculaires du masque afin de faire partager la vision de l'utilisateur avec le public.
Ajoutez à cela, un volontaire aussi talentueux que Vérino et vous passez un très bon moment !
0 comments :
Enregistrer un commentaire