njo80
Messages postés9Date d'inscriptiondimanche 13 juin 2004StatutMembreDernière intervention11 décembre 2007
-
27 nov. 2007 à 15:11
gamemonde
Messages postés336Date d'inscriptionsamedi 9 août 2003StatutMembreDernière intervention 9 juillet 2011
-
29 nov. 2007 à 11:31
Bonjour,
Je suis en train de créer un petit jeu style zelda (en light), j'ai affiché ma carte ainsi que mon sprite qui bouge.
Pour gérer la collision j'ai tiré un trait noir tout le long des endroit ou le sprite n'a pas le droit d'aller.
Je dois donc vérifier la couleur du pixel de la map. Si le pixel est noir alors on ne peux pas bouger.
Problème : je ne sais pas comment récupérer la couleur du pixel.
Comment faire pour récupérer la couleur du pixel de mon image (à une coordonnée précise) et tester si c'est bien du noir !!!!
cs_Crepuscule3
Messages postés24Date d'inscriptionsamedi 13 octobre 2007StatutMembreDernière intervention25 novembre 2008 27 nov. 2007 à 16:58
Salut,
je suis novice dans ce domaine, mais j'ai déjà une petite
idée sur ton problème. Est-ce que ta map est en bitmap? Si oui, je te
conseil de regarder la source suivante:
Si je ne me trompe pas, il me semble qu'une image bitmap se récompose
en un tableau de pixels dont 3 valeurs correspondant au rouge(R),
vert(V) et bleu(B) leur sont associées. Chaque couleur est codée sur
256 bits. Donc si par exemple R = 255, V=255, B = 255 (maxi pour chaque
couleur), tu obtiendras un pixel blanc. Inversement si R, V, B = 0.
Ainsi, tu n'as qu'à faire pour chaque pixel un test sur R, V et B. Si
pour le pixel[i] tu as R = 0, V = 0, B = 0, alors le pixel[i] est noir.
Ainsi, suivant la taille de ton bitmap (de ta map), tu pourras définir
quels sont les pixels qui sont noir.
Voilà,
j'espère que j'ai pu t'aider. Si ce n'est pas cela que tu
recherchais, je doute pouvoir t'aider d'avantage. C'est à peu près les
seuls choses que je connais en C++ car je travaille actuellement sur un
projet de traitement vidéo en temps réel.
njo80
Messages postés9Date d'inscriptiondimanche 13 juin 2004StatutMembreDernière intervention11 décembre 2007 27 nov. 2007 à 21:04
Le problème c'est que je fais ça en c et non en c++. Donc c'est un peu plus dur...
J'ai vu plusieurs idées sur le net dont bmp_getcolor ou GetPixel et GetRValueG GetGValue et GetBValue.