Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2632 connectés 

 


Dernière réponse
Sujet : [C/C++/OPENGL] comment ecrire dans un HDC
kick petite question, comment on fait pour reserver une zone memoire en rgb, pasqu'avec glCopyPixels, le dernier parametre representant la surface correspond à un unsigned int et je sais pas comment on associe une zone memoire à un entier
 
HEEEEEEEELLLLLLLPPPPPPPPPPPPPPPP

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
kick petite question, comment on fait pour reserver une zone memoire en rgb, pasqu'avec glCopyPixels, le dernier parametre representant la surface correspond à un unsigned int et je sais pas comment on associe une zone memoire à un entier
 
HEEEEEEEELLLLLLLPPPPPPPPPPPPPPPP
kick ok je vais essayer avec glcopypixel, mais ca risque pas d'etre un peut lent si je fait un truc du style à chaque frame
seblamb Pour écrire dans un HDC il faut utliser les primitive graphiques GDI de windows ( Bitblt entre autre)
Donc tu fais une recherche sur "GDI" dans le SDK de microsoft et tu trouve ton bonheur.
janoscoder on ne peut écrire directement sur une surface openGL? il ne faut pas espérer avoir un pointeur sur les données graphiques, et de toute manière c'est tant mieux, car ça ralentirait tout d'obliger le bus AGP à transférer des données non consécutives et dans les deux sens en plus.
Le mieux pour tripatouiller directement et avoir des effets est de rendre son effet en RGB (par exemple) dans une zone mémoire réservée par ses propres soins, et de la copier à l'écran avec glCopyPixels.
Enfin, y'a pas de données graphiques dans un HDC, c'est juste le contexte graphique.
kick merci, mais je sais pas comment on ecrit dans un hdc, ya pas des tutoriaux  
merci
darkoli tu peux recuperer et logiquement remplacer une partie de l'image en cours de realisation
 
glReadPixels(0,0,largeur_ecran,hauteur_ecran,GL_RGB, GL_UNSIGNED_BYTE, image);
kick oui merci, c'est bien bo tout ca, mais meme si on peut faire du 2d, on peut pas acceder à la zone memoire representant l'ecran, pour faire par exemple, un effet de feu par exemple.  
Et autrement, comment faire pour afficher à des coordonnées voulus sur l'ecran quand il y a une camera(les coordonnées sont relative à la camera et non plus à la resolution de l'ecran).voila, merci quand meme pour vos reponse ci dessus.
titi1578 Voici le code si tu veux inserer de l'opengl avec une application sous MFC (Windows) :  
 
HWND  ghWnd;
HDC   ghDC;
HGLRC ghRC;
CDC*   cDC;
 
 
cDC = m_Opengl.GetDC();
ghDC = cDC->m_hDC;
 
ghRC = wglCreateContext(ghDC);
wglMakeCurrent(ghDC, ghRC);
 
displayGL(ghDC);
 
 
m_Opengl represente un objet graphique.
displayGL affiche les objets opengl.
LeGreg OpenGL = API 2D/3D
 
Je vais t'etonner:
il est meme possible d'accelerer de l'affichage 2D
avec une carte acceleratrice 3D.
 
Voila
LEGREG
golgoth99 il est tt a fait possible de faire de la 2D en opengl !!!
gilou un HDC (a la sauce windows) ca represente beaucoup plus: tout ton etat graphique en fait.
A+,
kick voila, je m'interresse à la programmation graphique depuis quelque temps, et je me pose quelques question.
Est il possible de faire du 2D en opengl?(je crois pas)
Peut-on ecrire dans un HDC? ca doit etre une zone memoire representant chque pixel de l'ecran?
merci d'avance
 
KICK

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)