[GastForen Archiv Adobe Flash & ActionScript Preloader ruft externe SWF auf...geht das..???

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Archiv - Archivierte Foren
Themen
Beiträge
Moderatoren
Letzter Beitrag

Preloader ruft externe SWF auf...geht das..???

gpo
Beiträge gesamt: 5520

16. Dez 2002, 11:05
Beitrag # 1 von 6
Bewertung:
(3819 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi flasher,

nur mal so ein generelles Problem.

Kann ein Preloader eine externe SWF aufrufen(kann er) und seine Schleife weiter fortführten bis der Ladevorgang abgeschlossen ist???

(Nachzulesen im LM Forum)
Habe einen Hauptfilm(150KB SWF) in Livemotion gemacht...ging nur dort so wie ich es haben wollte!

Habe dann einen Preloader(3KB SWF) gemacht...der läuft auch...er ruft auch den Hauptfilm auf.......aber....

er läst seine Schleife "nur einmal" durchlaufen.....macht dann eine genüßliche Pause(nur Hintergrundfarbe) und erst dann lädt er den Haupfilm....im Klartext, der Preloader ist eigenlich so überflüssig!

habe Varianten in LM und in Swish2 probiert....immer der gleiche Effekt......alle Antworten bezogen sich auf "EINE" SWF Datei, also Preloder vor dem Hauptfilm innerhalb eine SWF.......nur so kann ich es in LM nicht machen!
Mfg gpo
X

Preloader ruft externe SWF auf...geht das..???

MOS
Beiträge gesamt: 262

16. Dez 2002, 16:14
Beitrag # 2 von 6
Beitrag ID: #19495
Bewertung:
(3819 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
>>>Kann ein Preloader eine externe SWF aufrufen(kann er) und seine Schleife weiter fortführten bis der Ladevorgang abgeschlossen ist???

Hi gpo,

bin nicht ganz sicher ob ich Dein Problem richtig verstanden habe...

Wenn Du einen Preloader baust, dann musst Du die "Schleifen" des Preloaders ja von irgendwas abhängig machen...also "lade bis n bytes geladen sind...", "lade bis bild x geladen worden ist..."

Wenn Du jetzt externe Filme reinlädst, von denen der Preloader ja nicht weiss wie gross sie sind, dann hast Du natürlich ein Problem, denn Du sagst ja "Lade bis 100k (des Hauptfilmes) geladen sind", lädst aber einen externen Film der vielleicht 200kb gross ist "mal eben nebenbei" rein. Das kann natürlich nicht funktionieren, denn woher sollte der Preloader wissen wie gross die externen Filme vielleicht sind?

Mit diesem Problem müssen sich Flasher schon ewig herumplagen...

Wenn ich Anwendungen zu bauen habe in denen externe Filme vorkommen, dann gehe ich stets den Weg, den externen Filmen ebenfalls kleine Preloader zu spendieren.

Der "Hauptfilm" oder auch "Steuerfilm" hat einen Preloader, in diesen Film ist die "Homepage" oder das "Hauptmenu" integriert...erst bei klicken auf die Menupunkte werden dann die externen Filme geladen, und jeder hat seinen eigenen kleinen Preloader.

Auf unserer eigenen Seite ist das genau so gelöst:
http://www.fuenfwerken.com

Hier ist _alles_ in kleine externe Filme aufgesplittet...es werden insgesamt 92 einzelne swf's verarbeitet (mit der englischen version sogar 184) :-/ )...so ist das Preloading für jeden einzelnen sehr kurz und daher erträglich :)

Es gibt noch einige andere Stolpersteine zu beachten....z.B. werden eingebettete Schriften _immer_ vor allem anderen geladen (auch vor einem Preloader!!) - daher hat man bei langsamen Verbindungen auf Flash-Seiten manchmal kurz den Eindruck es passiere "gar nichts".

Sag Bescheid wenn Du noch Infos brauchst...

mfg
MOS


als Antwort auf: [#19472]

Preloader ruft externe SWF auf...geht das..???

gpo
Beiträge gesamt: 5520

16. Dez 2002, 22:09
Beitrag # 3 von 6
Beitrag ID: #19518
Bewertung:
(3819 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi MOS,
ja ich habe das schon verstanden....nur,

in Livemotion ist das Scripten noch besch....ner gemacht wie in Flash!
teilweise funzen einige Sachen nicht wie "Verhalten...auf Download warten..." Habe es probiert...er macht es nicht! Noch schlimmer ist eigentlich, daß es im LM Buch v.DataBecker auch so beschrieben wurde, im Klartext ...der Autor warf das Handtuch:)))

Das wiederum bedeutet für mich, ich muste einen "neuen" Preloader machen...in Swish! Der geht auch, aber er lädt nicht sofort den Hauptfilm, sondern spielt "einmal" seine Textani ab, fährt also keine Dauerschleife bis der Film da ist........obwohl ich es im Preloader so einstellen kann....(ratlos)

Leider kann man auch dort(Swish) diverse Verschachtelungen machen...nur die führen alle ins Nirwana...ob wohl die "vorgefertigten Actions" eigentlich mir klar genaug sind:

1) spiele Preloader ab
2) spiele Dauerschleife
3) lade Hauptfilm
4) ersetze Preloader durch Hauptfilm
(alles sinngemäß:))

