Archive for the 'Flash' Category

Thoughts about Hydra in Flash 10

One of the things I’m looking forward to in Flash Player 10 is support for custom bitmap filters created using Hydra. If you’re not up to speed with Hydra, then all you need to know is that it’s a language that lets you define a custom filter to apply to display list objects in Flash much like the filters you see into todays Flash Player. Great huh? Well it gets even better. The new hydra filters are able to produce their results by utilizing the users graphics card, thus taking a huge amount of stress off the CPU and thus upping overall performance immensely.

Hydra is by no means is breaking news in the Flash world but, I just want to share two thoughts on why I’m excited. It’s able to produce some truly awesome bitmap filters. Your imagination (and coding skill) is your only limitation, but for me, the number one reason why Hydra will kick ass is faster alpha tweening! Alpha adjustment is probably the simplest bitmap filter in existence and the one that’s most commonly used in Flash projects today. This alone is enough reason to be excited about Hydra.

My second reason is to do with 3D rendering using bitmap filters. A few months ago I came across a blog post by Paul Ortchanian. In this post he had jumped on to the “me too” Flash cover-flow band wagon but, Paul’s approach is quite different to many clones before it. Instead of relying on a Papervision type 3D engine or applying simple matrix skews, Paul has gone down another route.

Paul decided on using a built in bitmap filter that is currently available in todays Flash Player called, Displacement Map Filter, to skew and size his album art. His online example looks to animate very smoothly and this is without the use of Hydra and the graphics card. Now, just imagine this cover-flow example utilizing a Hydra filter and I think you’ll understand Hydra’s 3D possibilities. Just think what Papervision3D would be like running on the GPU! It’s all very possible, especially now that PV3D-2 has a plugable rendering engine.

Flash Player 10 can’t come soon enough! :)

ActionScript 3 Layout & Constraints - Video Demo

Around the middle of December I decided to see if I could improve my ActionScript 3 life a little by creating a very basic layout and constraints framework. I thought it would be the perfect project to help speed up my overall development times.

Starting off, I didn’t plan the framework at all, I just kept coding until I got to the end result which, is usually the way things work for me. And after the couple of tinkering around down days, I ended up with a decorator pattern that I could apply to any existing DisplayObject.

This means that you don’t have to apply this framework to the whole application. The stage can stay as a Sprite; your existing components will still display where you told them to display. This framework can be added to any existing project without the need to upgrading anything and without the fear breaking anything which, I think is the best thing about it.

Unfortunately, I shall not be releasing the framework today. I feel that I can still improve upon it and clean the API a little. But I am attaching a video “walk through” of the API and a link to the code I use in the video.

Disclaimers:

  • This is my first ever video! - be nice
  • It’s unedited and done in a single take .. eeek!
  • I tell a tiny lie close to the end about an offset being a pixel value when it was in-fact it’s a percentage .. doh!
  • The Quicktime movie isn’t hinted for streaming .. sorry

View Code - Click Here

Link to Video (for if you can’t see the embed)

If you have any feedback or questions please feel free to leave a comment.

Also, if you are living in the Bay Area .. please remember that the first San Flashcisco user group meeting is on Thursday (Jan 17th 08). For more information, please visit SanFlashcisco.com

San Flashcisco: First Meet (January 17th)

After several small meetings with community leaders and discussions between myself and joint San Flashcisco manager, Patience Elfving, I am please to announce the go-ahead of the San Flashcisco user group.

We have set a regular monthly date for our meetings which will be the 3rd Thursday of the month. Our first meeting will be on January 17th starting at 6:30pm, hosted at 275 Battery Street, Suite 800, SF.

Read More: http://sanflashcisco.com/blog/7/first-meet-january-17th-2008-630

Briefly: OS X Update Claims to Fix FileReference.upload Issue

Apple has just publicly released an OS X update (10.5.1) that claims to fix a number of issues. One being:

Improves compatibility with Adobe Flash-based uploaders used by .Mac Web Gallery and certain other websites and applications.

Me (Engineer) vs Myself (Visionary) vs Alex (Good Guy)

Ever since the release of Flash 5, I’ve more or less been a Flash/ActionScript developer and I love it. I’m able to do just about anything I need to do in Flash. I sometimes like to joke that ActionScript is my first language and English is my second (I think my blog posts are proof lol). It’s taken me from a poor student existence in the UK, to being a moderately well off software engineer living in San Francisco. I owe everything right now to my Flash skills, but something feels off.

