[TUTORIAL] Erstellung von Animationen (.ANI/.EFF/.APNG)

Modding Tutorials rund um FreeSpace SCP
Antworten
Benutzeravatar

Topic author
Novachen
Vice Admiral
Vice Admiral
Beiträge: 196
Registriert: 30. Mai 2018, 11:34
Geschlecht:
Kontaktdaten:
Status: Offline

6. Jun 2018, 23:01

Dieses Thema ist eine Übersetzung des Themas Anim Creation Tutorial von mjn.mixael auf Hard Light Productions. Die deutsche Übersetzung wurde mit freundlicher Genehmigung von diesem erstellt. Aufgrund, dass dieses ursprüngliche Thema .APNGs (noch) nicht berücksichtigt, wurde auch der Abschnitt APNG aus dem Hard Light Wiki ergänzt und ebenfalls übersetzt.


Ich bekomme oft Private Nachrichten über die Erstellung von ANI-Dateien. Ich weiß, dass es bereits ein paar Tutorials zu diesem Thema gibt, aber ich beabsichtige, dieses hier regelmäßig zu aktualisieren.
Dieses Thema versucht auch verständlich zu machen, warum bestimmte Dinge auf bestimmten Wege getan werden müssen, damit sie funktionieren. Meistens schlicht aus dem Grund, weil FSO einfach wählerisch ist.

So, wollen wir loslegen, nicht wahr? Das folgende werden wir alles behandeln:
  • Akzeptierte Dateiformate
  • Programme
  • Das Wesentliche einer Animation
  • Erstellung einer .ani
  • Sonderfälle für .ani
  • Erstellung einer .eff
  • Erstellung einer .png
  • Sonderfall für .png
Akzeptierte Dateiformate

Es gibt drei Formate, die du für die Animation verwenden kannst. Alle drei sind Dateiformate für Bildsequenzen, was bedeutet dass du kein h26x-kodiertes Kram rendern kannst, weil diese nicht funktionieren. Einfach ausgedrückt, das FSO-Interface ist immer noch ziemlich unflexibel programmiert und wegen diverser Code-Sachen, die über mein Verständnis hinausgehen, werden Filmformate nicht funktionieren.

ANI

Stattdessen kann man ANI verwenden. Der Vorteil von ANI ist, dass du am Ende nur eine einzige Datei hast, die auch leicht anschaubar ist. Jetzt ist ein guter Zeitpunkt darauf hinzuweisen, dass manche FreeSpace-Animationen in einem sehr spezifischen .ani-Format vorliegen müssen. Dazu gehören Symbole aus der Missionseinsatzbesprechung und die Kommunikationsanimationen. Diese werden im Abschnitt Sonderfälle für .ani behandelt. Das Problem an dem .ani-Format ist es, dass es in der Farbe sehr begrenzt ist. Es kann nur aus bis zu 256 Farben bestehen und dabei müssen es die gleichen 256 Farben in jedem Einzelbild der Animation sein. Dies verursacht entsprechend häufig Farbstreifen und Artefakte. Sehe dir die beiden Bilder zum Vergleich an:

ANI
Bild

ORIGINAL
Bild

Dies kann jedoch vermieden werden, indem einfach die Farbgestaltung deiner eigentlichen Animation eingeschränkt wird. Im obigen Bild würde es zum Beispiel als ANI viel schöner aussehen, wenn der Hintergrund entweder keinen oder einen rötlichen oder bläulichen Nebel hätte. Diese beiden Farben würden funktionieren, da die Triebwerke und die Waffen der Jäger diese Farben besitzen. In dieser Animation gibt es auch einen gelben Planeten, wenn man diesen entfernt oder ändert, um in ein einfacheres Farbschema zu passen, wäre es auch sehr hilfreich. Falls du dir nicht ganz sicher bist, von welcher Animation ich rede und aus welcher das obige Bild stammt: cb_shiversubkilla aus dem FreeSpace Port. Also um es zusammenzufassen, wenn du das Farbrad im Kopf in Schwarz, Weiß, Rot, Gelb, Orange, Blau, Grün, Lila usw. kategorisierst und die Animation auf bis zu vier dieser Hauptfarben beschränkst, dann kannst du deine Animation in eine .ani ohne großen sichtbaren Qualitätsverlust umwandeln.

Dies ist ein Bild der cb_flail.ani, ebenfalls aus dem FreeSpace Port:
Bild

Diese funktioniert im Wesentlichen, weil die Verwendung von weniger Hauptfarben mehr Platz in der 256-Farben-Begrenzung lässt, die für Farbtöne genutzt werden können.

EFF
Eine andere Option ist das .eff-Format. Der Hauptvorteil von .eff ist es, dass du eine unbegrenzte Farbpalette zur Verfügung hast. Der Nachteil ist, dass es nicht sehr leicht anschaubar ist und auch nicht in einem Behälter vorliegt, was bedeutet, dass dein "data/cbanims"-Ordner mit buchstäblich tausenden an Einzelbildern übersät sein könnte, selbst wenn du nur eine kleine Anzahl an unterschiedlicher Animationen hast. Die Dateigröße in diesem Format hängt davon ab, wie du sie erstellst. Wir werden später dazu kommen.

APNG
Eine verhältnismäßig neues Dateiformat für Animationen sind auch animierte PNGs, kurz APNGs. Dieses Dateiformat ist das beste beider Welten aus ANI und EFF, da es zum einen ein Behälter ist, womit eine Animation nur in einer Datei resultiert, die damit auch leicht anschaubar ist, wie auch die Tatsache, dass eine unbegrenzte Farbpalette zur Verfügung steht. Dazu funktionieren PNGs auch dort, wo EFFs nicht funktionieren, wie beispielsweise als Symbole bei der Missionseinsatzbesprechung und auch den Kommunikationsanimationen.

Die Orte bei FSO, wo APNGs am sinnvollsten sind, lauten wie folgt:
  • Kommandobesprechungen
  • Informationsanimationen im Technikraum
  • Ladebildschirmanimationen
  • HUD-Animationen (zum Beispiel Nachrichtenbilder, Aufschaltungsanzeige etc.)
  • Animationen in der Haupthalle

Du KANNST APNGs auch für jede andere gewünschte Animation verwenden, wie beispielsweise animierte Texturen, Waffeneinschlagseffekte, Schildanimationen usw., .EFF mit .DDS-Dateien wäre in solchen Fällen allerdings generell die bessere Wahl, weil sie in einem Format komprimiert sind, welches deine Grafikkarte direkt verwenden kann und daher deutlich weniger Videospeicher benötigen.
Im Allgemeinen benötigen APNGs allerdings weniger Festplattenspeicher als andere Animationsformate, welches entsprechend in kleineren Modifikationspaketen resultieren kann. Beispielsweise ist die 2_intel_earth.png-Datei 7,5 MB groß gegenüber der 15 MB großen ANI-Datei aus den MediaVPs 2014. Ebenso als Beispiel dient eine Kommunikationsanimation welche als EFF mit PNG-Einzelbildern 3,8 MB groß ist, als APNG allerdings nur noch 2,1 MB benötigt. Beachte, dass der Grad der jeweiligen Reduzierung natürlich vom Inhalt der APNG abhängig ist. Nach ein paar Tests von Axem und niffiwan scheint es aber, dass sich APNGs mit einem transparenten Hintergrund und einem Objekt, was sich durch diesen bewegt nicht wirklich auf die Größe auswirken. Ein solches Beispiel führte nur von einer Reduzierung von 11 MB auf 9,9 MB.
Dies liegt daran, weil die beste Kompressionsmethode von APNG diff/delta-Frames ist, die sich mit dem vorherigen Einzelbild zusammensetzt und diese Methode nicht in der Lage ist, einen transparenten Pixel über einen zuvor nicht-transparenten Pixel zu zeichnen. Dadurch muss das Einzebild bei einem transparenten Hintergrund komplett neu gezeichnet werden, welches die Dateigröße erhöht.

Abschließend muss noch erwähnt werden, dass FreeSpace Open die Dateiendung .PNG und nicht .APNG verwendet, welches schlicht darin begründet ist, da das Spiel ursprünglich darauf programmiert wurde allgemein nur Dateiendungen bis zu drei Zeichen zu akzeptieren und eine komplette Umprogrammierung als nicht lohnenswert erachtet wurde.

Wir kommen später dazu, wie APNGs genau erstellt werden.

Programme

Es gibt mehrere Programme die du zum Erstellen von Animationen benötigst. Dies ist eine einfache Liste:
  • Ein 3D-Programm. Du benötigst dies, wenn du irgendwas erstellen möchtest, was FreeSpace-Modelle verwendet. So ein Programm ist auch von einem grafischen Standpunkt aus praktisch, man denke auch an die Geschwaderlogos in FreeSpace 2. Ich würde Blender empfehlen, da es sowohl zur Modellierung, wie auch Animation geeignet ist.
  • Ein Programm zur Nachbearbeitung. Ich empfehle Adobe After Effects, was allerdings ziemlich teuer ist. Dieser Schritt ist nicht nötig, aber unglaublich nützlich. Versuche es einfach mal mit Jahshaka.
  • Ein Bildbearbeitungsprogramm. Eine bekannte und beliebte Freeware ist GIMP. Ich verwende Adobe Photoshop. Spielt aber nicht wirklich eine Rolle.
  • ANI Builder V.10 Beta 2. Das "Beta 2" ist SEHR wichtig. Es ist im Download, der unten verlinkt ist, dabei.
  • ANI Viewer. Selbsterklärend. Dies ist ebenfalls im unten verlinkten Download dabei.
  • IrfanView. Ein Verarbeiter von Bildstapeln. Es ist einfach großartig. Eine alte Version ist auch im unten verlinkten Download dabei, die für unsere Zwecke auch ausreichen würde.
  • Bright. Ein geskripteter Bildstapelverarbeiter. Ebenfalls großartig und damit auch im unten verlinkten Download dabei.
DOWNLOAD: MixaelANITools

Wenn du diese Programme installierst, empfehle ich einen Ordner, der sich in der Nähe deiner FreeSpace2-Installation befindet, der alle Programme beinhaltet, welche mit FreeSpace in Verbindung stehen. Ich habe meine in E:\DMTOOLS gelassen, welches der Ordner ist, der durch die Descent Manager Tools standardmäßig erzeugt wird. Die Einrichtung dieser Programme ist ziemlich einfach. LESE DIE README. Ich werde keine Unterstützung für jemanden anbieten, der die Einrichtungsanweisungen der ReadMe nicht befolgt hat!

Das Wesentliche einer Animation

Ich werde hier nicht soviel schreiben, weil du buchstäblich alles machen kannst, was du möchtest. Von diesem Punkt an, ist es eigentlich die Produktion eines Videos. Animiere ein paar Schiffe, die herumfliegen, erstelle eine technisch aussehende Bewegungsschnittstelle, was auch immer. Hier wird der Großteil deiner Arbeit im 3D- und/oder Nachbearbeitungsprogramm liegen. Was du allerdings beachten solltest: Die Auflösung. FSO kann keine Animationen skalieren. Für Kommandobesprechungsanimationen empfehle ich 660x300 Pixel. Das ist zumindest die Größe, die ich benutze, da sie recht gut in das Besprechungsfenster passt. Die Bilder-pro-Sekunde (FPS) sind das andere, was du berücksichtigen solltest. Ich bleibe bei 15 FPS, weil es ein guter Kompromiss zwischen Qualität und Dateigröße ist. Für andere Animationen würde ich empfehlen, einfach passende aus dem ursprünglichen Spiel zu öffnen und, entsprechend der Umstände, deren Auflösung einfach zu verdoppeln.

Erstellung einer .ani

So, jetzt sind wir hier. Du hast deine Animation fertig, sie muss nur noch in ihr endgültiges Format gebracht werden. Erst einmal. Render es aus deinem Programm, welches du benutzt hast, als Bildsequenz. Dein Ziel ist es, eine Sequenz aus .bmp-Bildern zu haben. Falls dein Programm keine .BMP-Ausgabe unterstützt, verwende .JPG oder .PNG und konvertiere sie entsprechend anschließend per Stapelverarbeitung zurück in .BMP.

