EFFETDECOLLEMENT

cs_Mafassure Messages postés 1058 Date d'inscription jeudi 24 juillet 2003 Statut Modérateur Dernière intervention 14 février 2009 - 11 août 2006 à 21:35
scara 51 Messages postés 94 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 18 septembre 2007 - 11 sept. 2006 à 13:54
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/39044-effetdecollement

scara 51 Messages postés 94 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 18 septembre 2007
11 sept. 2006 à 13:54
Pour le décollement par un coin ya des tas de sources, faut chercher sur google "pageflip" et "flash". Yen a même avec des flux vidéos.

Ils utilisent tous un BitmapData pour lisser et pour supporter du textField sur le movieClip (d'où l'utilisation du BitmapData sur les 2 faces et non sur une seule).
Pour l'ombre après ya des tas de solutions.
mousman Messages postés 23 Date d'inscription jeudi 27 janvier 2005 Statut Membre Dernière intervention 10 septembre 2008
27 août 2006 à 23:57
g pas tout compris ! ça veut dire quoi 565 tour XD ?

Sinon Scara , je suis pas sur d'avoir tout compris non plus (g lu vite fait),
mais je v essayer et si ça le fait je mettrai en ligne.
Toutes les améliorations sont bienvenues,
c'est aussi le principe de ce site.
En plus on peut très bien imaginer plusieurs effets de decollement à mettre dans un package !

Ca risque juste de prendre un peu de temps, je n'ai pas beaucoup de temp libre......


Ca peut etre sympa un décollement par un coin.

Mousman
bibi_81 Messages postés 345 Date d'inscription jeudi 2 septembre 2004 Statut Membre Dernière intervention 25 octobre 2007
26 août 2006 à 23:23
Mais n'empeche que le decollement fait 565 pti tour XD...(vive trace(""); XD)
bibi_81 Messages postés 345 Date d'inscription jeudi 2 septembre 2004 Statut Membre Dernière intervention 25 octobre 2007
26 août 2006 à 23:20
c'est trés esthétique en plus !! lol ^^
Mais l'image selectionnée est un peu "pourrie"(vous me passerez l'expression);
Allez @+
scara 51 Messages postés 94 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 18 septembre 2007
26 août 2006 à 05:05
Cette source est pas mal.

Une petite idée pour une amélioration. Elle n'engage que moi. C'est de faire la même chose, mais avec le décollage des coins. Le principe :
- 2 masques qui cachent chacun des 2 côtés comme ici.
- un effet de rotation des clips avec _rotation
- une image chargée par un MovieclipLoader normal (pour ne pas être dépendant du swf)
- la seconde (le verso) qui doit être une bitmap pour une rotation de qualité avec target_mc comme MovieClip de chargement d'un MovieclipLoader qui a pour écouteur MonListenerClipLoader :

// Donc ceci pour le verso uniquement
MonListenerClipLoader.onLoadInit = function(target_mc) {

myBitmap = new BitmapData(
target_mc._width*100/target_mc._xscale,
target_mc._height*100/target_mc._yscale,
true,
0x00000000);
myBitmap.draw(target_mc);

target_mc.removeMovieClip();

_root.createEmptyMovieClip("leNouveauMovieclipAvecLeBitmap", _root.getNextHighestDepth());

_root.leNouveauMovieclipAvecLeBitmap.attachBitmap(myBitmap, 1, "auto", true);

}


- la rotation du côté qui se décolle (le verso) calculée avec le triangle rectangle qui se forme (comme celui qui apparait en pliant le coin d'une page), cf les cours de trigo :)

- et pour finir (enfin là je vais me faire lincher car je ne fais que donner des idées sans sortir de sources) un beginGradientFill (qui crée un effet de relief) du type :

var matrix:Matrix = new Matrix();
matrix.createGradientBox(30, 30, 0, 0, 0);
// angleDuVerso est la variable qui correspond à l'angle du clip verso
matrix.rotate(angleDuVerso);
_root.effetRelief.beginGradientFill("linear", [0x000000, 0x000000], [80, 0], [0x00, 0xFF], matrix);

// et après il faut spécifier la zone de remplissage qui correspond à l'endroit de décollement

// puis il faut rajouter un masque qui n'est autre qu'une copie du masque du verso pour que le calque effetRelief soit limité à la zone qui nous intéresse.


ps : je tiens à rappeler que je ne fais que faire une suggestion, et que cette source a le mérite d'exister ...
mousman Messages postés 23 Date d'inscription jeudi 27 janvier 2005 Statut Membre Dernière intervention 10 septembre 2008
17 août 2006 à 09:28
exact !!
j'ai mis en ligne la nouvelle source.
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 12
16 août 2006 à 13:18
J'ai trouvé peu après : tu passes la compression de ton image en Jpeg au lieu du Gif, tout simplement.
Ensuite, passe ton animation en 30 ou 60 img/sec, tu verras que l'effet est bien plus fluide.

Peg'
mousman Messages postés 23 Date d'inscription jeudi 27 janvier 2005 Statut Membre Dernière intervention 10 septembre 2008
16 août 2006 à 10:29
C'est une bonne question !!!!
Un café gratuit à qui trouve la réponse :-D
J'avais pas fait gaffe mais je pense que ça vient de l'image,
sa taille compressée dans le fla est de 120Ko,
ce qui soulève une autre question : comment avoir un fla de 95Ko avec dedans une image de 120Ko...

Mousman
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 12
15 août 2006 à 21:09
curieux de savoir comment on obtiens une version compilée plus grosse que la version source ....

Peg'
mousman Messages postés 23 Date d'inscription jeudi 27 janvier 2005 Statut Membre Dernière intervention 10 septembre 2008
14 août 2006 à 11:11
oups... un oubli .
merci !
cs_Mafassure Messages postés 1058 Date d'inscription jeudi 24 juillet 2003 Statut Modérateur Dernière intervention 14 février 2009
11 août 2006 à 21:35
l'effet et tres reussi,
y'a une variable inutilisée -> var offset:Number = 30;
sinon c'est nickel !
Rejoignez-nous