Toon posts:

[actionscript] fig/tekst shake

Pagina: 1
Acties:

Verwijderd

Topicstarter
beste flasher, ben gisteren eens begonnen in het verdiepen van het actionscript in flash 5. Ik moet zeggen, het heeft
best veel weg van javascript.
Maargoed...ik heb flink liggen klooien om een figuur of tekst heel snel te laten trillen, dmv actionscript.
Het moet dus heel vloeiend gaan, dus niet echt hakkelend.
Iemand een idee, of tutorial hoe ik dit voor elkaar krijg.
het enigste wat ik vind als ik zoek op verschillende fora,
is de window shake, maar dat is hem niet.
Grtz
da22

Verwijderd

Een echte trilling is een sinusvormige beweging, dus ik denk dat je er een klein beetje goniometrie in moet gooien :)

Verwijderd

Yep met een sinus formule is dat goed te doen.

Als je een variabele i steeds eentje groter laat worden en je geeft als clipevent aan een mc:
code:
1
2
3
i++;
_x=Math.sin(i)+275;
_y=Math.sin(i)+200;

Dit is beetje eentonig, dus kan je dit beetje veranderen:
code:
1
2
3
i++;
_x=Math.sin(2*i)+275;
_y=Math.sin(i)+200;

Dit is een lissajous figuurtje in het heel klein, sinus loopt immers van -1 naar 1 en weer naar -1.

Voor langzamere trilling moet je i niet met 1 laten toenemen maar met 0.1 of iig kleiner dan 1, moet zelf maar beetje proberen. Probeer dit niet bij een enorme tekst want dit zal niet werken, dat is te zwaar. Dus gooi het alleen op een stipje ofzow...

Verwijderd

Topicstarter
hey hardstikke bedankt beide! ook bedankt voor de uitleg!! ik ga meteen aan de slag :D

Grtz

Verwijderd

Topicstarter
hey, het werkt perfect, alleenuh, zou het bewegen niet een klein beetje verfijnd kunnen worden? dat ie wel trilt, maar dat er mee een fijne beweging zit...begrijp je?
ohja, wat betekent die i++ eigenlijk?
je hoeft het figuur/tekst dus geen naam te geven of een variabele van te maken he?
grtz

Verwijderd

i++ is i met 1 verhogen

fijner bewegen :? doe eens een wat lagere frequentie dan, of een grotere amplitude, misschien wat gonio combineren, maar dan wordt het al snel erreg log
Op maandag 18 maart 2002 22:14 schreef 3d-dude het volgende:
i++ is hetzelfde als i=i+1

is gewoon een afkorting
en scheelt cpu cycles, maar dat boeit tegenwoordig nauwlijks meer (als we vroeger geen inc(i) gebruikten kregen we een pak voor ons broek >:))

Verwijderd

i++ is hetzelfde als i=i+1

is gewoon een afkorting

Verwijderd

Topicstarter
aah, dus i++ = i=i+1
weet ik dat ook weer :)

Nou, als ik de getallen tussen de haakjes omlaag haal, of helemaal weg haal zoals dit:
i++;
_x=Math.sin(i)+275;
_y=Math.sin(i)+200;
dan zie je nauwelijks de bweging nog, ik wil dus zeg maar dat hij duidelijk heen en weer gaat met een soort van motion blur. maar ik weet niet of dit kan met actionscript, was maar een vraagje 8-)
Grtz

Verwijderd

Je kunt door er dit van te maken:
code:
1
2
3
i++;
_x=Math.sin(2*i)*2+275;
_y=Math.sin(i)*2+200;

de trilling wel duidelijker maken,

verder kun je wel een motion blur (denk dat je beetje iets bedoeld als poppetjes op xiao xiao) maken, maar dit gaat echt te koste van je performance, je zult dan met gedulicate mc'tjes moeten werken dus in _alpha afnemen en achter lopen qua beweging op het eerste mc'tje.

dan zou je het eventueel nog met kleine bitmapjes kunnen doen, dit zou wel beter zijn voor performance, maar dan worden je swf files groter waardoor mensen langer moeten laden. denk dus dat jij voor ogen hebt erg moeilijk gaat worden...

Verwijderd

Topicstarter
kzal in ieder geval eens flink gaan klooien,
bedankt he!!
Grtz
Onno

Verwijderd

Op dinsdag 19 maart 2002 17:34 schreef da22 het volgende:
kzal in ieder geval eens flink gaan klooien,
bedankt he!!
Grtz
Onno
s goede :),

nog even reply op je mailtje, weet iedereen dat. ik zal binnenkort deel van me experimenten op me site open source maken, maar denk dat ik alleen experimenten met basic dingen online zet, omdat de lastigere experimenten zijn opgebouwd uit het combineren en het wat moeilijker gebruiken van die basic dingen. zal dus voornamelijk leer dingetjes online zetten waarmee je als je die door hebt zelf wel de rest dat op me site staat kan maken :)...
Pagina: 1