je comprends pas bien une fonction... [SDL] - C - Programmation
Marsh Posté le 30-10-2003 à 10:33:48
oui. mais on peut pas deviner sans connaitre la classe screen. c'est par là qu'il faut chercher
Marsh Posté le 30-10-2003 à 10:57:33
ben screen est de type SDL_Surface
je mets tout le code au cas ou...
source de l'exemple : http://cone3d.gamedev.net/cgi-bin/ [...] xsdl/index
le résultat :
Code :
|
Marsh Posté le 30-10-2003 à 11:05:40
Ca ressemble à la "formule" générale pour trouver un pixel(x,y) dans un buffer vidéo :
Code :
|
screen->pitch/4 doit permettre de récupérer la largeur de ton buffer.
Après recherche :
"pitch: Pitch refers to the width of the surface in bytes."
Comme tu effectues des accès à coup de 4 octets (Uint32), on divise par 4.
Marsh Posté le 30-10-2003 à 11:06:21
bah les lignes 5 et 6 permettent de changer la couleur du pixel de coordonnées (x,y) avec la couleur formée par R,G et B
(Uint32 *)screen->pixels ça permet d'acceder à l'adresse du premier pixel
y*screen->pitch/4 + x en plus, ça te permet de décaler l'adresse jusqu'à celle du pixel-qui-va-bien
edit: grilled
Marsh Posté le 30-10-2003 à 11:14:20
ReplyMarsh Posté le 30-10-2003 à 11:20:49
ah ok... tout s'éclaire...
je croyais que screen->pixels donnait l'adresse du pixel courant => moi pas comprendre...
puis je comprenais pas trop la définition de pitch, mais là s'est devenu limpide d'un coup (enfin grace a vous )
merci tous les deux
Marsh Posté le 30-10-2003 à 11:25:28
enfin, grâce à google surtout... Y'a une tonne de tuts sur la SDL...
Marsh Posté le 30-10-2003 à 10:19:13
youp,
quelqu'un pourrait m'éclairer sur ce pitit bout de code ?
je ne comprends pas la ligne 5.
je devine qu'on donne les coordonnées d'un point à bufp... mais je n'en suis meme pas sur
et je comprends pas comment ca marche
merci de votre aide
je suis neuneu ! n'est-ce pas ?
---------------
oui oui