Flash CS4 Hilfe offline nutzen

1. Februar 2009

Mit das nervigste in Flash CS4 ist das online Hilfesystem. Wenn ich mit meinem Notebook unterwegs bin, habe ich nicht unbedingt immer eine Netzverbindung. Es gibt jedoch eine einfache, wenn auch gut versteckte Möglichkeit auch lokal auf die Hilfedateien zuzugreifen:

  1. Unter Fenster > Erweiterungen > “Verbindungen” auswählen
  2. Im Panel-Menu rechts oben “Offline-Optionen” auswählen
  3. Checkbox “Ich möchte offline arbeiten” anchecken

Das war’s. Beim nächsten Öffnen der Hilfe werden die lokalen Dateien geöffnet.
Kleiner Wehrmutstropfen: Natürlich funktionieren Tools wie Kuler oder ConnectNow im Offline-Betrieb nicht mehr.

Wallpaper-Klasse 1.0.1b - Bugfix gefixed

15. August 2008

Das Bugfix 1.0.1 vom 12.08. war leider mit der heißen Nadel gestrickt und beinhaltet einen neuen Bug. Deshalb muss ich noch einmal ein Update nachschieben. Weil es sich nur um eine Zeile überarbeiteten Code handelt, bekommt dieses Update keine neue Versionsnummer, sondern ein kleines ‘b’ mit auf den Weg.

Die Wallpaper-Klasse soll es Flash-Designern ohne große ActionScript-Erfahrung ermöglichen, kommunizierende swfs zu erstellen, wie sie z.B. für Werbemittel wie Tandem-Banner, Hockeysticks, Wallpaper Ads oder Fireplaces benötigt werden. Mehr zu der Wallpaper-Klasse und deren Anwendung gibt es in diesem Blog-Eintrag vom 25. März.
Eine komplette Dokumentation im pdf-Format und mehrere Anwendungsbeispiele sind im Download enthalten.

Download Bugfix: Wallpaper 1.0.1b (zip, 332 KB)

Wallpaper 1.0.1 - Wichtiges Update mit LocalConnection Crossdomain Bugfix

12. August 2008

In die Wallpaper Version 1.0 hatte sich ein Crossdomain Bug eingeschlichen. Er verhinderte, dass Wallpaper, Tandem-Banner oder Fireplaces deren swfs von unterschiedlichen Ad-Servern ausgeliefert werden die LocalConnection korrekt aufbauen. Deshalb sollte jeder, der die Wallpaper-Klasse benutzt unbedingt die neue Wallpaper-Klasse Version 1.0.1 herunterladen.

Download Bugfix: wallpaper_1.0.1b.zip (zip, 332 KB)

Flashplayer 9.0.124 Release

9. April 2008

Adobe hat gestern den Flashplayer 9.0.124 veröffentlicht. Dieses Release schränkt das Cross-Domain-Scripting weiter ein als vorherige Releases, um einige Sicherheitslücken im Player zu schließen. Diese Einschränkungen wirken sich auf Socket-Kommunikation, Javascript-Kommunikation mit der umgebenden HTML-Seite und Änderungen des Request-Headers beim Aufruf von Backend-Scripten aus, die z.B. bei Flash Remoting eingesetzt werden.

Wade Arnold
hat bereits vor einer Woche einen Eintrag in seinem Blog geschrieben, welche Anpassungen gemacht werden müssen, um bei der Nutzung von AMFPHP mit dem neuen Flashplayer Release keine Probleme zu bekommen.

Wer also plötzlich auf Probleme bei bisher funktionierenden Flashprojekten stößt, sollte sich auf jeden Fall diesen Artikel zum neuen Release im Flashplayer Developer Center zu Gemüte führen.

Wallpaper 1.0 - Wallpaper, Hockeysticks, Tandem-Banner und … jetzt auch Fireplaces

25. März 2008

Nach mehr als einem Jahr gibt es jetzt eine neue Version der Wallpaper Klasse.

Die Wallpaper Klasse soll es Flash Designern ohne große ActionScript-Erfahrung ermöglichen, miteinander kommunizierende Banner zu produzieren. Mehr Informationen über die Vorteile und Möglichkeiten der Klasse gibt es in den Blog-Einträgen zu Version 0.2 und Version 0.3.

