Bonjour à tous !
J'ai besoin de votre aide pour savoir comment faire de la bi-projection avec OpenGL et la SDL2 :
Le contexte:
J'ai une application SDL2 qui utilise l'opengl4 et que j'utilise via un vidéo projecteur en 1920x1080
Je voudrais utiliser deux vidéo-projecteurs pour la projection, et donc passer en 1920 * 2160 (ou quelque chose de similaire).
Pour cela, la littérature sur internet m'indique que le pack complet s'appelle du softedge et du blending et que je suis actuellement entrain de m'occuper du blending
Si on utilise 2 vp pour la projection, alors il y aura forcément une zone de recouvrement. (disons 1920px * 60px afin de pouvoir superposer proprement les deux images car la superposition bête ne sera pas parfaite)
le schéma est moche mais plus clair.
ceci est la théorie. La théorie dit aussi qu'on ne peut afficher cela simplement sans déformation ni correction de luminosité, (le softege) mais je n'en suis pas encore la.
En effet, la zone de recouvrement serait illuminé par les deux vidéoprojecteurs donc bien plus lumineuse que le reste de l'image.
Déjà comment faire le blending en openGL ?
J'ai pensé bêtement à ceci:
Je règle ma carte graphique avec les deux vidéoprojecteurs et je lui indique que j'ai un écran de projection de 1920*2160
Je me crée un buffer en 1920 * 2100. (taille de l'image finale projetée avec les deux vidéoprojecteurs) J'ignore donc les pixels de recouvrement.
- Si je regarde les 1920*1080 premiers pixels de mon buffer, j'ai ce que devrait sortir le vidéoprojecteur 1 sur la sortie 1 de la carte graphique
- Si je regarde les 1920*1080 derniers pixels de mon buffer, j'ai ce que devrait sortir le vidéoprojecteur 2 sur la sortie 2 de la carte graphique
et ensuite comment dire à openGL ce que je veux ?
ne faudrait il pas construire 2 images dont une partie serait en commun ?
Mais rien que ça, comment faire concrètement ?
Alors je ne veux pas de code, juste des pistes pour y arriver.
(C'est un projet qui me tient à coeur et j’ai potentiellement environ 8-11 mois pour le réaliser)
Et déjà un grand merci pour votre aide !
Partager