2010-06-02 5 views
1

Je voudrais savoir s'il est possible, en C/C++, de lancer une application et de saisir sa sortie vidéo standard?Saisir la sortie OpenGL d'une application depuis une autre application

Le but de ceci serait d'attraper le tampon d'une application, et l'utiliser comme texture pour une grille de sommet avec une coordonnée de texture spéciale (afin de le projeter dans un FullDome)?

Je développe sous Linux.

Répondre

2

Théoriquement, c'est possible. L'autre application utilise-t-elle OpenGL? Ou est juste une application X11?

Si c'est juste une application X11, vous devez faire ce que fait un gestionnaire de compositing, qui utilise l'extension COMPOSITE X pour obtenir le contenu de la fenêtre, puis les traiter.

Si c'est juste une application OpenGL, et que vous pouvez la modifier, vous pouvez utiliser un FBO pour tout dessiner sur une texture et utiliser la mémoire partagée (SHM) pour partager les données de texture avec l'autre application.

Questions connexes