Example de placement de formes#
Cet exemple démontre une utilisation alternative de Splash, contranstant avec l’objectif initial et plus proche de ce que l’on peut voir dans la plupart des logiciels de video mapping destinés à un seul projecteur. L’idée est de placer des polygones sur des objets réels directement dans la projection, ce qui implique qu’il n’est pas nécessaire de créer un modèle 3D précis des objets. L’inconvénient de cet approche est qu’elle ne peut permet pas d’utiliser le mélange de projections automatique lors de l’utilisation de plusieurs projecteurs. Le processus est le suivant :
placez le vidéoprojecteur de telle manière que tous les objets physiques soient dans son cône de projection,
exportez de Blender un fichier de configuration,
ouvrez le fichier dans Splash,
utilisez Blender pour créer et ajuster les polygones dans Splash en temps réel,
ajustez les coordonnées de texture de ces polygones pour correspondre à la vidéo choisie.
Pour faire ce tutoriel, vous aurez besoin de :
Splash installé sur un ordinateur
un vidéoprojecteur connecté sur l’ordinateur
n’importe quelle surface de projection
Pour être capable de suivre ce guide, vous aurez besoin d’installer l’addon shmdata pour Blender : référez vous à Addons Blender pour l’installer.
Créer et exporter un fichier de configuration depuis Blender#
Admettonso que le placement du vidéoprojecteur est à la charge de l’utilisateur, et passons directement à l’export depuis Blender. Notre but ici est de créer une scène très simple qui va correspondre grossièrement à l’installation réelle. Une efois Blender démarré, vous pouvez supprimer la lumière par défaut. Placez la caméra le long de l’axe Y et orientez la vers le bas, selon ce même axe. Vous devriez obtenir uen scène qui ressemble à ceci, en la regardant selon une vue top-down :
Pour que cet exemple fonctionne, Blender doit être capable d’envoyer le maillage de l’objet édité en temps réel à Splash, qui à son tour va mettre à jour son affichage. C’est fait à travers l’addon Splash pour Blender, qui est capable de sortir un ou plusieurs maillage à travers la mémoire partagée. Cette configuration n’est pas si compliquée qu’il y paraît, du fait qu’il s’agit principalement de quelques chemins à spécifier pour que l’exporteur configure l’ensemble. Tout d’abord nous allons faire en sorte que Blender envoie le maillage :
sélectionnez le cube dans Blender (si vous l’avez supprimé par réflexe comme je le fais parfois, recréez le),
allez dans la section
Shmdata properties
du panneauPropriétés de l'objet
cliquez sur
Send mesh
.
Nous devons maintenant créer la configuration pour Splash. Nous considérerons que le vidéoprojecteur est le second écran de l’ordinateur, et que les deux sorties ont une résolution de 1920x1080. Dans l’éditeur de nœuds de Blender, créez un arbre Splash qui ressemble à ce qui suit :
La principale différence avec l’exemple :doc`simple <../tutorials/single_projector_example>`est que au lieu de spécifier le nœud Mesh en utilisant un objet Blender comme source de données, nous spécifions son “Type” à “Shared memory” et, à l’aide du bouton “Select file path”, nous allons chercher le socket mémoire qui devrait se trouver à “/tmp/blender_shmdata_mesh_Cube”.
Cliquez sur “Export ree” du nœud World pour exporter tous les nœuds qui y sont connectés, et nommez le fichier d’export “configuration.json”
Chargez la configuration dans Splash#
Cette partie est vraiment simple. Soit déplacer le fichier de configuration nouvellement créer sur la fenêtre de Splash, ou chargez le à partir de la ligne de commande :
splash configuration.json
Deux fenêtres vont apparaître, l’une sans bord (et en plein écran), l’autre qui devrait montrer l’interface utilisateur en pressant au besoin Ctrl + Tab. La commande la plus utile dans Splash dans ce cas est de passer du rendu fil de fer à texturé, en utilisant soit les raccourcis clavier (Ctrl + W et Ctrl + T) ou depuis l’interface utilisateur.
Modifier les polygones et leurs coordonnées de texture depuis Blender#
C’est le moment décisif. De retour dans Blender, sélectionnez le cube et passer en mode édition (appuyez sur Tab). À partir de là, n’importe quelle modification au maillage sera reproduite immédiatement dans Splash. L’idée est de placer les polygones de telle sorte qu’ils soient ajustés à la géometries des objets sur lesquels ils sont projetés, comme ceci :
Une fois que les polygones sont en place, nous devons créer les coordonnées de texture. La voie facile est de sélectionner tous les vertices, presser “U” et choisir « Unwrap ». Le résultat sera visible immédiatement dans Splash, et peut être ajusté pour mieux correspondre à la vidéo d’entrée.
Avec une vidéo simple faite de cercles concentriques, on obtient quelque chose comme suit :
Encore une fois, la communauté Blender a d’excellentes ressources concernant la modélisation dans Blender, pour vous aider à créer des polygones et même les vidéos à projeter !