sebcmoa
Messages postés4Date d'inscriptionlundi 6 décembre 2004StatutMembreDernière intervention21 novembre 2008
-
21 nov. 2008 à 16:13
SebLinck
Messages postés212Date d'inscriptionmardi 17 mai 2005StatutMembreDernière intervention23 juin 2011
-
7 déc. 2008 à 11:39
Bonjour,
Je vous expose mon problème :
- J'utilise la fonction glReadPixels sur une fenêtre invisible. Cela me
retourne bien les données...mais problème connu...cette fonction est
bien trop lente.
- J'essaie donc de récupérer les données de la fenêtre d'une manière
plus rapide. J'ai besoin d'avoir la valeur RGBA de chaque pixel de la
fenêtre pour faire des traitements dessus par la suite.
- J'ai déjà tenté de créer une texture OPENGL et de récupérer les
données avec les fonctions glCopyTexImage2D suivi de glGetTexImage mais les performances ne sont
pas meilleures que glReadPixels!
- Je me suis donc tourné vers l'API windows et getDIBits. getDIBits
n'est pas censé me retourner les valeurs de ALPHA mais un getDIBits +
un glReadPixels de la valeur ALPHA reste plus rapide qu'un glReadPixels
sur les données RGBA.
J'ai donc tenté le code suivant que j'ai trouvé en fouillant la toile :