Clasa de generare dinamică a reflecției pentru AS3

Hot pe calcaiele perfecte ale reflecției perfecte Alpha Reflections vine de la această clasă de utilitate excelentă pentru reflectarea dinamică a obiectelor afișate, prin amabilitatea lui Martin Christov.




Cum îl folosesc?

Pasul 1:
Copiați fișierul ReflectEffect.as în calea de clasă a proiectului dvs. Flash (sau același director ca și FLA dacă nu utilizați rute de clasă).

Pasul 2:
În codul dvs., creați o nouă instanță a clasei ReflectEffect, parcurgând obiectul afișat pe care doriți să-l reflectați, cum ar fi:

var reflect: ReflectEffect = ReflectEffect nou (movieClipToReflect);

Pasul 3:
Creați o nouă variabilă pentru obiectul reflectat și adăugați-o în scenă (ori oriunde doriți):

var reflectedDown: bitmap = reflect.down (lungime, decolorare, offset, neclaritate, alfa); reflectedDown.y = movieClipToReflect.y + movieClipToReflect.height; addChild (reflectDown);

Funcțiile reflect.down (), reflect.up (), reflect.left () și reflect.right () vor returna o Bitmap a obiectului reflectat în acea direcție. (Este necesar doar parametrul "lungime", restul sunt opțional.) După cum vedeți, aveți câteva opțiuni interesante.

Cred că "lungimea" este clară. Deci, haideți să aruncăm o privire la "fade". De exemplu, dacă puneți 40 pentru lungime și 30 pentru decolorare, reflexia se va termina cu 10 pixeli în spatele reflecției efective. Sau, dacă doriți să setați 40 pentru lungime și 50 pentru estompare. Aceasta va face reflexia să treacă de la un alfa de 1,0 la ceva de 0,2.

Următorul este foarte interesant: "offset". Acest lucru mișcă practic reflexia dvs. în sus / în jos (sau stânga / dreapta) în interiorul ieșirii bitmap. Folosesc această opțiune în previzualizare, astfel încât să puteți muta obiectul în jur și să vedeți un efect similar Mac.

Ultimii doi parametri, "blur" și "alpha", sunt destul de clare - aruncați o privire la comentariile din clasă pentru mai multe informații!

Bucurați-vă și spuneți-ne cum folosiți această clasă :)

Cod