|
La Communauté Webmaster 
| Pages: [1] |
 |
|
|
|
Auteur |
Sujet: swf lent que faire? (Lu 1380 fois) |
|
 |
swf lent que faire?
« sur: le 25-08-2004 a 16:28:49 » |
|
|
|
|
|
|
 |
Re:swf lent que faire?
« Répondre #1 sur: le 25-08-2004 a 23:36:24 » |
|
hacknours
P'tit nouveau
 
Hors-Ligne
Sexe: 
Messages: 137

Vive ActionScript !!!
|
Salut, Je n'utilise pas de PC, mais j'ai déjà été confronté à ce genre de problèmes... Pour que les gens les plus qualifié (= pas moi) puissent te répondre efficacement, tu devrais mettre online un exemple de ton .swf Ce qui ralenti un swf : 1. le mode plein écran 2. d'ordre plus général, une taille d'affichage différente de la taille du swf (ex: 800/600 pour un swf de 400/300) 3. les effets _alpha sur des clips de grandes taille (même un clip simple aura ce problème s'il est de grande taille) (ex: un carré blanc qui disparait et apparait) 4. de nombreux duplicateMovieClip. même minuscules, une vingtaine d'étoiles qui défilent en permanance ralentissent considérablement l'animation. 5. un code action script un peu tordu. (ex: une boucle for dans un enterFrame)
Dans ton cas, si changer le FPS ne résous pas le problème, cela viens surement du code. Dans un premier temps, mieux vaut tester le swf dans ton explorer internet. Dans un second temps, fais un preload. Peut-être le lag viens du chargement en même temps que la lecture. Trois, si tu dois absolument synchroniser ton animation (avec une bande son par exmple) tu peux forcer l'animation à accéder à l'image voulue, en temps voulu (ex: onSoundComplete ou if(tempsécoulé>1000){ _root.gotoAndPlay(10)...)
En conclusion, forcer l'animation à accéder à une image ne résoudra pas les problèmes de lag, mais pourra déjà être calée sur un timing. Si les problèmes de lag viennent de clips de grande taille qui bougent... il faut refaire le graphisme (ex: un fond qui bouge latéralement ---> découper les objets, récupérer la couleur princpale du fond, mettre un fond fixe de cette couleur et ne faire bouger que les objets)
Mieux vaut tout de même mettre un exemple en ligne çà serait plus simple. Bon courage.
|
|
|
|
|
 |
Re:swf lent que faire?
« Répondre #2 sur: le 26-08-2004 a 15:43:30 » |
|
tavman
Habitué
  
Hors-Ligne
Messages: 466

HS
|
Pas grand chose a rajoutter... tu t'en sort tres bien hacknours...
C'est vrai qu'une annimation peut ralentir a cause de beaucoup de choses mais peut etre que tu n'as pas le meme pluggin Flash sur tes 2 config... Le pluggin Flash 7 lira mieux les annimations que le Flash 6.
Sinon, c'est vrai qu'il vaut mieux se limiter sur les effets d'alpha et tout ca, sinon, ca te jouera des tours... Les onEnterFrame peuvent aussi faire beaucoup ramer (tout dépend du code que tu met dedans, mais un grosse boucle for... c'est pas le pieds). Sinon, pour le callage d'une annimation, tu pourrait très bien imaginer un truc tout simple :
- une Liste avec des temps dedans - une autre liste avec le numéro des frame correspondant au temps (pas la peine de le faire pour chaques frames...) - un setInterval (dans ce cas précis, il est préférable au onEnterFrame) qui regarde tous les X temps et qui recale ton annim
Sinon, la rapidité d'une annimation dépend aussi beaucoup du navigateur dans lequel tu la lie... J'ai déjà fait des annim qui passaient très bien sous IE et qui ramaient a fond sous Mozzi par exemple...
Bon sinon, bonne chance a toi...
PS : ton problème pourrait aussi venir de manipulations intensives de textes ou des trucs comme ca... en général, ca bouffe plein de ressources... |
I-Radian |
|
|
 |
Re:swf lent que faire?
« Répondre #3 sur: le 26-08-2004 a 16:17:50 » |
|
|
|
|
 |
Re:swf lent que faire?
« Répondre #4 sur: le 26-08-2004 a 17:30:16 » |
|
|
|
|
 |
Re:swf lent que faire?
« Répondre #5 sur: le 26-08-2004 a 17:34:29 » |
|
tavman
Habitué
  
Hors-Ligne
Messages: 466

HS
|
En tout cas, j'aime bien ton site... mais jai rien vu comme images dans les menus... enfin bon...
Sinon, le probleme doit venir de trucs comme ca :
onClipEvent (enterFrame) { _x = (_x + speed); if (_x >= 800) { _xscale = Math.random() * 150; speed = Math.random() * 0.5 + 1; _x = _width * -1; //trace(speed); } }
Normalement, ca passe parceque t'en a pas beaucoup... mais bon... chai pas trop.
[désollé... me suis planté là....]
et peut etre aussi du fait que t'ait 2 fois :
onClipEvent (load) { }
sur le meme clip... je sais pas si ca joue, je pense pas, mais normalement, vaut mieux n'en mettre qu'un seul... Déjà pour des problemes de lecture, ensuite ca, parceque je pense qu'il n'y en aura qu'un seul qui sera pris en compte...
[/désollé... me suis planté là....]
Bon sinon, jte donne un "ptit truc" pour raccourcir ton code... t'as le droit de faire ceci :
objects = 5; loop = 0; while (loop++ <= objects) { duplicateMovieClip("mask", ("mask" add loop), (16384 + loop)); }
ca reviendra exactement au même... Et puis perso, j'ai vu nulle part que ca ramait (remarquez, c'est pas pour ce que j'ai vu du site...) |
I-Radian |
|
|
| Pages:
[1] |
|
|
|
| |
|
|