Mit dem folgenden Quellcode erzeuge ich in einer After-Effects-Textebene 5 Zeilen à 8 Zeichen, die entweder 0 oder 1 sind:
|
Javascript-Quelltext
|
1
2
3
4
5
6
7
|
line = "";
for (i=0; i<9*5; i++) {
rand = Math.round(random());
if (i % 9 == 0) line = line + "\r";
line = line + rand;
}
line;
|
Das Problem hierbei ist, dass die Zufallszahlen sich in jedem Frame ändern, bei mir 25 Mal pro Sekunde. Das ist zu viel. Mir würde 3 Mal pro Sekunde reichen. Nur wie mache ich das? Es geht mit dem Effekt "Zeitlich abstufen", aber der verbrät CPU-Leistung ohne Ende (warum auch immer).
Eine mögliche Lösung via Expression wäre sowas wie:
|
Javascript-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
|
if (timeToFrames(time) % 2 == 0) {
line = "";
for (i=0; i<9*5; i++) {
rand = Math.round(random());
if (i % 9 == 0) line = line + "\r";
line = line + rand;
}
line;
}
else {
...
}
|
Nur was muss bei "..." hin? Irgendeinen Wert muss ich setzen, sonst steht da einfach "Object Layer". Ich benötige quasi den Wert, der im zuletzt berechneten Frame stand. Wie komme ich da dran? "valueAtTime" klappt nicht.