Matrixeffekt (nochmal)

Kalma

Erfahrenes Mitglied
Hallo,
ich habe vor, mir eine Matrix-effekt-datei zu basteln, wie sie im Anhang ist...

Nur wollte ich diese Verändern...
Und zwar so, das dort immer nach nicht bestimmter zeit, ein wort zusammengesetzt wird, das aus einer Datei gelesen wird... (oder so ähnlich ;) :) )
Wie ist das möglich

Wenn ich wüsste, wie die Datei funktioniert, und wie man zufallsgeneratoren in flash erstellt, würde ich das Projekt selber erstellen...

Über ein kleines Beispiel würde ich mich seeeeeeeeehr freuen :offtopic:



Thx
david
 

Anhänge

  • matrix.zip
    33,7 KB · Aufrufe: 68
Hi,

die angehängte Datei wirst Du kaum als Grundlage verwenden können, um dynamisch Wörter anzuzeigen, da sie auf einem statischen Tweening (siehe MC "Symbol 12") basiert.

Du müsstest die "Zeichenlinien" mit AS erstellen (attachMovie wäre dabei Dein Freund) und die angezeigten Zeichen aus einer externen Datei einlesen. Zufällige Werte kannst Du mit der Funktion Math.random() berechnen.

Vielleicht fängst Du einfach mal an, schaust noch einmal in die Referenz und meldest Dich, wenn Du auf konkrete Probleme stößt.

Gruß
.
 
Oooooooook,

1. konkretes Problem: ehm... klingt jetz vielleicht doof, aber ich versteh jetz nich genau was du meinst... sry :offtopic: ...
2. kannst du ein mini-beispiel machen, damit ich mich daran orientieren kann?
3. Das wäre hammer nett


David
 
Hmm,

ok, ein kleines Beispiel liegt bei - ob es Dir viel bringt, sei dahingestellt.

Prinzipielle Vorgehensweise:
  • erstelle für jeden Buchstaben einen MC und gib ihn zum Export für AS frei (ich hätte natürlich den Text auch mit AS generieren lassen können, was weitaus weniger Arbeit gewesen wäre, aber ich nehme an, Du wirst später selbst gezeichnete Buchstaben verwenden wollen)

  • erstelle nun einen Clip "letter", der im Prinzip folgendes macht:

    • darauf warten, dass er den Buchstaben (l), einen Modus (m) (true oder false) sowie einen Verzögerungswert (t) übergeben bekommt

    • sobald die jeweilige Verzögerung abgelaufen ist (dazu wird ein Intervall verwendet) wird einer der Buchstaben aus der Bibliothek per attachMovie instanziert und zwar per onEnterFrame mit jedem Frame ein anderer (zufälliger).

    • Wärenddessen wird mit einem Color-Objekt ein Fading von Hell nach unsichtbar (modus = false) oder sehr Hell nach normal (modus = true) durchgeführt. Ist dieses abgeschlossen, so wird die andere onEnterFrame-Methode beendet und der "richtige" Buchstabe (der am Ende stehen bleiben soll) instanziert.

  • Auf der Hauptzeitleiste kannst Du nun einen String festlegen, von dem ein bestimmter Bereich (z.B. ein Wort) stehenbleiben soll. Dazu definierst Du einen weiteren String gleicher Länge, der durch Nullen und Einsen bestimmt, welche Buchstaben stehen bleiben.

  • Instanzierst Du nun für jedes Zeichen im String einen "letter"-MC und übergibst ihm a) den jeweiligen Buchstaben, b) den Bitwert (0=false, 1=true) fürs Stehenbleiben und einen aufsteigenden Verzögerungswert (nicht vergessen, jeden Buchstaben auf einer anderen Höhe zu instanzieren), so hast Du einen "ungefähren" Matrixeffekt. ;)

Gruß
.
 

Anhänge

  • matrix.zip
    16,5 KB · Aufrufe: 49
Hey,
ich hab eigentlich nur 3 probleme, der rest is hammer geieeeeel :)


-1- Kann ich einfach mehrere mc's erstellen, und dort einfach den anderen code draufmachen

-2- Wie kann ich den ganzen MC verschieben

-3- Kann ich einstellen, das wenn die Buchstaben unten sind, wieder von oben anfangen


David
 
Hi,

1 + 2: Du kannst alles, was auf der Hauptzeitleiste passiert, in einen weiteren MC ("word") packen, von dem Du dann mehrere auf der Bühne (Hauptzeitleiste) instanzierst. Damit hättest Du mehrere Buchstabenketten. Die Übergabe der Strings (Wort und Bitmaske) kannst Du so erledigen, wie ich es bei dem MC "letter" gemacht habe: in einer onEnterFrame-Methode darauf warten, bis beide Variablen von aussen gesetzt sind.

3: Wenn Du obiges befolgt hast, kannst Du den letter-MC so modifizieren, dass er eine Nachricht (callback) an seinen "word"-MC schickt, sobald der letzte Buchstabe stehen bleibt. Dann könnte dieser word-MC seine Aktion von vorne ausführen (einfach alle letter neu instanzieren, also im Prinzip den Codeblock wiederholen, der ausgeführt wird, wenn die "Warte"-onEnterFrame beendet wird.

Ich habe bewusst kein komplett "fertiges" Beispiel erstellt, weil ich Dir nur einen Ansatz liefern möchte (der Sinn dieses Forums ist ja Lerneffekt und Eigeninitiative ;)). Probiers also erstmal selbst nach meiner Erklärung, bei Problemen helfen wir dann gerne weiter.

Gruß
.
 
Hey,

ich habe versucht, diese schrift Arial, durch eine neue Schrift die sich "Matrix Code" nennt, zu ersetzen... jetz kommen die Buchstaben aber nicht mehr :-(

Die Schrift ist unten angehängt
 

Anhänge

  • 0630_matrixcode.zip
    28,4 KB · Aufrufe: 33
;)

Poste nicht die Schrift, auf dass wir es Dir fertigmachen, sondern auch Deine Datei, damit wir Dir Deinen Fehler benennen können - Vermutung: Hast Du den Font auch eingebettet?

Gruß
.
 

Neue Beiträge

Zurück