Ich habe die komplette Klasse jetzt von grundauf neu geschrieben, um endlich das zu erreichen, was Daniel und ich von Anfang an als Ziel hatten: eine unbegrenzte Anzahl von swfs über LocalConnection miteinander kommunizieren zu lassen. Dabei sollte die Klasse nach wie vor einfach zu handhaben sein - auch für "Nicht-Programmierer". Deshalb wurde die bekannte Syntax aus Version 0.3 für die Kommunikation von zwei swfs auch beibehalten:

Actionscript:
  1. var skyscraper:Object;
  2.  
  3. function onConnected(otherSWF:Object):Void
  4. {
  5.   skyscraper = otherSWF;
  6.   skyscraper.gotoAndPlay(2);
  7. }
  8.  
  9. Wallpaper.connect(this);

Für die Kommunikation mit mehreren swfs ist etwas mehr Tipparbeit notwendig:

Actionscript:
  1. Wallpaper.setup("leftSky", "superBanner", "rightSky");
  2. function onConnected():Void
  3. {
  4.   Wallpaper.ALL.gotoAndPlay(2);
  5. }
  6. Wallpaper.connectAs("superBanner", this);

Als erstes wird über Wallpaper.setup() die Wallpaper Klasse für die Kommunikation initialisiert. Die übergebenen Namen sind frei wählbar, müssen aber in allen kommunizierenden swfs identisch sein. Dann wird wie gewohnt die onConnected Callback Funktion definiert. Sie wird von Wallpaper aufgerufen, sobald alle beteiligten swfs eine Verbindung aufbauen konnten. Zu guter Letzt startet man die Verbindung mit der Methode Wallpaper.connectAs(), der ein Verbindungsname und eine Zeitleiste/ein MovieClip übergeben wird. Der Verbindungsname muss einer der zuvor an Wallpaper.setup() übergebenen sein. Das war schon alles, was für eine Kommunikation zwischen drei swfs notwendig ist.

Das Beispiel zeigt ein weiteres neues Feature von Version 1.0: über Wallpaper.ALL kann man Funktionen in allen verbundenen swfs gleichzeitig aufrufen. Im Beispiel werden alle drei swfs in Frame 2 springen und abspielen.

Wenn die Methoden Wallpaper.setup() und Wallpaper.connectAs() benutzt werden, wird der Callback Funktion onConnected() kein Wert übergeben. Man muss also eine Möglichkeit haben, einzelne swfs in irgendeiner Form anzusprechen. Das bietet die Methode Wallpaper.getObjectByName(). Ihr wird einer der zuvor mit Wallpaper.setup() registrierten Verbindungsnamen übergeben und gibt eine Referenz auf die Verbindung zurück. Über diese Referenz können dann wie gewohnt Funktionen im verbundenen swf aufgerufen werden. Hier ist das Beispiel von oben, mit zwei Variablen, die die Referenzen auf die anderen verbundenen swfs speichern:

Actionscript:
  1. Wallpaper.setup("leftSky", "superBanner", "rightSky");
  2. var leftSky:Object = Wallpaper.getObjectByName("leftSky");
  3. var rightSky:Object = Wallpaper.getObjectByName("rightSky");
  4. function onConnected():Void
  5. {
  6.   Wallpaper.ALL.gotoAndPlay(2);
  7. }
  8. Wallpaper.connectAs("superBanner", this);

Über die Variablennamen kann man zu einem späteren Zeitpunkt einfach Funktionen in einem verbundenen swf aufrufen:

Actionscript:
  1. leftSky.play();

Die Referenzen können zwar direkt nach dem Aufruf von Wallpaper.setup() Variablen zugewiesen werden, der Aufruf von Funktionen ist aber erst sicher, nachdem onConnected() aufgerufen wurde.

Aufgrund der erweiterten Möglichkeiten ist die Klasse jetzt etwa um etwa 700 Bytes gewachsen, aber mit ca. 1600 Byte sollte sie auch für knebelnde Vermarkter KB-Vorgaben brauchbar sein.

Im zip findet ihr neben der Klasse (natürlich in ActionScript 1 und ActionScript 2) und den üblichen Einsatzbeispielen jetzt auch ein pdf mit einer kurzen Dokumentation der Klasse.

Wie immer freuen wir uns über Anregungen, Kritik und Lob.

Download:
Wallpaper v1.0 (zip, 346.94 KB)
Wallpaper v1.0.1
Wallpaper v1.0.1b(Wichtiges Bugfix! zip, 332 KB)

Neuer Flashplayer 9.0.115.0

5. Dezember 2007

Tss ... das ist glaub ich ein Release-Rekord. War nicht bisher der 6er Player mit 79 Releases an Platz 1?

Wie auch immer, gestern (edit: wat, wie spät is dat? ok ... vorgestern) hat Adobe ein neues Flashplayer 9 Release herausgebracht. Größte Neuerung: Zusätzlich zu dem altbekannten flv-Videoformat und mp3-Audioformat unterstützt der Player jetzt auch den H.264-Videocodec und den AAC-Audiocodec (z.B. m4a, wie es in iTunes genutzt wird).

Infos zum neuen Player und den unterstützten Formaten gibt es bei Tinic Uro, Emmy Huang und in den Beiträgen von David Hassoun und Justin Everett-Church im Flashplayer DevCenter.

Papervision3D goes 2.0 (alpha)

5. Dezember 2007

Gerade hat Ralph Hauwert eine öffentliche Alpha-Version von Papervision3D 2.0 (GreatWhite) ins SVN-Repository gestellt. Neue Features sind z.B.: Shaders, Animations-Unterstützung für ASCollada-Szenen und eine neue Render-Architektur, die auch mehrere Viewports unterstützt.

Laut Ralph muss das Framework noch optimiert werden und kann hier und da etwas haken - ist also noch nicht unbedingt für Produktionen einsetzbar - aber zeigt, was mit Papervision3D in ein paar Wochen möglich sein wird.

Ist schon klasse, wie das Papervision3D-Team das Projekt vorantreibt und vermarktet. Übrigens: Happy Birthday zum 1. PV3D Geburtstag.

Speed Optimierung in ActionScript 3

12. August 2007

Für alle Speed Junkies hat John Grden im Zuge der PaperVision3D Engine Entwicklung einige AS3 Benchmark-Tests zu einfachen mathematischen Operationen wie Division, Math.floor, Math.ceil und Math.abs in seinem Blog veröffentlicht.

Abgesehen davon, dass AS2 noch keine int und uint Typen kennt, sind auch die Divisions Benchmarks nicht eins zu eins nach AS2 zu übertragen. Bei meinen AS2 Tests mit John's angepassten Scripten schnitt die Division z.B. besser ab als die Multiplikation. Die schnellste Berechnung ist zwar auch in AS2 die Bitshifting Variante, die Unterschiede sind aber nicht so gravierend wie in AS3 (zumal John im Bitshifting Script int anstatt Number verwendet). Hier meine AS2 Testergebnisse:

DivisionTest: 7272
MultTest: 12158
BitTest: 6600

Diese Werte zeigen im Vergleich zu John's Ergebnissen aber eines ganz deutlich: Die neue VM im Flashplayer 9 ist schweineschnell ;-)

Detailverliebtheit

23. Juni 2007

"Wir widmen jedem noch so kleinen Detail unsere volle Aufmerksamkeit. [...]" ist ein Zitat vom Lexus Chief-Engineer Suguya Fukusato. "[...]Gleichzeitig muss aber jedes kleinste Detail in perfekter Harmonie zum Ganzen stehen." Die neue Microsite zum Lexus IS von BMZ interactive greift genau dieses Zitat auf und fügt aus vielen kleinen Details das perfekte Ganze zusammen.

Das Konzept der Site ist natürlich nicht neu, aber ein Bild in ActionScript zu analysieren und aus vielen kleinen Mosaiksteinen wieder zusammen zu setzen war für mich persönlich eine neue Aufgabe.

Auf der Site gibt es übrigens auch ein Gewinnspiel. Das ist allerdings verdammt gut versteckt.

Adobe Air, Flex3 und neuer Flashplayer

11. Juni 2007

Wow, da war ja gestern Nacht/heute mal wieder einiges los auf den Adobe Labs. Gleich drei neue Betas wurden veröffentlicht:

Das Flashplayer Update verspricht laut des Posts von Tinic Uro einiges mehr an Performance zu bringen. Die Air Beta konnte ich noch nicht testen, aber es gibt einen guten Überblick über die neuen Features von Mike Chambers im Adobe Development Center. Für HTML/JavaScript-Entwickler die Air-Applicationen erstellen wollen gibt es ein Plugin für Dreamweaver. Mein Highlight ist aber das kostenlose Air Plugin für Aptana. Dafür etwas enttäuschend: Für die Air Beta kann nur in der Flex 3 Beta entwickelt werden, da das aktuelle Air SDK jetzt Bestandteil des Flex SDK ist. Zu Flex 3 hatte Ted Patrick letzte Woche eine tägliche Serie mit neuen Featuren gepostet (startet mit diesem Post). John Dowdell hat einige Links mit Informationen zu den neuen Betas gesammelt.