Zurück   Flashforum > Flash > Mobile Flash und Flash Lite

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 14-05-2011, 16:34   #1 (permalink)
Möchtegern
 
Registriert seit: Sep 2007
Beiträge: 209
Ruckeln vermeiden/Performance verbessern

Hallo!

Habe leider gerade keinen Zugriff auf die Datei, werde Codeauszüge aber nachreichen. Wenn ihr aber schon ein paar Lösungsansätze bereit habt würde ich mich sehr freuen

Ich habe ein kleines Spiel entwickelt. Gesteuert wird die Spielfigur über die Bewegung des Smartphones. Bei jedem UPDATE Event werden die koordinaten berechnet. Nur leider bewegt sich die figur nicht flüssig..

FPS habe ich während der animation um die 20 von 30. Ist nicht gerade perfekt aber zumindest müsste es halbwegs flüssig erscheinen?

Meine Erklärung dafür ist momentan dass das accelerometer UPDATE event nicht so oft ausgeführt wird wie das ONENTERFRAME event. Also zB nur 5x in der sekunde. Gibt es eine exakte Zeitangabe dafür? Dann könnte ich die Funktion einfach per Timer nochmal ausführen.

Im hintergrund bewege ich wolken und eine Sonne per Tweenlite da diese keine fixe laufbahn haben. Diese laufen den 20 FPS entsprechend flüssig. Also kann es nicht an der Leistung liegen? Ich habe schon bei fast allen Movieclips die option "als Bitmap zwischenspeichern" aktivert.

Noch eine allgemeine Frage: Die Accelerometer Funktion hat eine berechnung der koordinaten bei der variablen zwischengespeichert werden müssen. Ist es besser immer lokale variablen neu zu erstellen (also mit "var" in der funktion) oder global erreichbare variablen (also damit meine ich variablen im gleichen level wie die funktion, außerhalb der funktion; kenne mich mit flash-fachsprache nicht aus ;-)) neu zu beschreiben? Oder macht das.keinen unterschied?

Danke im voraus!
halber.johann ist offline   Mit Zitat antworten
Alt 14-05-2011, 16:51   #2 (permalink)
in the boondocks
 
Benutzerbild von shin10
 
Registriert seit: Feb 2006
Ort: Augsburg
Beiträge: 3.500
Hi,

da ich momentan noch kein Gerät in die Richtung vor mir hatte konnte ich selbst da noch nicht experimentieren. Was mir in der Referenz aber gleich ins Auge springt ist setRequestedUpdateInterval(). Damit dürfte das Problem auch gleich wieder aus der Welt sein.

Zur Frage mit den lokalen Variablen. Nach meiner Erfahrung ist das, dass das Instanzieren einer lokalen Variable erst mal Zeit kostet. (Daher sollte man dies z. B. nicht in einer Schleife machen, wenn es auch ausserhalb geht.) Auf der anderen Seite ist der Zugriff (lesen/schreiben) auf eine lokale Variable dafür wieder schneller. Scheinbar weil vor dem Zugriff immer geprüft werden muss, ob sie existiert lokal existiert oder nicht und damit der Zugriff auf eine nicht lokale Variable länger dauert. Welche Variante nun schneller/besser ist, hängt davon ab, was du mit ihr machst und vor allem wie oft. Eine genaue Antwort bekommst du also nur von Fall zu Fall durch Testen. Wie das auf mobilen Geräten ist, kann ich dir aber leider nicht genau sagen. Vermutlich ähnlich, aber man weiß ja nie.

mfg

sx
shin10 ist gerade online   Mit Zitat antworten
Antwort

Lesezeichen

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
Performance verbessern bei Video-Buttons mit Tweener FloLine ActionScript 3 10 14-02-2011 15:45
Flash Performance verbessern Alex2008 Flash Einsteiger 3 08-05-2008 14:16
Performance verbessern Allright Flash Einsteiger 3 26-12-2006 18:15
performance verbessern? Fede Flash MX 1 04-01-2006 15:45
Loop Performance verbessern k7c4 ActionScript 1 8 24-02-2003 09:25


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:49 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele