Comment faire du 2d en opengl?? [opengl] - Programmation
Marsh Posté le 06-06-2001 à 12:01:36
si tu fais ça sous unix, j'ai vu des trucs sympa avec la lib allegro
Marsh Posté le 06-06-2001 à 13:02:28
ben il existe quelques fonction opengl qui sont capables de travailler en 2d, mais dans ce cas le mieux est peut etre de faire les effets toi meme, tu initialise l'écran soit avec Win32 ou DirectDraw et ensuite tu te debrouille pour faire tes effets toi meme.
Marsh Posté le 06-06-2001 à 14:37:03
t'aurai pas un petit exemple darkoli stp??
pasque je devrai arrivé à initialiser mais après je vois pas comment afficher quelque chose qui soit autre chose qu'une image.
Marsh Posté le 06-06-2001 à 17:23:26
ben tu peux par exemple afficher des lignes et des points !!! (glLines et glPoints), mais sinon tu ne peux pas vraiement faire grand chose en 2d quand tu veux faire comme toi un effet de feu car dans ce cas, il faut pouvoir acceder directement aux pixels de l'image (ou du buffer avant affichage).
je regarde pour l'exemple, il faut que je cherche
Marsh Posté le 07-06-2001 à 09:41:14
oki merci, c'est bien ce qui me semblait pour l'accès à la mémoire, c'est pas trop possible en opengl, le truc, c'est qu'on doit bien pouvoir creer une zone mémoire, à l'identique d'une zone d'écran, et la convertir en texture, pour l'afficher sur un polygone. Le sul truc qui me tracasse c'est comment faire pour savoir exactement la coordonné des points par rapport à l'ecran.
Bon j'attend ton exemple avec impatience
Marsh Posté le 08-06-2001 à 09:39:19
ben je peux te poster un exemple ce soir avec un truc qui affiche des image dans Opengl, mais le probleme c'est que ce ne sera pas tres rapide !!!
j'avais un exemple qui affichait un effet de plasma à l'aide de DirectX et en Assembleur32 qui est pas mal et que tu pourrais recuperer, je le cherche (j'etais en congé jeudi).
Marsh Posté le 08-06-2001 à 09:58:12
je suis desolé kick mais c'est de l'assembleur :
Code :
|
Marsh Posté le 08-06-2001 à 09:59:28
En tout cas ton source il a l'air marrant avec ses a repetition... vive la programmation fun
Marsh Posté le 08-06-2001 à 10:20:23
la formule pour faire un feu:
- deux lignes en bas de l'écran avec des couleurs aléatoire dans ta palette de feu (donc du rouge vers le noir en passant par le jaune orangé...)
- la formule pour les pixels se trouvant au dessus de ses deux ligne:
prenons pour un pixel de coordonnées x et y :
pixel_color(x,y) = (pixel_color(x - 1,y + 1) +
pixel_color(x,y + 1)
pixel_color(x + 1,y + 1)
pixel_color(x,y + 2)) / 4
voila pour un joli petit feu
sinon, pour un fondu au noir, la formule est la suivante :
pixel_color(x,y) = (pixel_color(x - 1,y - 1) +
pixel_color(x + 1,y - 1)
pixel_color(x - 1,y + 1)
pixel_color(x + 1,y + 1)) / 4
Un petit conseil : pour éviter le clipping, utilise un système avec backbuffer
PS : je pars du principe que les coordonnées (0,0) sont en haut à gauche de ton écran.
Marsh Posté le 08-06-2001 à 12:00:59
tgrx a écrit a écrit : En tout cas ton source il a l'air marrant avec ses a repetition... vive la programmation fun |
c'est clair c'est super marrant
Marsh Posté le 06-06-2001 à 11:35:47
ouais je cherche à faire des trucs simple en 2d sous opengl, mais je sais pas comment m'y prendre. Du style comment faire un effet de feu sur un ecran.