Preloader geht irgendwie nicht? Export?

  • Hallo,

    hätte mal 2 Fragen zu Flash.
    1. Exportfrage:
    Welche Einstellung muss ich im Flash Programm tätigen, damit ich den Film richtig exportiere, also ohne das Kontextmenü, wo man vergrößeren usw kann. Irgendwie finde ich diese Option nicht :(.

    2. Frage:
    Habe nun eine komplette Flash Page gebaut, die ist auch recht groß geworden, leider will der Preloader nicht so richtig funktionieren.

    Also ich hab das bislang so gemacht:
    - eine Szene vor dem Hauptfilme gesetzt für den Preloader
    - 3 bilder in die 1. Szene
    - in der Szene auf die Bühne 3 Felder, ein Textfelder das die geladnene Prozent ausgibt, eins dass die gesamte größer Anzeigt, und einen Balken, der sich beim laden halt von links nach rechts vergrößert.

    Eigentlich nicht schwer zu machen, hier mein Code im 1. Sb:

    Code
    var total = _root.getBytesTotal();
    var geladen = _root.getBytesLoaded();
    var prozent = Math.round((geladen*100)/total);
    //trace(prozent);
    _root.prozent_txt.text = Math.round(prozent)+"% bereits geladen.";
    _root.total_txt.text = "Gesamt: "+Math.round(total)/1000+"Kb";
    _root.loadbalken_mc._width = prozent*2;
    if (geladen>=total) {
    	gotoAndPlay(3);
    }

    im zweiten steht lediglich:

    Code
    gotoAndPlay(1);

    nachdem geladen ist soll der halt in bild 3 gehen und dann fortlaufen auf den Hauptfilm.

    Nun in Windows sieht man den Loader ja nicht, da der zu schnell läd. Jetzt liegt der Film online und wenn ich die HTML Seite wo die SWF drin liegt passiert erst nichts, aber dann bei ca. 75% erscheint der preloader und er zeigt dann an wie die Prozente hochzählen bis 100 und dann wie gewünscht in Bild 3 springt und der Film anfängt abzulaufen. Hab meine DSL geschwindigkeit arg gedrosselt um zu sehen wie der läd.

    Weiß jemand rat was ich da falsch gemacht haben könnte??

    Über antworten auf beide Fragen würde ichmich sehr freuen :).

    MfG
    Daniel

  • versuch nur mal so zum testen die anzeige abzuspecken.

    also mach mal die anzeige der gesamten und geladenen bytes
    raus und überprüf nur wenn die 100% erreicht sind...

  • Also, hab jetzt mal alles rausgenommen bis auf die % anzeige, will ja wissen wann 100% erreicht sind, nun beginnt der bei 74%, also zeigt erst garnichts an, läd quasi, zeigt dann die 74% zählt hoch bis 100% und springt dann auf bild 3 und der restliche film fängt an zu laufen... aber warum nur zeigt der nix an vor den 74%, der müsste doch eigentlich direkt bei 1 beginnen...

  • Hm, bin mit meinem Problem leider nicht weitergekommen, hab es so hingenommen, nun wieder das gleiche Problem.

    Meine erste SWF war bloß 700KB, da ging das mit dem laden noch ohne Preloader, jetzt hab ich ne SWF erstellt die hat 2,1MB, und mein preloader code habe ich nun etwas verändert.
    Im ersten Bild liegt:

    Code
    geladen    =    this.getBytesLoaded();
    gesamt     =    this.getBytesTotal();
    prozent    =    geladen * 100 / gesamt;
    loader_txt.text = Math.round(prozent)+" % geladen ... Bitte warten";
    if(geladen >= gesamt) {
       gotoAndStop("start");
    }


    Und im 2. Bild steht:

    Code
    gotoAndPlay(1);


    und start ist die Bezeichnung für Bild 3, also müsste wenn geladen ist der Bild 2 übersprüngen und zu Bild 3 gehen.

    Nun der Effekt wie vorher auch, der Preloader beginnt diesmal erst bei 90%, läd also bis 89% und erst dann zeigt er den Preloader.

    Hier zu sehen (unter game).

    Habs bereits auf 2 anderen PCs, sowie auf einem PC außerhalb meines Heimnetzwerks getestet, überall das gleiche, ich weiß auch nicht :(...

    weiß jemand rat???

    Wäre super!

    MfG

  • Hallo!

    Ich les das jetzt hier ziemlich spät, aber vielleicht hilfts ja noch jmd, weil ich selbst seeehr lange an dem Problem hing.

    Alles vorrausgesetzt in der Flash Seite werden ziemlich viele MovieClips mit .attachMovie reingeladen:

    Um den Film reinladen zu können muss man in den Eigenschaften vom MovieClip (kann man in der Bibliothek mit rechtem Mausklick aufrufen) die Option Verknüpfung aktiv sein.
    Da ist dann an erster Stelle ein Häkchen (ich glaub da steht sowas wie Export für ActionScript oder so) und an letzter Stelle erscheint automatisch auch ein Häkchen (da steht sowas wie "in ersten Frame laden".)
    UND DAS IST DAS PROBLEM!

    So, deine Aufgabe ist jetzt diese ganzen Häkchen wo steht "in ersten Frame laden" zu beseitigen. (die Verknüpfung selbst - also das erste Häkchen aber lassen!)
    Das verhindert, dass der Film schon alle MCs läd bevor der Preloader erscheinen darf.

    Jetzt müssen die MCs aber an anderer Stelle geladen werden, weil sie sonst ja gar nicht geladen werden.

    Dazu machst du noch ein Frame in der Leiste wo dein Preloader und die Prozentzahl etc. liegen. Und zwar da, wo die Zeitleiste eigentlich gar nicht hinkommt:
    NACH dem Preloader (der Grafik und der Prozentanzeige) und nach den beiden frames zwischen denen hin und her gesprungen wird, wenn noch nicht alles geladen ist, aber VOR dem letzten Frame, wo der Apspielkopf der Zeitleiste hinspringt, wenn alles geladen ist.

    Auf diesen Frame ziehst du nun alle MCs auf die Bühne. Dadurch werden Sie natürlich geladen, aber werden nie als Chaos (was auf dem frame ja nun herrscht) sichtbar, weil der frame übersprungen wird.

    Hoffe das war selbst für Anfänger verständlich genug....

    Viel Glück!

  • Hi,

    die eigenschaften der MovieClips zum exportieren für ActionScript kenne ich, den Haken hab ich bereits schon entfernt, außer den für export für AS.

    deshalb hilft mir der Tipp leider nicht weiter :(.

    MfG

  • So, Problem gelöst :D ...

    jetzt klappts, hab die SWF über export erstellt und nicht über Veröffentlichen, und schon gehts.
    Kann sein, dass es daran lag dass ich die trace Funktion überspringe (hab unendliche viele Kommentare im Code AS), was ich mir eigentlich weniger vorstellen kann :D

    danke für eure hilfe!