Zwei Dateiformate für Vektorgrafiken
Das Shockwave Format (SWF)
Bis zum Jahre 1996 als Macromedias SWF Format aufkam, dominierten fast ausschliesslich Rasterbilder das Internet. Rasterbilder entsprechen den im vorderen Abschnitt erwähnten Pixelgrafiken und sind auch heute noch weit verbreitet, da der hohe Realitätsgrad dieser Bilder immer besser geeignet sein wird um Photos digital zu speichern. Das zur Darstellung dieses Formates nötige Plugin ist heute so weit verbreitet, dass es als De-facto-Standard für vektororientierte Grafiken und insbesondere Animationen im Internet gilt. SWF war und ist ein proprietäres, also nicht vom W3C (World Wide Web Consortium) unterstütztes Format, dessen Spezifikation erst später offengelegt wurde, um auch anderen Firmen zu ermöglichen, Software zu erstellen, welche eine SWF Datei schreiben kann. Zu diesem Zweck gibt es eine Bibliothek für die Programmiersprache C, welche viele Funktionen bereitstellt, die das Erstellen einer SWF Datei erleichtern. Ein Vorteil dieser Offenlegung war, dass nun Firmen wie descrete [1], welche das 3D StudioMax vertreiben, die Möglichkeit hatten, ihre Formate auf das SWF Format zu konvertieren und so im Falle von descrete und 3D StudioMax ein vollwertiges, wenn auch sehr teures, 3D Paket für das SWF Format anzubieten. SWF unterstützt die Echtzeitberechnung (Renderung) von dreidimensionalen Szenarien, welche mit 3D StudioMax erstellt wurden, entsprechende Zusatzsoftware zu 3D StudioMax vorausgesetzt. Weiter unterstützt das Shockwave Fromat die direkte Einbindung von Ton (WAV, MP3), Video (Apple QuickTime), Bilder(JPG, BMP) und den Import von diversen anderen Formaten. Menus, Texteingabefelder, Morphing, Vektor- und Bitmaptransparenz sind direkt eingebaut. Für die Nutzung im Internet ist auch die Unterstützung von Streaming integriert, damit ist gemeint, dass z.B. ein Text bereits am Bildschirm gelesen werden kann, während die Bilder dazu noch geladen werden. Die Darstellung der SWF Dateien benötigt clientseitige Rechenleistung, SWF ist also nicht von der Serverleistung abhängig. Die Anbindung einer Datenbank ist ebenfalls möglich.
Ein Hemmnis für den Einsatz dieses Formates für kommerzielle Produkte ist sicherlich das Fehlen eines guten Schutzes vor Verletzungen von Copyrights.
Tools zur Erstellung/Konvertierung von SWF Dateien findet man unter [3]
Das Scalable Vector Graphics Format (SVG)
Dieses seit Herbst 2001 existierende Dateiformat ist ein offener, vom W3 Konsortium (W3C) verabschiedeter Standard für vektororientierte Grafiken und Animationen. Die am Standardisierungsprozess beteiligten Firmen tragen alle grosse Namen wie Adobe, Apple, Canon, Corel, HP, IBM, Kodak, Macromedia und Netscape. Im Umstand, dass SVG ein offener Standard ist, liegt bereits ein erster grosser Vorteil gegenüber dem SWF Format, welches kein offizieller W3C Standard darstellt, was zur Konsequenz hat, dass die direkte Unterstützung des Formates durch den Browser auch in zukünftigen Browserversionen nicht eingebaut sein wird. Der Anwender muss also immer noch ein Plugin herunterladen. Momentan benötigt man auch für SVG ein Plugin, mit der nächsten Generation von Browser wird dies aber nicht mehr nötig sein. Weitere Stärken von SVG liegen z.B. im Einsatz bei grösseren Webprojekten, wo Daten visualisiert und anschliessend weiterverarbeitet werden sollen, so wie z.B. bei einer Datenbankanwendung oder darin, dass jeder die Dateien in einem Texteditor laden und mit ein wenig Programmier- und HTML-Kenntnissen auch verstehen kann, da eine SVG Datei erstens als Klartext im Editor erscheint und zweitens dessen Struktur der einer Programmiersprache ähnlich ist, genauer gesagt auf XML (eXtensible Markup Language) basiert.
In Sachen Interaktion ist SVG auf sich alleine gestellt nur eingeschränkt nutzbar, da die zur Verfügung stehenden Animationstags und Interaktionsmöglichkeiten nicht sehr umfangreich sind. Als Beispiel werden zwar Mouse Events unterstützt, aber weder Keyboard noch Time Events sind Teil von SVG. SMIL(Synchronized Multimedia Integration Language) behebt den Mangel bezüglich den Time-Events, im Falle der Keyboard Events muss aber auf eine Extension von Adobe zurückgegriffen werden.. In Kombination mit dem W3C Standard SMIL, sind aber kaum mehr Grenzen gesetzt. Im Gegensatz zum SWF Format, wo alles direkt unterstützt wird, muss man sich die Funktionalität hier zusammensuchen. In Sachen Textgestaltung, internationalen Zeichensätzen und Grafikfilter für diverse Photoshop ähnliche Effekte ist in SVG fast alles möglich, was heute gebräuchlich ist. Die Grösse der SVG Dateien ist durch ihre direkte Lesbarkeit sicherlich grösser als eigentlich nötig, weshalb das SVG Format auch komprimiert eingesetzt werden kann. Die zu bewerkstelligenden Berechnungen der Animation, laufen ebenso wie beim SWF, auf der Clientseite ab. Dessen Verwendung stellt also keine erhöhten Anforderungen an den Server.
Direkter Vergleich von SVG und SWF
In untenstehender Tabelle sind vor allem die für den Einsatz von SWF als Animationsformat interessanten Aspekte aufgelistet. Die komplette Tabelle in Englisch kann unter [4] gefunden werden. Welches die momentan verfügbaren Softwarepakete zur Erstellung der Formate sind, wird hier behandelt. Die verfügbaren Softwarepakete stellen, neben den Möglichkeiten der verschiedenen Dateiformate, sicherlich ein ebenso wichtiges Entscheidungskriterium für das eine oder andere Format dar, da mit der vorhandenen Software z.T. noch nicht alles gemacht werden kann, was das Format eigentlich bieten würde. Aber zuerst nun der Formatvergleich mit einer tabellarischen Auflistung bereits erwähnter Punkte bei der Vorstellung der Formate.
Vergleich SWF und SVG
|
|
Eigenschaft
|
SWF
|
SVG
|
Kompatibilität, Erweiterungen
|
|
Offizieller W3C Standard
|
Nein
|
Ja
|
XML basiert
|
Nein, aber XML Objekte und XML Sockets sind verfügbar
|
Ja
|
Dateiformat binär/textbasiert
|
Binär
|
Textbasiert
|
Einfaches Editieren ohne zusätzliche Software möglich Dateigröße
|
Nein
|
Ja
|
Dateigröße
|
Kompakter als SVG durch codiertes Dateiformat
|
Relativ kompakt, kann komprimiert werden
|
Zukünftig direkt durch Browser unterstützt (Inline-Support)
|
Nein
|
Ja
|
Braucht Plugin
|
Ja, sehr kleines (200 KB)
|
Jetzt noch ja, nächste Browsergeneration nicht mehr. Plugin gross (2,3 MB)
|
Plugin Performance
|
Manchmal subjektiv schneller als Adobe SVG. Kein Geschwindigkeitstest gemacht
|
Siehe links
|
Konvertierung, Filter und Textlayout
|
|
Eingebaute Filter (Effekte wie in Photoshop)
|
Nein
|
Ja
|
Textlayout
|
Nein, jedes Zeichen hat eine für sich definierte Position und ist wie ein Grafikobjekt
|
Ja, volle Unterstützung für System- und SVG Schriftarten
|
Konvertierung SWF/SVG
|
Ja, Teststadium
|
Den Autoren ist keine bekannt
|
Konvertierung von anderen Formaten nach SWF/SVG
|
Ja
|
Ja
|
Datenbankanbindung
|
Ja, ASP, FlashSQL, PearlDBI, Servlets, etc.
|
Ja, PearlDBI, Servlets, ASP, etc.
|
Nun werfen wir einen Blick auf die Animations-, Multimedia- und Interaktionsfähigkeiten der beiden Formate. Die Animationsfähigkeiten der beiden Formate sind ziemlich identisch, es können bei beiden Objekteigenschaften wie Farbe, Position, Grösse, Transparenz, Position entlang von Pfaden, mit oder ohne Ausrichtung am Pfad, animiert werden. Morphing ist auch bei beiden möglich, aber mit der Einschränkung, dass die Start- und Zielfigur die gleiche Anzahl Scheitelpunkte(=“Eckpunkte“) haben. Bei der Einbindung von externen Quellen treten die Unterschiede schon klarer hervor, da SVG z.B. keine Möglichkeit bietet, WAV oder MP3 Dateien zu integrieren. Hierzu ist schon die Verwendung von SMIL (Synchronized Multimedia Integration Language) nötig, was den Benutzer zwingt noch weitere Sprachen zu erlernen. Dasselbe gilt für die Verwendung von Quicktime Filmen, welche nun seit FlashMX, ohne eine Verlinkung zur externen Quelle, möglich ist und bei SVG wiederum die Benutzung der SMIL erfordert. Ein weiterer wichtiger Aspekt von Animationen ist deren Steuerung mit einer Scriptsprache und im Idealfall der Möglichkeit damit gleichzeitig auch den Browser steuern zu können. Hier hat das SVG Format die Nase vorn, da es dank gleichem Document Object Model API, für HTML und SVG, beides problemlos kontrollieren kann. Dem SWF Format stehen zwar ebenfalls Kommandos zur Kontrolle von HTML Quellen zur Verfügung, dies aber nur in limitiertem Umfang. Weiter sind zur gezielten Steuerung Schalter und bedingte Verzweigungen unabdingbar. Diese werden im SW Format durch ActionScript simuliert und sind im SVG direkt integriert. Bezüglich Interaktivität sei zuerst ein grundlegender Unterschied zwischen SVG und SWF hervorgehoben; die Skriptsprache. Wie bereits erwähnt, ist das stark an ECMA Javascript angelehnte ActionScript die “Programmiersprache“ von SWF. SVG unterstützt ECMA Javascript, Java Bindings und ActiveX Controls.
Multilinkfähigkeit von XLINK
|
Weiter sind unter dem Aspekt Interaktivität sicher die Hyperlinkfähigkeiten der Formate wichtig, das heisst unter anderem, wie auf externe Quellen zugegriffen werden kann. Hier hat überzeugt sicher SVG mehr, da es die volle XLINK Kompatibilität beinhaltet. XLINK ermöglicht nicht nur auf eine externe Quelle zuzugreifen sondern mit den sogenannten extended Links auch mehrere Ressourcen, wie in der Abbildung links dargestellt, in Verbindung zu bringen. XLINK bietet noch zahlreiche andere Möglichkeiten, wie z.B. das Abspeichern von zu einem Link zugehörigen Attributen. Die Spezifikationen von XLINK sind unter [6] zu finden.
|
Das SWF hingegen unterstützt nur das Laden einer Seite mittels einem ActionScript Kommando, sowie den Datenaustausch zwischen SWF Dateien, ohne weitere Extras. Betrachtet man aber das Event Handling, also die Möglichkeiten der Animation auf Benutzereingaben oder andere Ereignisse zu reagieren, zeigt sich ein klarer Sieger, der SWF heisst. SWF bietet Eventhandler für Maus-, Tastatur-, Zeit-, Lade-, Entlade- und Frame-Events, sowie diverse andere Möglichkeiten auf bestimmte Dinge zu reagieren. SVG ohne SMIL kann nur gerade Maus-, Scroll-, Zoom-, und Skalierungsereignisse sowie Reaktion auf das Laden und Entladen von Inhalten verarbeiten. Tastaturereignisse sind auch mit SMIL nicht verfügbar. Ein sehr wichtiger Aspekt ist, dass SVG keine Buttons unterstützt. Diese müssen mit Javascript implementiert werden, genauso wie die damit verbundenen Ereignisroutinen. Im Unterschied zum SWF,das nicht nur Animationen darstellen können soll, sondern auch ganze Webapplikationen realisieren, ist SVG, ohne SMIL und andere Ergänzungen, eher ein reines Animationstool.
Software zur Erstellung von Animationen
Nun stellt sich die Frage, welche Tools zur Erstellung von Animationen geeignet sind und mit möglichst wenig Aufwand gute Resultate erzielen. Weil es auf dem Markt unzählige Produkte gibt, welche sich für diese Aufgabe potentiell eignen und deren Untersuchung den Rahmen dieser Arbeit sprengen würde, seien hier nur drei dieser Produkte herausgegriffen. Zuerst seien kurz die Möglichkeiten heutiger Software zur Erstellung von Animationen im SVG Format erwähnt. Danach soll ein etwas detaillierterer Blick auf Macromedia FlashMX und SWISHzone.com’s SWISH, beides Programme zur Erstellung von Animationen im SWF Format, geworfen werden. Zum Schluss soll noch Microsoft PowerPoint im Bezug auf seine Animationsfähigkeit und Internettauglichkeit untersucht werden.
Untersucht wurden folgende Kriterien:
Untersuchungskriterien
|
|
|
|
Einarbeitungszeit
|
Es werden keine absoluten Angaben gemacht sondern Anhaltspunkte gegeben, wie lange man mit welchen Vorkenntnissen braucht, um eine Animation oder eine interaktive Anwendung implementieren zu können.
|
Ausbaubarkeit
|
Es wird untersucht, ob und wie das Produkt mit anderen Produkten interagieren kann. Die Produkte oder Formate können hier wegen der grossen Anzahl nicht abschliessend aufgezählt werden.
|
Animation
|
Hier sollen folgende Fragen geklärt werden: Wie schnell ist eine Animation erstellt? Wie ist deren Qualität und bieten die Gestaltungsmöglichkeiten genügend Freiheiten? Wie ist die Qualität bei einer Veröffentlichung auf dem Netz durch die integrierten Exportfunktionen des Programms? Wie gross sind die erzeugten Dateien für die Animation?
|
Interaktion
|
Die Interaktivität ist gerade bei Schulungssoftware, sehr wichtig für den Lernerfolg, wie im Abschnitt Interaktivität genauer erläutert wird. Aus diesem Grund werden die Produkte auf ihre Fähigkeiten zur Integration von Interaktiven Elementen untersucht.
|
Dynamik
|
Hier soll geklärt werden, ob sich mit dem Produkt eine einmal erstellte Animation oder interaktive Lerneinheit bei notwendigen Inhaltsänderungen einfach anpassen lässt.
|
Software zur Erstellung von SVG Animationen
Obwohl das SVG Format noch relativ jung ist, gibt es bereits unzählige Tools rund um SVG. Von einfachen SVG Konvertern bis zu ausgewachsenen Autorensystemen ist schon vieles vorhanden. Eine relativ aktuelle Kollektion von Programmen rund um SVG zeigt Chris Lilley unter [5]. Um eine SVG Grafik zu erstellen, benutzt man vorzugsweise echte Zeichenwerkzeuge wie z.B. Adobe Illustrator, Corel Draw und OpenOffice, die SVG Dateien im- und exportieren können. Reine SVG Grafiken kann man auch mit einigen Shareware Tools wie z.B. Sketch oder Mayura Draw erstellen. Der SVG Output dieser Programme sollte aber noch gründlich überarbeitet werden, da der erzeugte Code bezüglich der Geschwindigkeit nicht optimal ist. Wenn man also nur eine SVG Grafik erstellen will, hat man bereits die Qual der Wahl, soll es dann aber eine (interaktive) Animation sein, sieht die Lage etwas anders aus. Das wohl am weitesten fortgeschrittene Produkt ist Jasc WebDraw, das wahlweise im Quellcode- oder im Wysiwyg-Modus mit Zeichenwerkzeugen arbeitet. Die Vorschau zeigt, wie das ganze im Adobe SVG Viewer aussieht. Kontrollen können mit der integrierten Zeitlinien-Palette, Effektfilter für die Animationen mit dem Filter Editor erstellt werden. Da dieses Autorensystem nicht getestet wurde, kann hier nur für weiterführende Informationen auf [7] verwiesen werden.
Anzufügen wäre noch, dass wer sich nicht entscheiden kann, ob SWF oder SVG, am besten einen Konverter für SWF nach SVG, welcher unter [8] durch den Upload eines SWF Files aktiviert werden kann, benutzt. Nach dem Upload der SWF Datei erhält man die komprimierte SVG Datei wenig später per Email zugeschickt.
Macromedia Flash
Oberfläche von FlashMX
|
Macromedia FlashMX ist das bekannteste und zugleich das teuerste Programm zur Erstellung von Shockwave Dateien. Diese Software kann nicht nur zur Erstellung von Animationen, sondern auch zur Entwicklung kompletter Anwendungen verwendet werden. Macromedia liefert hier eine professionelle Software, die kaum Wünsche offen lässt. Die Anschaffung dieser Software sollte man sich trotzdem gut überlegen, da der Preis für eine Version, mit der eine kommerzielle Verwendung der damit erzeugten Animationen oder Anwendungen möglich ist, über viele Privatbudgets hinausgeht.
|
Soll die Software für nicht-kommerzielle Zwecke eingesetzt werden, kommt man allerdings deutlich günstiger zu einer Flash Version, was gerade für die eigene private Homepage reizvoll wäre. Wird Flash vor allem für die Erstellung einfacher Animationen eingesetzt, würde sich aus finanziellen Gründen sicherlich ein Blick auf das Produkt SWISH lohnen, welches im nächsten Abschnitt untersucht wird.
Untersuchungskriterien FlashMX
|
|
|
Einarbeitungszeit
|
Um mit Flash eine kleine Animation erstellen zu können, benötigt man mit Hilfe der sehr informativen Tutorials ca. einen halben Tag. Das dann vorhandene Können reicht, um einfachere Animationen mit Umrissverformungen, Farbübergängen, Drehungen, Translationen, sowie einfachen Blendtechniken zu erzeugen und mit interaktiven Schaltflächen zu arbeiten. Ein wenig mehr Zeit benötigt das Erlernen von ActionScript, der Flash eigenen Scripting Sprache, sowie der Einsatz von verschachtelten Animationen, sprich der Animation in der Animation. Die ziemlich ausgereifte Hilfefunktion für ActionScript und die zahlreichen auch auf dem Internet vorhandenen Tutorials laden geradezu zum learning by doing ein. Nach zwei bis drei Wochen intensiver Einarbeitung beherrscht man einen Grossteil der Funktionalität von Flash.
|
Ausbaubarkeit
|
Flash Animationen lassen sich dank der Unterstützung von anderen Herstellern, wie z.B. descrete, zu Echtzeit 3D Animationen ausbauen. Auch eine teilweise Unterstützung von XML ist in Flash realisiert. Die Einbindung von diversen Multimediaformaten, wie Quicktime oder RealAudio, ist eine Selbstverständlichkeit, genauso wie die Kommunikation mit dem Browser über Javascript. Trotz der vielen Möglichkeiten, stösst man gerade bei der Entwicklung von grösseren Applikationen schnell an die Grenzen von Flash. Für diese Zwecke sollte man sich ein Authoringsystem zulegen, da damit vieles, was eventuell auch mit Flash erledigt werden könnte, in viel kürzerer Zeit realisierbar ist.
|
Animation
|
Ist einmal das Grundwissen vorhanden, sind einfachere Animationen dank der übersichtlichen Zeitlinie und den integrierten Grafikfähigkeiten, die anfangs etwas Einarbeitungszeit benötigen, danach aber in Sachen Benutzerfreundlichkeit kaum zu überbieten sind, schnell erstellt. Durch die Möglichkeit verschachtelte Animationen zu generieren, welche unabhängig voneinander ablaufen, und welche anfangs manchmal zu unerwarteten Ergebnissen durch ihre unabhängigen Zeitlinien führen, kann man die Arbeit auch in kleinere Einheiten aufteilen, welche jeweils für sich entwickelt werden können. Das dynamische Laden dieser Animationen eröffnet vor allem auf dem Internet die Möglichkeit, die Ladezeiten zu kaschieren. Während eine erste Animation bereits läuft, wird im Hintergrund bereits die nächste geladen. Die Qualität der mit Flash erstellten Animationen ist durchgehend sehr gut, und der Gestaltung sind nur die Grenzen der Zweidimensionalität auferlegt. 3D Animationen sind nicht in Flash zu realisieren. Dazu benötigt man externe Software, welche dank renommierten Firmen wie descrete [1] mit ihrem 3D StudioMax zur Genüge vorhanden ist.
Die Funktionen für eine Veröffentlichung der Animationen auf dem Internet sind sehr gelungen, da Flash ursprünglich auch für einen Einsatz im Internet konzipiert wurde, und sein Einsatz zur Erstellung von Spielen vor allem zu Werbezwecken erst in letzter Zeit aufgekommen ist. Der Export ins Web ist, falls die Einstellungen einmal auf die eigenen Bedürfnisse angepasst sind, mit einem Knopfdruck zu erledigen.
Ein Vergleich von PowerPoint und Flash ist hier zu finden. Dieselbe Animation in Flash und PowerPoint unterscheiden sich in der Downloadzeit und somit auch in der Dateigrösse sehr wesentlich! Aber sehen sie selbst!
Der einzige Nachteil bei Flash ist, dass es nicht skaliert, d.h. man muss für verschiedene Bildschirmauflösungen verschiedene Flashfiles erzeugen.
|
Interaktion
|
Interaktivität wird in Flash gross geschrieben und geht von der einfachen Erstellung von dynamischen Schaltflächen über fest integrierte Elemente wie sie in Formularen verwendet werden (Radio Buttons, Checkboxen u.s.w.) bis zur Möglichkeit, eine eigene Textanalyse zu implementieren. Die Erstellung eines Quiz oder Übungen für eine e-Learning Einheit sind also kein Problem, solange man nicht eine komplexe mathematische Gleichung als Resultat einer Aufgabe eingeben muss. Diese könnte nur schwerlich auf ihre Korrektheit überprüft werden, da durch die vielen Umformungsmöglichkeiten eine grosse Anzahl an korrekten Lösungen resultiert. Mit Flash kann man also sehr viel machen, der Aufwand dafür ist aber manchmal recht gross. Besser ist es, ein Authoringsystem einzusetzen, gerade bei grösseren Anwendungen. Dort können dann z.B. Quizfragen und Aufgaben zentral verwaltet oder gar der Fortschritt einzelner Anwender ohne grossen Aufwand verfolgt werden.
|
Dynamik
|
Flash erlaubt das dynamische Laden von Texten, Bildern oder Film Clips, womit eine Aktualisierung ohne die Editierung der Flashdatei möglich ist. Das Einspielen von ganzen neuen Worddokumenten inkl. Grafiken ist aber nicht möglich, hierzu sollte man wiederum ein Authoringsystem wählen, welches die einfache Verwaltung von Inhalten erlaubt. Aber um z.B. eine News Seite aktuell zu halten, welche aus Text und einigen Bildern an fester Position besteht, reicht die Dynamik allemal aus.
|
Dostları ilə paylaş: |