Pb avec glReadPixels pas de capture

cs_breton51 Messages postés 78 Date d'inscription jeudi 21 avril 2005 Statut Membre Dernière intervention 15 novembre 2018 - 9 févr. 2006 à 17:08
cs_breton51 Messages postés 78 Date d'inscription jeudi 21 avril 2005 Statut Membre Dernière intervention 15 novembre 2018 - 13 févr. 2006 à 10:09
bonjour
je debute e c++ et j'ai un petit pb pour faire une capture d'ecran j'utilise glReadPixels qui est sencer me retourner le tableau de pixel "data" de mon ecran mais voila quand j'affiche "data" rien le tableau est vide, de plus j'ai essayer de s'auvgarder cette image avec devil mais quand je louvre c'est un ecran noir merci de votre aide car la je ne voie pas du tout.

voila le code que j'utilise

#include <cstdlib>
#include
#include <GL/gl.h>
#include <GL/glu.h>

using namespace std;

int main(int argc, char *argv[])
{
int i=0;
while ( i != 2 ){
printf("2 pour exit\n");
scanf(" %d",&i);
if ( i == 1 ){
unsigned char * data = new unsigned char[3*1024*768];
glReadPixels(0, 0, 1024, 768, GL_RED, GL_UNSIGNED_BYTE, data);
printf(" %s \n",data);
}
}
system("PAUSE");
return EXIT_SUCCESS;
}

2 réponses

platon179 Messages postés 237 Date d'inscription lundi 20 mai 2002 Statut Membre Dernière intervention 22 juillet 2011 2
10 févr. 2006 à 15:42
Salut :)



Tu n'as pas créé de fenêtre OpenGL... Depuis où veux-tu, dès lors, lire
les pixels ? Tu ne peux le faire QUE si la fenêtre OpenGL a déjà été
ouverte et que le contexte OpenGL soit initialisé correctement.



Ouvrir une fenêtre OpenGL : http://nehe.gamedev.net, premier tutorial sur la gauche.

Tu as le choix : soit tu utilises la version API Win32 qui ne
fonctionnera donc que sous Windows, soit tu utilises GLUT qui est
portable.



Bonne journée

@+
0
cs_breton51 Messages postés 78 Date d'inscription jeudi 21 avril 2005 Statut Membre Dernière intervention 15 novembre 2018
13 févr. 2006 à 10:09
j'ai resolu une partie de mon pb, openGL n'est pas adapter pour ce que je voulai en faire. En effait le but de mon pg est de faire une capture d'ecran de mon bureau et non d'une fenetre.

je recherche le moyen d'y parvennir je reposterai une foi le pb resolu

merci en tout cas de ta reponce platon179 j'ai ete voir sur : http://glinfrench.apinc.org/rubrique.php3?id_rubrique=2
qui est aussi un tuto sur openGL en francais

A+............
0
Rejoignez-nous