Das ganze in Flash nachzubauen scheint mir unmöglich, da es sehr "pixellastig" ist hier zu sehen:
http://www.photocenter.de/gpo/mini.html

Mfg gpo


als Antwort auf: [#19472]

Preloader ruft externe SWF auf...geht das..???

MOS
Beiträge gesamt: 262

17. Dez 2002, 13:43
Beitrag # 4 von 6
Beitrag ID: #19576
Bewertung:
(3819 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hmmmmm, also diese ganzen zthird Party_tols benutze ich nicht...
Gecodet wird in Flash, seit MX ist da auch der Codeeditor recht komfortabel geworden...und überhaupt, wer es noch bequemer will, der kann ja auch einen externen Texteditor verwenden und die as-Dateien per include-Befehl einbinden...
LiveMotion habe ich überhaupt noch nie benutzt :)

Ich habe mir Deinen Link mal angeschaut...was Du jetzt mit "pixellastig" meinst, weiss ich nicht so genau. Also ich sehe da den Preloader der hoch und runter fährt und sagt "loading 140KB" er fährt allerdings nur einmal runter und einmal wieder hoch...das richtig zum loopen zu bringen sollten in Flash ungefähr 5 Minuten Arbeit sein...

Dann kommt irgendwann auf der rechten Seite dieses "Fernbedienungselement" auf dem verschiedene Buttons bedient werden können...OK, da wirds durch den "3D" Look schon ein wenig komplexer, aber trotzdem nicht unmöglich.

Leider kann ich Dir jetzt nicht so ohne weiteres ne Anleitung geben, da Du anscheinend noch nicht richtig viel mit Flash gemacht hast...

Vor allem jener Satz erscheint mir ein wenig seltsam:
...obwohl ich es im Preloader so einstellen kann...
Eigentlich solltest Du nicht im Preloader einstellen dass geloopt wird, sondern im Hauptfilm...

Ganz kurz das Konzept:
Der "Preloader" ist ein ganz normaler MC aus der Library, es wird einfach kein "Stop();" gesetzt und schon loopt dieser MC für immer wenn man möchte...wie man per tweening die Schrift hoch un runter fahren lässt brauch ich Dir hoffentlich nicht erklären :)
Im Hauptfilm hälst Du Dir am Anfang mind. 2 Frames frei, in diese legst Du den "Preloader-MC"
Da wo Du Deinen Code schreibst sagst Du im ersten Bild:

if (getBytesLoaded()/getBytesTotal() == 1) {
gotoAndPlay("start");
}

ins 2. Bild schreibst Du

gotoAndPlay("load")


Dieses Skripting geht davon aus, dass du 2 Labels gesetzt hast: "load" für den Beginn der Preloaderschleife und "start" für den Beginn Deines richtigen Filmes...jetzt werden diese beiden Frames so lange abgespielt bis die if-Bedingung erfüllt ist...

Das ist die allersimpelste Form des Preloaders, sie funktioniert, sagt aber dem User nicht wieviele seiner 140Kb tatsächlich geladen sind und wann es denn nun weitergeht...

So, ich denke da hast Du erst mal wieder was zu knabbern... :)

mfg
MOS


als Antwort auf: [#19472]

Preloader ruft externe SWF auf...geht das..???

gpo
Beiträge gesamt: 5520

17. Dez 2002, 23:47
Beitrag # 5 von 6
Beitrag ID: #19628
Bewertung:
(3819 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi MOS,
danke erstmal,
in der Tat habe zwar auch schon ein Flash5 Buch durch........brauchte allerdings bisher nur kleinere Sachen.....die dann in LM oder Swish auch bestens gingen.

Du hast es auch richtig analysiert.....der Text im Preloder ist so eingstellt, dass er ständigt......loopt, ebenso kann ich im Preloader(Swish) einstellen, dass er den Hauptfilm laden soll(macht er ja auch)
Nur er hört dann auf zu loopen.....und dann kommt irgenwann der Hauptfilm.......wohlbemerkt beides sind zwei Dateien!

Hab da so ein Gefühl, dass den beiden Proggies da noch was von Flash fehlt!:)) Aber vieleicht krieg ich ja noch die Kurve.....nach Flash
Mfg gpo


als Antwort auf: [#19472]

Preloader ruft externe SWF auf...geht das..???

exquisitus
Beiträge gesamt: 247

14. Feb 2003, 00:31
Beitrag # 6 von 6
Beitrag ID: #24620
Bewertung:
(3819 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hallo zusammen

hab neulich mit dem gleichen "problem" zu kämpfen gehabt, und hab mir dann eine lösung gebastelt die ich recht gelungen finde (flashmx sei dank):


so funktionierts:

im haupt-flash-film (_level0) gibts dafür zwei ebenen.
eine für externe .swf's (nachstehend contentLayer genannt) und einen für den loading-clip (nachstehend loadingLayer genannt).

in den loadingLayer kommt ein beliebiger loading-movie-clip.
der hat dann eine eigene timeline, wobei die ersten 2 sekunden (+-25frames) noch nichts kommt. danach hab ich dann meine loading animation, die von frame 25 bis frame ??? einen loop macht.
zusätzlich hats noch eine funktion welche das ganze konstrukt resetet (gotoAndStop(1)) sowie eine die das ganze ding ankickt (play()).

im contentLayer ist anfangs ein leerer dummy-movie-clip. dessen instanz verpass ich eine id, sowie folgende onClipEvent handler:
- onClipEvent(unload) >> blende contentLayer aus, reset loadingLayer, blende loadingLayer ein, starte loading-animation
- onClipEvent(load) >> blende loadingLayer aus, reset loadingLayer, blende contentLayer ein.

als resultat hat man ein wiederverwertbares konstrukt, dass die loading-geschichte +-automatisch für einen macht. und man hat keine dupplikate des loading-movie-clips. das ding gibts dann für das ganze projekt nur einmal.

sobald ein film mittels loadMovie() in den contentLayer geladen wird, wird (wenns länger als 2 sekunden dauert) automatisch der loading-movie-clip gezeigt. sobald der film fertig geladen ist wird der loader automatisch ausgeblendet und der film angezeigt.

was dabei zu beachten ist:
der contentLayer wie auch der loadingLayer sollten über die gesamte timeline des haupt-filmes gehen damit sie immer verfügbar sind.


wer will schickt ein email für ein beispiel.

hth
liebe grüsse aus Zürich
Steven


als Antwort auf: [#19472]
(Dieser Beitrag wurde von exquisitus am 14. Feb 2003, 00:33 geändert)
X