The other week, I was reading a blog post by Doug McCune entitled ‘Flex Changed My Life‘, it made me ponder for a little bit (before I remembered I had stuff to finish). To sum up his post; he quit his job seven months ago to become a Flex floater/contractor/consultant/speaker and life’s great for him, best move ever! I also met Aral Balkan at MAX this year who has much of the same life. And I’m sure I could name others, just look at the Adobe evangelist roster!

It all makes me wonder why I’m not doing the stuff those guys are? Why am I not doing the things I want to do with my skills, why am I just a “gun for hire”? To me, traveling to help people with my skills sounds insanely awesome. Maybe those guys can state otherwise (greener grass and all that), but from my cube it looks adventurous to meet new people who want to engage with you about something you love.

I feel like I have so much I to give the world, but here I am working day in, day out on the same project. But don’t get me wrong, working on the same project for months at a time is fine with me, at my previous employment projects were in and out of the door before you could blink.

I am hoping that my starting the SF Flash Platform user group may help with my burning desire to express myself more outside of my everyday work but will it be enough? I just don’t know. It just might make me busier.

Could I become freelance Flash consultant? Sure. But I have too much at stake right now. My rent has just spiked and my wife is unable to work because of her H4 visa status, plus we have no family in the US. But that’s all OK because my job/salary is stable and life is very comfortable at the moment with no worries. Maybe I’m just being too much of a wimp, but if I were a wimp, I don’t think I’d be where I am today at the age I’m at. I don’t know.

So, do I need to move up the ladder? Is being the “gun for hire” just too boring for me now? I do love being creative and coming up with new ideas and solutions, but most of the time, they are all out of my solo reach. So would leading a team be the thing for me? I certainly don’t want to become an Outlook user though.

I do know one thing for certain, I’m slowly becoming tired of being an engineer even though I love it. It’s all very puzzling. But at least I’m able to almost express it in words.

Click to Read: Microsoft Caves In, Pays EOLAS

This is a good news day for online Flash Platform developers. Microsoft has finally managed to open its FAT wallet and pay EOLAS for the ability to “… automatically invoke external applications providing interaction and display of embedded objects within a hypermedia document” .. basically get rid of the whole ‘Click To Activate’ thing.

Though to be fair to M$, this patent is the biggest mound of crap ever! They shouldn’t of had to deal with it in the first place if the patent system was fair. But even though it’s a B.S. patent, MS shouldn’t have passed the mess onto everybody else. The whole ‘Click to Activate’ problem just goes to show that Microsoft cares more about money than it does about UX. In-fact, this is probably just one if a million examples .. haha.

So what does this mean now? Do we all abandon our JavaScript embed workarounds and revert back to hard coding the embed code back into HTML? Well, I think that maybe the whole EOLAS mess might of been a wake up call to way we do embed our Flash. Having a JavaScript wrapper only improves the flexibility of our embedding and also makes all those W3C syntax checker nuts happy. But on the other hand, the hard embed worked in the past, so there is no reason why it wont work just as well in the future. Is there?

Well, if your looking for direction on this matter, my advice is to keep your JavaScript workarounds. You never know when/if EOLAS will go knocking the doors of other browser vendors. And as far as I know, the Opera browser will still have the ‘Click to Activate’ implementation.

This news form Microsoft is too little too late, the damage has been done. JavaScript workaround are now the norm and are here to stay .. thanks EOLAS .. *pause* .. NOT!

For the official dates and details from Microsoft .. Click Here

Flex-less MXML: The Flash Evolution

The greatest thing about the Flex Framework in my eyes is its utilization of an XML based language (MXML) for it’s primary scripting. MXML allows you to create, bind and structure objets in a very straightforward manner. This then leads into other advantages such as rapid prototyping and development and so on and so forth.

Mark-up languages have always been easy to author and understand, just look back at HTML for example. Your average person interested in tech could pick up basic HTML in a very short space of time, then boom, their a web developer just by understanding the behavior of a few predefined tags. A mark-up developer never really wonders why the page is working the way it is, they never wonder why they get constraint and layout flows for free and its OK if their code isn’t perfect as they still get some kind of output from it (unless they went wild with a comment tag).

And so now with MXML, it’s proven that an XML based language can work in the context of creating ActionScript applications. So why is MXML limited to the Flex Framework? Well, the simple answer is that a lot of the META-tags and curly-braces used in the MXML language are only compatible with the Flex Framework. Those little snippets are the worker bees of the Flex Framework who fly around making sure everything is hooked up correctly into the underlaying ActionScript.