Bevor du renderst, solltest du deine Dateien entsprechend benennen, so dass du nicht mit Hunderten an Bildern zu tun bekommst, die noch umbenannt werden müssen! Ich verwende folgendes Format für Kommandobesprechungsanimationen, weil es einfach gut ist:

CB_DESCRIPTION####.EXT

Lass mich das erklären. Der CB_DESCRIPTION-Teil kann beliebig sein, wie es dir passend erscheint, damit du weißt, um welche Animation es sich handelt. Es spielt überhaupt keine Rolle. Die #### sind offensichtlich die Nummern der Einzelbilder der Animation. Die Verwendung von vier Ziffern, die mit 0000 beginnen, ist hier absolut erforderlich, weil es das ist, was ANI Builder verlangt. EXT ist die Dateiendung. Erinnere dich daran, dass dein Ziel .bmp ist.

Sobald du deine Animation als eine .bmp-Bildsequenz gerendert hast, bringe sie alle in ein eigenes Verzeichnis. Dies wird für die nächsten Schritte hilfreich sein. Wir werden Bright für diesen Teil verwenden, welches du als Teil der oben verlinkten MixaelANITools downloaden kannst. Kopiere das Skript namens bright.cmd aus der Bright-Installation und füge es in den gleichen Ordner ein, wo sich die .bmp-Dateien befinden. Starte das Skript mit einem Doppelklick. Es sollte eine DOS-Eingabeaufforderung erscheinen, die durch alle Einzelbilder läuft. Wenn es fertig ist, wirst du sehen, dass es für dich eine .pcx-Bildsequenz im gleichen Ordner wie die .bmp-Bildsequenz erzeugt hat.

Lass uns darüber reden, was genau passiert ist. Wie bereits erwähnt, benötigt .ani eine begrenzte 256-Farben-Palette bei allen Einzelbildern. Bright durchsucht jedes Bild im Ordner und indiziert die Farben. Wenn genügend Daten vorhanden sind, werden alle Farbdaten in einer einheitlichen 256-Farben-Palette zusammengefasst. Es macht dabei auch eine gute Arbeit. Dann gibt es die neue Bildsequenz als .pcx aus, was genau das ist, was wir für den nächsten Schritt brauchen. An diesem Punkt verschiebe ich die .pcx-Sequenz in einen neuen Ordner, dies ist allerdings nicht unbedingt notwendig.

Öffne ANI Builder. Es hat ein paar Optionen, der Großteil von denen werden wir für die allgemeine Animation aber nicht benötigen. Ich werde später bei Sonderfälle für .ani auf diese Optionen zurückkommen. Rechts oben hast du den "Select"-Knopf. Drücke diesen und wähle das Verzeichnis aus, wo sich die .pcx-Bildsequenz befindet. ANI Builder wird nur das Bild mit der Bezeichnung "NAME0000.pcx" anzeigen. Wähle diese aus und es werden ein paar Informationen angezeigt, wie Anzahl der Einzelbilder und ähnliches. Wenn du bis hierhin alles richtig gemacht hast, sollten auch keine Fehlermeldungen erscheinen. Wenn du eine Animation für die Haupthalle, für die Schiffs- und Waffenauswahl oder ähnliches spezifisches erstellst, benötigst du möglicherweise so genannte Schlüsselbilder. Auch auf diese wird bei Sonderfälle für .ani eingegangen. Wenn du die FPS auf was anderes als 15 gestellt hast, drücke auf "Advanced ANI Settings" und ändere den Wert, damit er wieder passt. Du kannst auch einstellen, wo die .ani gespeichert wird, aber bei der Standardeinstellung wird diese dort gespeichert, wo sich die .pcx-Bildsequenz befindet. Wenn du bereit bist, drücke auf "Start" und du solltest deine fertige .ani haben!

Gute Arbeit.

Sonderfälle für .ani

Es gibt einige Animationen, die spezielle Farbpaletten oder Schlüsselbilder benötigen. Diese werde ich an dieser Stelle besprechen.

Spezielle Farbpaletten

Kommunikations- oder Einsatzbesprechungsanimationen etc. benötigen eine sehr spezielle Farbpalette, um zu funktionieren. Du wirst das wissen, wenn du deine Animation testest und dann überall zufällige Pixel entstehen. Aber das ist kein Grund zur Panik, denn wenn du MixaelANITools runtergeladen hast, bist du vorbereitet!

Aber erst einmal, was geht hier eigentlich vor sich? Ich verstehe die Programmierung dafür nicht, aber in diesen Fällen wird FSO nur Pixel anzeigen, die einer speziellen Farbpalette entsprechen, die mir persönlich total willkürlich erscheint. Deshalb sieht es aus, wie verdrehte Pixel, wenn du es falsch machst. Weißt du noch, wie Bright funktioniert? Es durchsucht alle Einzelbilder einer Animation und erstellt eine einheitliche Farbpalette, um mit dieser zu arbeiten und schreibt dann alle Einzelbilder neu. Nun, in diesem Fall möchten wir Bright dazu auffordern eine vordefinierte Farbpalette zu verwenden, die den Anforderungen von FSO entspricht. Du kannst Bright anweisen eine vordefinierte Farbpalette aus einem Bild zu verwenden, welches du in der Befehlszeile angibst. Ich habe diesen Prozess vereinfacht und ein Bild in die Bright-Installation namens "Sourcecolor.bmp" mit der richtigen Farbpalette eingefügt. BrightIndexedColor.cmd verweist auf diese Datei und verwendet seine Farbpalette um deine Animation neu zu zeichnen.

Es ist sehr leicht! Du wirst die .ani genauso erstellen wie vorher, nur mit der Ausnahme, dass du ein anderes Bright-Skript als zuvor verwendest. Erinnerst du dich an die Installationsanweisung, wo ich dich angewiesen habe, die Pfade in Bright.cmd & BrightIndexedColor.cmd zu ändern? Beide machen mehr oder weniger genau das gleiche. Aber für den Fall, dass du die spezielle Farbpalette benötigst, verwende einfach stattdessen BrightIndexedColor.cmd und es wird die ganze Arbeit für dich erledigen!

Schlüsselbilder

Schlüsselbilder sind ziemlich einfach und ich werde diesen Abschnitt unter der Voraussetzung schreiben, dass du ein grundlegendes Verständnis davon hast, was Schlüsselbilder in der Welt der Animation sind. FSO verwendet Schlüsselbilder in speziellen Fällen, wenn die Animation mehr tun muss als abgespielt und dann wiederholt zu werden. Beispiele sind die Türen der Haupthalle, wo die Animation vorwärts und rückwärts abgespielt wird oder die Schiffsauswahlanimationen, die von Anfang an abgespielt wird, dann allerdings nur einen Teil der Animation wiederholt.

Wenn du .ani-Dateien erstellst, dann ist das sehr einfach. Wenn du dabei bist, die .ani mit ANI Builder zu erstellen, gehe auf "Advanced Settings". Dort ist eine Auswahl namens "Type of Animation", wo du den Typ der Animation einstellen kannst, die du erstellst. Für Türen der Haupthalle wähle "mainhall" und es wird den Rest für dich erledigen. Für die Waffen- oder Schiffsauswahl wähle die Option "ship/weapon animation". Wenn du anschließend "Start" drückst, um die .ani zu erstellen, wirst du nach einer Einzelbildnummer gefragt. Dieses Einzelbild ist der Punkt der Wiederholung oder besser gesagt, der Punkt an dem FSO zurück springt anstatt zu Einzelbild 0, um die Animation erneut abzuspielen. Du solltest deinen Wiederholungspunkt kennen, wenn du diesen Typ der Animation erstellst.

Erstellung einer .eff

Es ist sehr, sehr einfach eine .eff-Animationen zu machen. Lass es mich mal so ausdrücken, eine .eff ist nichts mehr als eine einfache Textdatei, aber diese Textdatei sagt FSO, welche Einzelbilder Teil der Animation sind, wie auch weitere wichtige Informationen. Was du am Ende in deinem data/cbanims-Ordner finden wirst, ist eine .eff-Datei die genauso benannt ist, wie deine Animation.... beispielsweise CB_SHIVAN.eff. Zusätzlich wirst du da auch alle Einzelbilder, die mit der .eff-Datei verbunden sind als Bilddateien haben. Hier gibt es etwas, was die Leute gerne vergessen. Die jeweiligen Einzelbilder müssen als NAME_####.EXT, beginnend mit 0000, bezeichnet werden. In dem gegebenen Beispiel wären das also CB_SHIVAN_0000.PNG, CB_SHIVAN_0001.PNG usw. Du wirst festgestellt haben, dass zwischen dem Namen und der Nummer ein Unterstrich vorhanden ist, dies ist der Unterschied zum .ani-Format und ist absolut erforderlich.

Da du jetzt ein grundlegendes Verständnis davon hast, wie .eff-Dateien funktionieren, wirst du auch verstehen, warum die Erstellung dieser so einfach ist. Wir beginnen mit der Bildsequenz. Wenn du deine Animation von deinem 3D- oder Nachbearbeitungsprogramm renderst, gebe sie als Bildsequenz in einem der folgenden Dateitypen aus: .png, .jpg*, .bmp, .pcx, .tga oder .dds.

Erinnerst du dich, wie ich vorher geschrieben habe, dass die Dateigröße bei .eff vollkommen dir überlassen ist? Das ist der Grund. Du kannst einfach das Format auswählen, was dir das beste Größe-zu-Qualität-Verhältnis gibt. Ich habe .jpg mit einem Sternchen versehen, weil es in der Vergangenheit Berichte darüber gab, dass FSO bei der Verwendung von .jpg falsche Farben anzeigt. Stelle beim Rendern allerdings sicher, dass du das Benennungsschema verwendest, welches ich gerade erwähnt habe oder du wirst am Ende alle Einzelbilder umbenennen müssen.

Nimm jetzt diese Einzelbilder und packe sie in ein eigenes Verzeichnis, weil Organisation einfach gut ist. Jetzt öffne den Editor oder irgendeinen anderen einfachen Texteditor deiner Wahl. Wenn du schon einmal mit Tables gearbeitest hast, wirst du dich hier ganz wie zu Hause fühlen. Im Grunde musst du die .eff-Kennzeichen schreiben, damit FSO weiß, was es damit zu tun hat. Die Kennzeichen sind "$Type", "$Frames", "$FPS" und optional "$Keyframe". Es ist ziemlich einfach und jedes Kennzeichen kommt in eine eigene Zeile.

$Type - Hier musst du angeben, welchen Dateityp du für deine Bildsequenz verwendet hast. Gebe einfach die Dateiendung ein. Sollte sowas sein wie "$Type: PNG".
$Frames - Hier gibst du die gesamte Anzahl der Einzelbilder deiner Animation ein. Dies schließt Einzelbild 0 mit ein. Wenn dein letztes Einzelbild also 300 ist, dann hast du 301 Einzelbilder. Schreib es also wie so: "$Frames: 301"
$FPS - Deine Bilder-pro-Sekunde. Ich verwende 15, also sieht es so aus: "$FPS: 15"
$Keyframes - Dies ist für die Verwendung von Schlüsselbildern in Animationen, wie der Waffenauswahl. Du schreibst einfach die Einzelbildnummer für das Schlüsselbild, ungefähr so: "$Keyframe: 150"

HINWEIS: Für Animationen in der Haupthalle sind Schlüsselbilder im .eff-Format nicht notwendig.

Du solltest also am Ende eine .eff Datei haben, die aussieht wie diese:

Code: Alles auswählen

$Type: PNG
$Frames: 320
$FPS: 15
Abschließend speichere die Datei mit einem richtigen Namen, sehe dafür zur Not im ersten Absatz dieser Sektion nach, als .eff. Um das dortige Beispiel zu verwenden also CB_SHIVAN.eff. Bitte stelle sicher, dass dein Texteditor keine versteckte .txt-Dateiendung hinzufügt!

Gute Arbeit!

Packe diese Dateien jetzt in den data/cbanims-Ordner und es sollte einwandfrei funktionieren!

Erstellung einer .png

Erstelle deine Animation in deinem 3D- und/oder Nachbearbeitungsprogramm und rendere sie als .PNG-Bildsequenz. Es wird am einfachsten sein, wenn die Einzelbilder in aufsteigender Reihenfolge benannt werden, zum Beispiel 2_intel_earth_0000.png, 2_intel_earth_0001.png etc., dies ist zwar nicht unbedingt nötig, macht es aber wirklich einfacher. Denke daran, dass du eine 24-Bit Farbpalette sowie einen 8-Bit-Alphakanal zur Verfügung hast und es daher keinen Grund für irgendeine benutzerdefinierte Farbpalette oder spezielle Transparenzfarben gibt.

Als nächstes besorge dir einen APNG-Assembler. Im Internet stehen eine Menge zur Verfügung, welche die man nur Online betreibt, welche die man lokal installiert, sowohl als Kommandozeile wie auch mit einer grafischen Benutzerschnittstelle. Ich persönlich habe die Kommandozeilenversion von apngasm verwendet, welches ich entsprechend in meinem Beispiel verwenden werde.
Beachte, dass der Japng Editor es dir erlaubt APNGs zu öffnen, um genau zu sehen was welches Einzelbild genau macht, beispielsweise wenn sich der Assembler für Delta- anstatt vollständige Einzelbilder entschieden hat usw.

Verwende den Assembler, um deine APNG zu erstellen. Du musst dabei wissen, welche Verzögerung, du zwischen allen Einzelbildern haben möchtest und das war es auch bereits für eine einfache Animation.

Hier ist ein Beispiel mit Einzelbildern für die Animation zur "Erde"-Information aus der technischen Datenbank. Die FPS für diese Animation beträgt 15.

Code: Alles auswählen

apngasm -d 67 -o 2_intel_earth.png 2_intel_earth_0*.png
-d gibt die standardmäßige Verzögerung für jedes Einzelbild an, in diesem Beispiel sind es 67 Millisekunden. Warum 67? Weil innerhalb von 1000 Millisekunden, was eine Sekunde entspricht, 15 Bilder angezeigt werden sollen. Also 1000/15.
-o gibt den Ausgabenamen an. Für FSO werden wir die .png-Erweiterung benutzen.
Der letzte Argumentationssatz sind alle Einzelbilder in Animationsreihenfolge.

Kopiere jetzt die 2_intel_earth.png nach data/intelanims, um das Ergebnis zu sehen.


Sonderfall für .png

Es gibt auch erweiterte Optionen zum Erstellen von APNGs, die unter bestimmten Umständen nützlich sein könnten, eine wird in diesem Zusammenhang auch genannt.

Verzögerung pro Einzelbild

Du kannst jedem Einzelbild eine eigene Verzögerung geben, die sich jedem anderen Einzelbild der Animation unterscheidet. Um dies zu tun, lege einfach die individuelle Bildverzögerung nach dem Einzelbild der Bildquelle fest.

Code: Alles auswählen

apngasm -d 67 -s -o 2_intel_earth.png 2_intel_earth_renamed_0000.png 500 2_intel_earth_0*.png
Dies wird das erste Einzelbild für eine halbe Sekunde abspielen und alle anderen haben eine Verzögerung von 67 Millisekunden.

Beachte, dass die aktuellsten Versionen von apngasm das für dich tun werden, wenn du verdoppelte Einzelbilder in deine Sequenz einbaust. Zum Beispiel, wenn du 50 Einzelbilder hast und zwei aufeinanderfolgende Einzelbilder sind identisch, dann wird apngasm eine apng mit 49 Einzelbildern erstellen, wo ein Einzelbild die doppelte Verzögerungszeit zu den anderen Einzelbildern hat.

Du hast es geschafft. Das sollte soweit alles sein, was du je über die Erstellung von Animationen wissen musst, falls noch andere Themen auftauchen, werde ich diese hinzufügen.
Antworten