FOTB 2010 Brighton
Gleich vorweg: Meine erste Flash on the Beach Erfahrung wird definitiv nicht meine letzte bleiben – das ist sicher! John schafft es auf beeindruckende Weise hochkarätige und interessante Speaker zusammenzutragen, die die gesamte Konferenz zu einem inspirierenden Erlebnis für Entwickler und Kreative generell werden lässt. Ganz egal ob man sich dann auch noch mit Flash beschäftigt oder nicht ( auch wenn Flash natürlich ganz klar der Grund und der Fokus der Veranstaltung ist ).
Die FOTB fand im Brighton Dome und näherer Umgebung statt. Es gab bis zu vier parallele Sessions. Für alle die, die keinen Workshop am Sonntag gebucht hatten fing es Montag morgen mit dem Check-In an. Wäre schön gewesen hätte man sein Mobiltelefon auf UK-Zeit umgestellt. Dann hätte man noch ausschlafen können und wäre nicht eine Stunde zu früh.
Nicht nur der Brighton Dome ( ein altes Theater mit entsprechend größer Bühne und klasse Sitzen ) machte gleich zu Beginn Eindruck. Auch das Opening-Video lässt das kreative Herz höher schlagen:
Dynamic Resize Flash Application Container / Flash Stage ( without external JavaScript )
[Update: Add complete Flash Builder project source files. ]
If you have dynamic content within your Flash application or you have several states or “pages” implemented, which all have different content, it might be helpful to resize your flash aplication container within the html- context. For this it’s not enough to resize the application from within the flash application. You also have to resize the surrounding html container. This is the object tag for Mozilla browsers or the embed tag, if the client uses the Internet Explorer.
In each case you have to use the ExternalInterface. You call it from the flash application with parameters for the new height and width value of the flash container. On the other side you have to define an javascript function which do the resize operation with these values.
Here is an AS3 class which already includes the JavaScript part. Soyou don’t have to define an extra JS function. So you just have to import the AS3 class into your project and your ready to resize you application from Flash.
Quick start with Flash ExternalInterface class
The ExternalInterface class allows you to communicate with the Flash wrapping container, which is usually the HTML page with JavaScript capeability. It allows you to send data from ActionsScript to JavaScript and vice versa.
The ExternalInterface class is implemented for nearly all current browsers. Please see the documentation for a detailed list of the supported browsers here.
All five attributes and methods are static, so you don’t need an instance of this class.
Make sure ExternalInterface is available
When using the ExternalInterface you should make sure it’s available. So please test the boolean value ExternalInterface.available:
if( ExternalInterface.available ){ ExternalInterface.call( .... ) }
Preload assets with JavaScript, load-complete callback for single assets include SWF/Flash
Currently i need to know within JavaScript when a SWF-file was loaded completly. You could easily handle this with a single ExternalInterface call from within the Flash-application. This is not a very nice solution if this has to be done for each of you flash-applications. This is the neccesary way if you also have to access the flash-application from javascript-side. But in my case i just need to know when the flash is loaded and available in the browser cache.
For this i wrote the swfJSPreLoader. This preloader accepts an array of assets (jpg,gif,png,swf) you would like to preload. Internally it will create an flash-application which does the preloading. You could define several callback handlers. So JavaScript gets to know when all assets are loaded or each single asset is loaded including SWF-files.
Use your Wii-Remote with the FlashPlayer – WiiFlash
You maybe know the Nintendo Wii and its controller the Wiimote. Joa Ebert and Thibault Imbert implement a AS3 package called WiiFlash which allows you to connect the Wiimote ( or Wii Remote Control ) with your Flash/Flex Application.
The Wiimote uses several sensors to detect different motion values. It allows you to read the acceleration value for X-,Y-, Z-axis and Roll, Pitch and Yaw, which is the rotation around the x-,y- and z-axis. So you have a lot more degrees of freedom than with a simple mouse or keyboard. A funny thing you could implement with this for example is WiiSpray, which also uses the WiiFlash Lib.
The WiiFlash package consists of two parts. The first one is the WiiFlash Server. It’s written in C++ / .NET and handles the communication with the Wiimote. The second part is the WiiFlash ActionScript API, which gives you methods and events to get and handle the Wiimote data.
Flash / Flex Events in den letzten Tagen
Hallo und Humppa!,
in den letzten Tag gabs es mal wieder eine geballte Ladung von Flash und Flex für mich.
10.06.2009 – Flex User Group Meeting Hannover:
Auch wenn die Runde bei unseren Hannoveraner ( FXUG Hannover Adobe Groups ) Kollegen derzeit noch überschaubar ist, schließlich ist es noch eine ganz junge User Group, wird Engagement und Niveau groß geschrieben. An diesem Mittwoch hat sich die Gruppe bei den Projektionisten in Hannover getroffen. Dort wird gerade für Kunden an 3D-Visualisierung gearbeitet. Der erste Vortrag ging daher über die ersten Schritte in 3D im Rahmen des Flex Frameworks. Derzeit sind derzeit nur ein paar Translationen und Rotationen und wird den 3D Frameworks wie Papervision3D oder Away3D derzeit noch nicht das Wasser abgraben können, aber künftig sicher druch einer nativeren Unterstützung durch den Flash Player 10 in Sachen Performance helfen können.
swfInputs: Solving Mozilla + Transparent Mode + Win + Special Chars within inputs
As you probably know the Flash Player uses three different types of modes an Flash movie is embedded in the browser window. Its is set via the wmode parameter in the embed or param tag.
<param name="wmode" value="transparent" /> <embed wmode="transparent" ...
With the transparent mode you can influence the relation between the Flash movie an the surrounding HTML. If the set the wmode to window the Flash movie will always lay on top of the rest of the page. This is absolutly helpfull if your application is “standalone”, means the only center of user interaction or if you have an full window application ( at least with full screen ).
But often you have other HTML elements around the Flash movie which are at the same level of user interaction and might be as important as the Flash movie ( Best example might by fly-out menus which has to overlay all other content. Or maybe confirm messages which are not realized by the JavaScript confirm-dialog ). If you use wmode window html elements will always behind the Flash movie (setting the html z-index has no effect ), so there is no real interaction between HTML/JavaScript an the Flash movie. For this you need wmode equals transparent.
FFK09 – Day02
Hallo und Humppa nach Norddeutschland,
Tag 2. Nach einem doch längeren Abend als geplant im Studio 672 – der offiziellen Aftershowparty zur FFK – ging es heute morgen weiter im Text.
“Interface Design – Best Practices” – Die FFK09 ist ja nun ausdrücklich keine reine Entwicklerkonferenz. Es geht um die Verschmelzung von Code und Design. Der für mich beste Vortrag der in die Kategorie “Design” fällt war definitiv dieser. Stefan Nitzsche die großen Probleme und die wichtigsten goldenen Regeln des Interfacedesigns ( nicht das ich mir anmaßen würde alle zu kennen und das wirklich beurteilen könnte, dass es die wichtigsten Regeln sind – aber ich alle schon mal gehört und erfolgreich wieder verdrängt ) in einem optisch inhaltlich und presentatorisch wertvollen Vortrag zusammengefasst. Prädikat besonders wertvoll.
FFK09 – Day 01
Hallo und Humppa nach Norddeutschland,
für alle die die es in diesem Jahr nicht zur großartigen Flashforum Konferenz nach Köln geschafft haben sei versichert – ihr habt etwas verpasst! Wieder einmal haben sich Marc Thiele und Sascha Wolters alle Mühe gegeben ein bunten Strauss an Vorträgen Rund um Kreativität in der Flash-Welt zu organisieren – es ist erst Tag 1, aber es ist bereits gelungen.