So does this mean that Flex-less MXML is nonstarter? Well almost, as I mentioned before, MXML’s rules, constructs, methodologies are all linked to the Flex Framework. But what if we could create our own rules, create our own “worker bees”, then we would have Flex-less MXML right?

This of course throws up a thousand different questions like: Would this even be know as MXML anymore? Would it give birth to languages such as FVX (XML for Flash Video) and GEXML (XML for Flash Gaming Engine) or FFBX (XML for Flash Facebook Applications)? How would you define all the rules need to create these languages? Cant we just build our own compilers for this?

Would the creation of all these variants be a good thing? Who knows, who cares!, the point is that then people would have a choice of how they want to develop in Flash, this is so important! As ActionScript becomes ever more verbose and powerful, its adoption rate with newbies will fall because its just too much for the casual developer to pick up.

This brings me back to the point about only having to learn just a few predefined tags. The Flex Framework shall only get bigger and so shall its documentation. Its wizards shall grow in number to counteract this growth, but in the end, the framework shall become almost as hairy as AS3 to the casual developer. We need mini XML frameworks built for targeted needs for the Flash Platform to flourish and evolve.

I know this shall happen in the next few years, but the question is when? Shall it be Adobe who takes the necessary steps or shall it be the community? I look forward to the years ahead :)

Google Steam Rolling Over LinkedIn

A few weeks ago I received and email from Google recruiting via LinkedIn. It went like this..

Your name came across my desk from a colleague of mine and I wanted to see if you might be interested in exploring opportunities with Google. Although I don’t presume to know what you may or may not be interested in doing, I do know that we have a number of opportunities in many different areas. If you are at all open to that type of conversation, please feel free to email or call me. Thank you for your time, and I hope to hear from you soon.

Don’t get me wrong, I love working for Sony, but Google is the place everyone wants to work at least once and I’m a bit of an opportunist. So I briefly called the lady and submitted my full resume. It sounded like I’d been head hunted over thousands of people who submit their resumes everyday to Google. And I quite honestly got a little excited. I’d never submitted my resume to Google in the past as I thought they received too many submissions and so it would be a waste of my time.

Then two weeks later I get this ..

I brought your resume/portfolio to the Flash committee for review and they were impressed with your background and accomplishments. We carefully reviewed your background and experience, and though we do not have a position that is a strong match with your qualifications at this time, we will be keeping your resume active in our system. We will continue to use our database to match your profile with new opportunities and will reach out to you if we find an opening for which you may be qualified. Thanks again for your interest in Google’s careers and unique culture We hope you will remain enthusiastic about our company. If you have any questions, please feel free to contact me at any time.

So if they didn’t have any ActionScript jobs open, why on earth did they even contact me? The bit that really tickles me is “Thanks again for your interest in Google’s careers and unique culture We hope you will remain enthusiastic about our company”. I almost wrote back telling them to f’ off but I managed to keep my cool for once.

After talking to a co-worker of mine at Sony, it seems that he got the exact same email via LinkedIn, though he didn’t pursue it. So for what ever reason, it seems that Google is fishing on LinkedIn and emailing anyone who has a software engineering background instead of filtering through their thousands of resume submissions which seems slightly odd to me seen as those are the people who really do want to work at Google.

Has anyone else been contact by Google this way and ended up with the same outcome?

Briefly: RIA Camp at Adobe SF

I’m planning on attending RIA Camp next week at Adobe. So, if anyone wants to talk San Francisco Flash Platform User Group with me, then you should come on down. These small camps are always fun :)

Generate Filter ActionScript 3 From DisplayObject’s

Filters in Flash are great, but I do have one big problem when working with them. As I’ve stated many times in my blog, I’m quite the ActionScript purist and I hardly touch the Flash IDE or FLA files. Thus visualizing a filter purely in code can be quite a pain. So sometimes, I’ll open up the Flash IDE and work on creating the filter settings with the help of the nice GUI controls. The problem is then converting all of my filter settings back into reusable ActionScript code.

To make this process a little easier, I took two minutes out to create an ActionScript class that accepts a display object as an argument, and then traces the ActionScript code needed in order to recreate the filter to the output console.

Check it out …

Zip File | Source

See the example below

Read more »

« Previous PageNext Page »