AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  Connexion  

Partagez
 

 surface_getpixel()

Aller en bas 
AuteurMessage
blendman
Utilisateur confirmé: Rang **
blendman

Messages : 432
Projet Actuel : Crée des jeux, logiciels, BD, Romans et nouvelles.

surface_getpixel() Empty
MessageSujet: surface_getpixel()   surface_getpixel() EmptyMar 26 Mai 2015 - 14:40

salut

j'utilise surface_getpixel() afin de récupérer la couleur d'un pixel, et j'aimerai avoir l'alpha.
J'ai essayé ça (trouvé sur yoyogame):


Citation :
col = surface_getpixel(surfaceID, mouse_x, mouse_y);
alpha = (col >> 24) & 255;
blue = (col >> 16) & 255;
green = (col >> Cool & 255;
red = col & 255;

Et j'obtiens toujours alpha = 0, même si j'ai normalement de l'alpha > 0

Vous connaissez un autre moyen d'obtenir l'alpha à partir d'un surface_getpixel() ou draw_getpixel() ?
merci

ps : j'utilise GM8, je vais tester sous Gmstudio, même si je risque de devoir refaire une grosse partie de mon code ^^

Edit :
Bon, j'ai trouvé ce script qui marche nickel (surface_get_alpha()):
http://gmc.yoyogames.com/index.php?showtopic=478668&hl=surface_get_alpha

_________________
- http://blendman.blogspot.com/ -
- http://www.moonkiroe.com -
Revenir en haut Aller en bas
http://blendman.blogspot.com/
onilink_
Modérateur
onilink_

Messages : 9101
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

surface_getpixel() Empty
MessageSujet: Re: surface_getpixel()   surface_getpixel() EmptyMer 27 Mai 2015 - 19:41

Houla c'est lourd comme méthode oO
Mais il semblerait que ces boulets aient pas prévu de façon de faire ça correctement...

Bref obligé de blit le pixel en blend noir sur du blanc pour ensuite récupérer sa valeur...
Du coup tu peux facilement opti le script que t'as linké en gardant la surface spéciale 1x1 pixels en vie tout le long de ton programme.

C'est quand je vois des trucs comme ça que GM me sort par les yeux... C'est vraiment dingue d'oublier ce genre de fonctionnalités (surtout que le getpixel est déjà hyper lent).

_________________
surface_getpixel() Runningpotato1surface_getpixel() TvF6GED
Revenir en haut Aller en bas
 
surface_getpixel()
Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Entraide confirmés-
Sauter vers: