login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Flash AS3 of plaatjes van teksten

Offline lau - 21/11/2012 23:12
Avatar van lauHTML interesse Momenteel ben ik een app vanuit flash AIR aan het maken.
Ik ben op zoek naar de snelste weergave en beste performance voor de app.

Nu heb ik 4 dynamische tekstvelden met een niet-systeem font die ik via AS3 laat aanmaken (on the fly). Deze laat ik 1 voor 1 zien via cross-fading.
Maar ik vroeg me af of dit beter is voor de performance of gewoon alle teksten omzetten naar plaatsen en deze 1 voor 1 via cross-fading kan laten zien.

Wie heeft hier ervaring mee?

3 antwoorden

Gesponsorde links
Offline vinTage - 21/11/2012 23:17
Avatar van vinTage Nieuw lid Als je het font embed maakt het toch niks meer uit qua performance, of snap ik je vraag niet?
Offline lau - 21/11/2012 23:53
Avatar van lau HTML interesse Font wordt inderdaad ge-embed, maar het lijkt mij dat de app relatief veel moet puzzelen om 4 textfields on-the-fly te creëren, voorbeeld wat ik gebruikt heb (hij klopt niet helemaal, maar is een voorbeeld van hetgeen mijn code opgebouwd is):

  1. var myFont = new Ludida();
  2.  
  3. var myFormat:TextFormat = new TextFormat();
  4. myFormat.size = 80;
  5. myFormat.align = TextFormatAlign.CENTER;
  6. myFormat.font = myFont.fontName;
  7.  
  8. var myText1:TextField = new TextField();
  9. var myText2:TextField = new TextField();
  10. var myText3:TextField = new TextField();
  11. var myText4:TextField = new TextField();
  12. myText1.defaultTextFormat = myFormat;
  13. myText.text = "The quick brown fox jumps over the lazy dog";
  14. myText2.defaultTextFormat = myFormat;
  15. myText.text = "The quick brown fox jumps over the lazy dog";
  16. myText3.defaultTextFormat = myFormat;
  17. myText.text = "The quick brown fox jumps over the lazy dog";
  18. myText4.defaultTextFormat = myFormat;
  19. myText.text = "The quick brown fox jumps over the lazy dog";
  20.  
  21. var textTarget:Array = ('..' etc);
  22. var i:Int = 0;
  23. addChild(textTarget[i]);
  24.  
  25. for (...) {
  26. textTarget.border = false;
  27. textTarget.wordWrap = true;
  28. textTarget.width = 600;
  29. textTarget.height = 400;
  30. textTarget.x = 100;
  31. textTarget.y = 100;
  32. }


Vervolgens gebruik ik tweenlite om deze 4 tekstvelden in en uit te laten faden.
Dit kost naar mijn idee erg veel performance.

Dus ik dacht.. wellicht is het gebruik van 4 plaatjes waarbij ik de teksten na break-apart omzet naar mc's die ik vervolgens kan in en uit faden. Hierbij hoef ik dus ook geen font meer te embedden.

Maar ik weet niet of optie 1 (textfields) of optie 2 (break-apart images) beter is. Maar misschien zit ik er ook helemaal naast hoor met mijn beredenering.
Offline vinTage - 22/11/2012 06:53
Avatar van vinTage Nieuw lid Je kan de performance 'testen' door een stukje code toe te voegen, google eens op "as3 memory monitor" of iets in die strekking.

Ik gok dat plaatjes wel iets rendabeler zijn, maar dat is natuurlijk 0.0 dynamisch...4 textveldjes tweenen is nou ook weer niet dodelijk hoor 
Je kan evt ook een bitmap maken van je textfields en daarmee tweenen, zo heb je nog iets van dynamisch zitten.
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.174s