Zurück   Flashforum > Flash > Flash Fortgeschritten > Flash CS5 Professional

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 02-12-2011, 11:41   #1 (permalink)
BoL
 
Benutzerbild von Thrawn57
 
Registriert seit: Mar 2006
Beiträge: 33
AS3 Timer und ENTER_FRAME Bug im Plugin?

Hallo Zusammen,

war schon lang nicht mehr hier . Mir ist heute ein komisches Verhalten im Zusammenhang mit dem Flashplayer-Plugin (Opera, FF + Win7 ) aufgefallen. Ich habe es umgangen, aber mich würde interessieren, wie man das korrekt abfangen kann.

Mit einem Timer habe ich einen Partikelemitter gebastelt. Die Partikel selbst hören auch auf ENTER_FRAME-Event bzw. TimerEvent um Werte zu manipulieren bzw. ab einer bestimmten Lebensdauer zu sterben.

Soweit so gut funktioniert der Spaß

Sobald man im Browser einen anderen Tab öffnet oder das Browserfenster mit einer anderen Anwendung verdeckt, stoppen die Events und starten wieder beim aufdecken. Die Events scheinen dabei im Hintergrund zu zählen, wie oft sie während der Pause aufgerufen worden wären und triggern sofort die gezählte Anzahl.

Bei mir machte sich das Bemerkbar, dass auf einmal ein ganzer Partikelhaufen erzeugt wurde - zum Glück hatte ich nur sekundenweise ein Symbol erzeugt.

Ich konnte das umgehen, in dem ich eine feste Anzahl der Partikel erzeuge und sie in einem Array sammle. Das Array iteriert bei jedem Event-Trigger, der mit diversen Abfragen den Partikel manipuliert ... ich finde diese Lösung ist ziemlicher schwachsinn und absolut unhandlich, vorallem wenn man mal 100 Partikel pro Sekunde erzeugen möchte

Hoffe Ihr habt ein paar Ideen, wie man abfangen kann, ob die Stage im Browser sichtbar/aktiv ist.
__________________
Gruß
Kripfe

--------------------------------
Lee Brimelow sei Dank
gotoAndLearn.com
--------------------------------

Geändert von Thrawn57 (02-12-2011 um 11:47 Uhr)
Thrawn57 ist offline   Mit Zitat antworten
Alt 02-12-2011, 17:29   #2 (permalink)
Neuer User
 
Registriert seit: May 2008
Beiträge: 109
Dein Problem klingt nach Throttling. Throttling wurde mit 10.1 eingeführt. Dabei dreht der FlashPlayer die FPS auf 2 runter, wenn die Stage im Tab nicht mehr sichtbar ist oder der Tab gewechselt wurde.

Mit 10.3 wurde für FP 11 das ThrottleEvent angekündigt, allerdings kam bisher nichts finales

"Pause/sleep/resume Events — Improve application performance and reliability through a new ThrottleEvent. This feature provides AS3 new event notifications by exposing an event to inform the content of the throttling, the content can send a message to the server so that server and client are kept in sync. For example, using Flex and LiveCycle with the Flash Player, a customer tries to use Flash Player to display reports. When the user switches to another tab and hides the Flex app, the Flash Player throttles the Flex app. The content is not informed of this change, so the server continues pushing data to the client Flex app. Eventually the application breaks under the load of data coming from the server while the app is throttled down."

Vielleicht kannst du das VisibilityEvent nutzen, immerhin verweist das VisibilityEvent auf das ThrottleEvent - welches aber nicht existiert ;-)
Wakka ist offline   Mit Zitat antworten
Alt 05-12-2011, 10:55   #3 (permalink)
BoL
 
Benutzerbild von Thrawn57
 
Registriert seit: Mar 2006
Beiträge: 33
Ah Danke Wakka. VisibilityEvent wird mir bestimmt weiterhelfen.

Ich finde es ja ganz sinnvoll Throttling einzuführen, aber da hätte Adobe das Verhalten des Eventtrigger besser ansehen können. Spätestens wenn ein TimerEvent einen Movieclip erzeugt, der wiederum auch einen Eventlistener nutzt, hat man den Salat. Da alle TimerEvents nachgeholt werden, aber nicht die der erzeugten MovieClips, weil die MCs ja erst in dem Moment des Nachholvorgangs erzeugt wurden.
__________________
Gruß
Kripfe

--------------------------------
Lee Brimelow sei Dank
gotoAndLearn.com
--------------------------------
Thrawn57 ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
as3, bug, enter_frame, movieclip, timer

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Gegenteil zu Enter_Frame agn0 ActionScript 3 6 11-03-2009 22:17
remove enter_frame zweitewahl ActionScript 3 6 20-04-2008 12:44
Fragen zu Timer und ENTER_FRAME Event brookman ActionScript 3 3 16-05-2007 13:22
ie will flash 7 plugin laden, obwohl MX seite und plugin vorhanden homie Flash MX 2 23-10-2003 17:19


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:18 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele