Preloader-Problem alles schwarz bis 97% .. wie kommts?

MontyBurns

Mitglied
Hallo allerseits,

ich hoffe, mir kann mal wieder jemand unter die Arme greifen ..

Ich habe ein Monster (Intro) geschaffen, und wollte es mit einem Preloader versehen,
weil die .swf-file über 400kb hat. (Dementsprechend ist die .fla sehr gross, weshalb ich sie auch nicht online stellen kann - sorry - aber ich geb mir Mühe, das Ganze ausführlich genug zu schildern).

Folgendes Problem:

Die html-Seite lädt (hintergrundfarbe schwarz) und sonst passiert NICHTS, bis
zu genau 97% .. dann ist kurz für die verbleibenden 2.9% der Preloader zu sehen.

Script in Frame 1:

Code:
if (this._framesloaded>=1 && this._framesloaded<this._totalframes) {
	this.gotoAndPlay(1);
}
this.bytesT = this.getBytesTotal();
this.bytesL = this.getBytesLoaded();
this.bytesR = this.bytesT-this.bytesL;
this.percDone = int((this.bytesL/this.bytesT)*100);
this.prebar.gotoAndStop(this.percDone);
if (this.bytesR <= 0) {
	this.snd1 = new Sound(this);
	this.snd1.attachSound("pageloaded");
	this.snd1.stop();
	this.snd1.start(0, 1);
	this.gotoAndPlay(3);
}


Script in Frame 2:

Code:
this.gotoAndPlay(1);


Im Frame 3 fängt bereits das eigentliche Filmchen an ... die Sounds sind alle in der .swf
(also nichts extern geladenes).


Das ist das erste (und seither letzte mal), dass ich mit nem Preloader Probleme hatte, und ich bin wirklich ratlos, zumal ich scriptmässig nichts grundlegend anderes als sonst gemacht habe.

Danke schon mal im Voraus ;)
*greetz*
MontyBurns
 
Hi,

das Problem tritt auf, wenn ein Großteil der Daten dem ersten Frame zugeordnet ist (z.B. bei Exportfreigaben von MCs und Sounds mit der Option "in erstes Bild exportieren"). Schau Dir mal die Datenverteilung im Bandbreiten-Profiler der Vorschau an.

Lösungen:

- Auf Exportfreigaben verzichten, und alles was mit attachMovie oder attachSound eingebunden werdden muss, in einen späteren Frame setzen, der übersprungen wird.

- Einen "externen" Preloader verwenden, also eine Flashdatei, die nur den Preloader und einen Container enhält, in den die Hauptdatei eingeladen wird.

Gruß
.
 
Hi Datic,

vielen Dank für die rasche Antwort ..

Das mit den Exportfreigaben wirft wiederum das Problem auf, dass ich noch nie einen "Bandbreiten-Profiler" benutzt habe/verstehe .. (geschweige denn den debugger .. scheine da einfach zu dumm dafür zu sein, oder mich zuallermindest anzustellen, wie der erste mensch - will aber nicht heissen, dass ich es ohne meine Lieblingstaste "F1" versucht hätte). Irgendwo bei den grundlegenden Sachen "Debugger mit der .swf aufrufen, so dass dann auch etwas passiert" scheine ich die Hilfetexte komplett miszuverstehen. :confused:

Ich werd aber gleich mal den Preloader vom Intro trennen den Hauptfilm von der
preloader.swf aus zu laden. ;)

Ausserdem werd ich vorher mal die Sounds mal unter die Lupe nehmen, zumal die den Hauptteil der Dateigrösse des Intros ausmachen.

Greetz & Thanx
MontyB
 
Hallo!

Wenn Du ganz normal auf der Bühne bist, drücke STRG + Enter, damit öffnet sich in Flash Dein Film zum testen. Dort sind im oberen Teil so seltsame Balken. Das ist Dein Bandbreitenprofiler! Dieser zeigt Dir Bild für Bild die Menge der Daten an (je höher der Balken, umso mehr Daten).

Gruss
 
Hi nochmal,

hab festgestellt, dass ich bei "Linkage" die Sounds tatsächlich im 1. Frame exportiert habe.

Das nächste Problem ist wiederum:
Wenn ich die Haken bei "Export In First Frame" wegmache, ist die daraus resultierende intro.swf 400kb kleiner und kein Sound. Scheinbar wird dann also gar nix mehr exportiert.

Was mach' ich denn jetzt noch falsch?

greetz
 
Hi,
Wie werden die Sounds bei Dir denn abgespielt - über AS und dem Sound-Objekt, oder als Ereignis-Sounds in Zeitleisten?

Im ersteren Fall kann es sein, dass der Sound nicht mitexportiert wird - Workaround:

Lege einen leeren MovieClip mit einigen Frames an, in denen die nötigen Sounds abgespielt werden und packe den Clip in einen Frame auf der Hauptzeitleiste, der übersprungen wird (z.B. auf Frame 4, wobei Dein Hauptfilm in Frame 5 beginnt. Im Preloader sagst Du dann gotoAndPlay(5)). Es kann sein, dass Flash die Sounds manchmal trotzdem abspielt - Du musst es ausprobieren. Die berrere Lösung wäre in der Tat ein externer Preloader, der die gesamte Datei einlädt.

Gruß
.
 
Hi Datic,

Super .. vielen Dank

Das mit dem externen Preloader klappte grad auch nicht so auf Anhieb (hab das in der Zwischenzeit versucht), aber das mit dem MC in dem übersprungenen Frame ist perfekt.
Die Sounds werden nämlich tatsächlich per attachSound und Actionscript angesteuert.

greetz und Danke nochmal
MontyBurns
 
Zurück