OVH Cloud OVH Cloud

[dirMX] - couche alpha

4 réponses
Avatar
RB
salut à tous

je fais des essais d'animation
et je cherche a savoir si, il y a un moyen de n'utiliser que la couche
alpha d'une image 32 bits et de l'affecter à un autre acteur ou sprite ?
un peu comme avec la fonction "mask".

merci

RB

4 réponses

Avatar
bubar
RB wrote:
salut à tous

je fais des essais d'animation
et je cherche a savoir si, il y a un moyen de n'utiliser que la couche
alpha d'une image 32 bits et de l'affecter à un autre acteur ou
sprite ? un peu comme avec la fonction "mask".


Regarde dans l'aide à extractalpha(), setalpha() et usealpha

--
Bubar
Avatar
RB
ce que j'espérais , c'était de pouvoir animer une couche alpha sur un
sprite. le sprite etant fixe, seul la couche alpha bouge et par exemple
decouvre petit a petit le sprite concerné...

d'apres ce que j'ai compris les fonctions extractalpha(), setalpha() et
usealpha n'offre pas cette possibilité.

merci à Bubar

Rb

bubar wrote:
RB wrote:

salut à tous

je fais des essais d'animation
et je cherche a savoir si, il y a un moyen de n'utiliser que la couche
alpha d'une image 32 bits et de l'affecter à un autre acteur ou
sprite ? un peu comme avec la fonction "mask".



Regarde dans l'aide à extractalpha(), setalpha() et usealpha

--
Bubar



Avatar
bubar
RB wrote:
ce que j'espérais , c'était de pouvoir animer une couche alpha sur un
sprite. le sprite etant fixe, seul la couche alpha bouge et par
exemple decouvre petit a petit le sprite concerné...

d'apres ce que j'ai compris les fonctions extractalpha(), setalpha()
et usealpha n'offre pas cette possibilité.

merci à Bubar


Si c'est faisable, mais peut être assez lentement.
extractalpha ne te sert que si tu veux utiliser une couche alpha d'un
bitmap existant.
Mais rien ne t'empêche de créer ta propre couche alpha. En effet une
couche alpha n'est rien d'autre qu'un bitmap en 256 niveaux de gris.
En modifiant cette image (avec les fonctions classique copypixels,
setpixel, drax, fill, ...) et en l'incrustant dans ton bitmap final avec
setalpha, tu peux parfaitement animer la couche.

Pour tester, crèe un bitmap 8 bits avec un dégradé de gris, soit dans un
photoshop, soit avec un objet vectoriel.
Puis tu modifies à chaque frame cette image (ou plutôt une copie de
l'image) avec un copypixels, qui va décaler cette image de 1 pixel à
chaque fois et tu appliques cette seconde image en tant qu'alpha d'un
autre bitmap. La transparence va se déplacer à chaque frame.

--
Bubar
Avatar
RB
Bon,
je vais tester
ce sera surement plus leger que ma methode
ou j'avais plusieurs bitmap animées (pour ma couche alpha)
que je remplacais , une differente à chaque frame.

merci pour cette autre solution

RB

bubar wrote:
RB wrote:

ce que j'espérais , c'était de pouvoir animer une couche alpha sur un
sprite. le sprite etant fixe, seul la couche alpha bouge et par
exemple decouvre petit a petit le sprite concerné...

d'apres ce que j'ai compris les fonctions extractalpha(), setalpha()
et usealpha n'offre pas cette possibilité.

merci à Bubar



Si c'est faisable, mais peut être assez lentement.
extractalpha ne te sert que si tu veux utiliser une couche alpha d'un
bitmap existant.
Mais rien ne t'empêche de créer ta propre couche alpha. En effet une
couche alpha n'est rien d'autre qu'un bitmap en 256 niveaux de gris.
En modifiant cette image (avec les fonctions classique copypixels,
setpixel, drax, fill, ...) et en l'incrustant dans ton bitmap final avec
setalpha, tu peux parfaitement animer la couche.

Pour tester, crèe un bitmap 8 bits avec un dégradé de gris, soit dans un
photoshop, soit avec un objet vectoriel.
Puis tu modifies à chaque frame cette image (ou plutôt une copie de
l'image) avec un copypixels, qui va décaler cette image de 1 pixel à
chaque fois et tu appliques cette seconde image en tant qu'alpha d'un
autre bitmap. La transparence va se déplacer à chaque frame.

--
Bubar