Archive for the ‘ActionScript3’ Category

07
Jul 10

@thibault_imbert drops a Flash 3D teaser bomb

A few days ago Twitter exploded when someone noticed in the Adobe Max 2010 schedule a session called “Flash Player 3D Future”. Today Thibault Imbert (Product Manager for Adobe Flash Player) put up this blog post, teasing more on the subject:

“Now you may wonder, what does this means, what kind of 3D are we talking about ?

What kind of API ? True textured z-buffered triangles ? GPU acceleration ? Even better ? What I can say is forget what you have seen before, it is going to be big :)

When this will be available ?

We will share plans with you at Max during this session, I tell you, some serious stuff is coming for 3D developers.”

The key part of his post is “GPU acceleration”. The software renderer inside of Flash has long been its bottleneck. It is what stops Flash being a serious contender in the desktop gaming market. It is what makes Unity developers look at AS3 3D libraries and roll their eyes. It is what makes the limit on the amount of pixels we can push around so incredibly tiny, in comparison to what even low-end GPUs can do these days. Equally screen resolutions are constantly increasing, but still we have to cram our games into small areas because performance just isn’t good enough.

Most old-time Flash developers (hey Squize) don’t expect Adobe to announce anything useful. “It’ll be some half arsed gpu acceleration, only available if you set the wmode in the html, or something equally useless”, “does anyone remember the physics demo they showed last year? that never made it either”.

Adobe have a lot to live up to from previous Max hyperbole.

I’m slightly more optimistic, but I can appreciate their scepticism. Having been playing with Chrome’s HTML5/WebGL support a lot these past few weeks, I truly believe this is Adobe’s only shot at succeeding in the 3D web space. Because time is running out for them. GPU acceleration is going to have to work across the board, and accelerate all graphical elements: bitmap, vector, 3D. A cherry on the cake? Allow PixelBender shaders to run on the GPU too.

It’s about time they truly supported Flash game developers. This would be a significant step forward. It would open the desktop games market to us, it would allow proper 3D games to be made in Flash, and it has the opportunity to give an incredible speed boost to all of graphics operations in Flash.

Don’t drop the ball on this one Adobe. I beg of you.

Read the full blog entry here: http://www.bytearray.org/?p=1836

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

16
Jun 10

Flod 3 Beta 2 Demo – SoundFX, David Whittaker support & more!

Christian threw a new beta of Flod 3 at me today, and the list of playable module formats just keeps on getting better and better! New in this beta is support for SoundFX 1 & 2 and all variants of the David Whittaker format. It brings the list of total supported formats to 18 (listed below).

He plans on adding support for Rob Hubbard, TFMX and TFMX 7 Voices formats – and I think that will complete the set for Flod 3! It will quite simply be the best mod/chip replayer in AS3. Heck, the replay quality of standard mods is already well beyond the likes of ModPlug. All it really needs is someone to wrap it up in a sexy AIR app shell, and we’ve got ourselves an incredible new multi-format mod/chip player.

Download the Beta 2 demo (550Kb) which includes 5 tunes: Another World Intro (SoundFX), Leonardo Intro (SoundFX 2), Shadow of the Beast Title, Wrath of the Demo and Xenon 2 Megablast (all DW variants). Needless to say it’s Flash Player 10 only.

The full list of formats supported by Flod 3 currently stands at:

  • Delta Music 1
  • Delta Music 2
  • Digital Musician
  • Digital Musician 7 Voices
  • Future Composer 1.x
  • Future Composer 1.4
  • His Master’s NoiseTracker
  • SidMon 1
  • SidMon 2
  • SoundFX 1.x
  • SoundFX 2.x
  • Brian Postma’s SoundMon 1.x
  • Brian Postma’s SoundMon 2.x
  • Ultimate SoundTracker
  • Generic SoundTrackers
  • NoiseTracker
  • ProTracker
  • David Whittaker (all)

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

08
Jun 10

3D Ninja Test 2 – Fists of 30 fps Fury

A few weeks ago I posted my first demo of an animated 3D ninja. At the time I had high hopes of creating a primitive Virtua Fighter styled game. But there were several obstacles to overcome. The poly count was a bit too high, the scene only had one model in it, and it took Away3D a fair time to parse the MD2 data for the key frames.

So last night I decided to revisit the code and see what could be improved. Here is the result – I dropped Away3D and decided to run a test with ND3D instead. It’s a much more light-weight 3D library, and doesn’t include features like lights or shaders. But what it does do, it does very well, and very fast. The MD2 parser in particular kicked several bails out of the Away3D one.

This, combined with an optimised MD2 model (many thanks to Adam Biles for help) allowed me to get two fighters in the scene, each independantly animated and textured, with a ground plane and free roaming camera. I did have a skybox in as well, but the camera perspective didn’t look right and made the fighters seem as if they were floating in space. So I’ll save that for a different project.

Feel free to have a play with the demo.

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

27
May 10

Ninja 3D Test 1

I had a desire to see if it was possible to create a simplistic “Virtua Fighter” or Tekken style game in Flash 10. The biggest initial hurdle was getting a convincing model displayed and animating it. And then seeing if the frame rate shot through the floor like a dead weight, or was actually playable.

After a lot of messing around with Milkshape, md2.qc custom files and the Away3D MD2 parser doing some really weird shit, I finally managed to assemble this tech test (click the picture to launch, FP10 required):

Ok so it’s not going to set the world on fire, but I was genuinely surprised at the speed, even when running a full animation sequence. And the model could be optimised significantly too.

More tests will follow as time permits, but this is very encouraging at least.

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

21
May 10

FlxBitmapFont – A Bitmap Font class for Flixel 2 released

Today I released my FlxBitmapFont package to Google Code. This allows you to use bitmap fonts directly in your Flixel 2 games:

The bitmap fonts are just an extension of a Flixel Sprite, meaning you can throw them around, collide with them, scale them, rotate them and generally cause havoc. Or of course they could just be UI elements, proving a score/lives count. But at least the choice is yours :)

11 fonts are included, 2 sample programs and comprehensive documentation in the form of a PDF file. I’ve also published that here on my blog: http://www.photonstorm.com/flxbitmapfont and I will update both my blog and the Google Code archive as needed.

Anyway I hope you have fonty fun with this! Look out for a number of new Flixel classes from me in the coming months, or catch me on the flixel forums where I help moderate the place.

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

22
Mar 10

Dealing with the FlxU.overlap kill in Flixel 2

FlxU.overlap in Flixel 2 uses the new FlxQuadTree to handle collisions. It allows you to pass in either a single object (say an FlxSprite), a group of objects (FlxGroup), or even a group of groups! To be honest the more you give it, the more useful it proves to be.

However it’s got one annoying side-effect: if you don’t specify a custom function to deal with the collision, it will kill() your objects. This is often a far from ideal end result. For example if you had a bullet and an enemy being compared – you may want the bullet to be killed instantly, but the enemy to be only “hurt” by this, reducing it’s health.

The only way I’ve found to do this so far is to override the “kill” method of FlxSprite (in my Enemy class) and then perform the logic in there. Reduce health, update animation, health < 0, then kill it for real.

This isn’t ideal, but it certainly works – so if you’re stuck in a similar bind with FlxU.overlap, this may help.

Also it’s worth mentioning (as this caught me out too) – if you do specify a custom function for overlap, make sure it returns a Boolean. False will ignore the overlap, true will say you’ve dealt with it. If you don’t return this value it appears to default to killing your objects again.

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

19
Mar 10

FlxSnake – A simple Snake game for Flixel 2.23+

I’ve been playing with Flixel a lot recently, and over on the forums someone was having trouble getting a “snake” game to work. I always applaud people who “start simple”, rather than diving in the deep end and sinking without trace.

So I spent lunch time today knocking together a simple snake game in Flixel 2.23.

There are no graphics (just blocks), but it shows how to use an FlxGroup to handle single to many collision checks, simple sprite controls and of course a basic snake game mechanic. The whole thing is just one single class file with no external requirements.

It’s up on my GitHub account here: http://github.com/photonstorm/FlxSnake

And if you want to join in, the forum thread is here: http://flixel.org/forums/index.php?topic=1261.0 (I’m a moderator on the Flixel forums, so drop by and say hi!)

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

15
Mar 10

The 8-bit Rocket auto-biography is out

20 man months of work.

Copious amounts of writing, editing, re-writing, re-editing and editing once more.

Stacks of demo games and hundreds of lines of quality source code.

All to make this the finest 650+ pages of AS3 game development ever commited to dead tree.

Jeff and Steve, the 8-bit Dynamic Duo have done it! Their book is finally out …

The Essential Guide to Flash Games: Building Interactive Entertainment with ActionScript

Despite having a slightly odd title (how many games have you ever played that weren’t interactive?!) this book looks awesome. I’ve pre-ordered my copy from Amazon UK and will give it a proper write-up when received. I have major respect for people who hold down full-time jobs / families, and still manage to produce such a mammoth book as this.

There is a bit of blurb on the Friends of Ed web site about it, although not as much as I would have liked. For example no contents listing, no sample chapter, a poor quality cover image and no index even. Given how many books on web development FoEd produce it begs the question why their own site is so shit. But I digress (and hopefully they will update this page over time). So for now the best place to learn about the contents is from the horses mouth so to speak, here on the 8-bit Rocket.

Congrats Jeff and Steve – I wish you all the best with sales. All you have to do now is stop calling my games advergames and the world will be perfect ;)

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

25
Feb 10

Save MovieClip as PNG Example

A couple of guys on Twitter asked me if I would write-up how I generate PNG files from MovieClips in my SWF, at run-time. So I put this example together and am sharing it here.

We use this technique in our virtual world WebbliWorld to save a PNG version of the users avatars after they have customised them. But there are all kinds of other reasons you may need this. My example includes two methods: Saving the PNG locally using the local file system, and Saving the PNG to a web server using AMFPHP.

This technique requires Flash Player 10 and the Adobe AS3 Core Lib.

Here's a very simple example (included in the zip download below):

Essentially it all boils down to this:

1) When you are ready to save your image, create a Bitmap version of your MovieClip.

Actionscript:
  1. private function getMovieClipAsBitmap():Bitmap
  2. {
  3. var bounds:Rectangle = theMovieClip.getBounds(theMovieClip);
  4.  
  5. //    The * 2 is because we're scaling the clip up by a factor of two, to result in a larger PNG
  6. //    If you don't need this, remove it and comment out the m.scale call below
  7. var theBitmap:Bitmap = new Bitmap(new BitmapData(bounds.width * 2, bounds.height * 2, true, 0x0));
  8.  
  9. var m:Matrix = new Matrix(1, 0, 0, 1, -bounds.x, -bounds.y);
  10.  
  11. //    Simply scale the matrix to make a bigger PNG. Here we are doubling it. Comment this out if you don't need it.
  12. m.scale(2, 2);
  13.  
  14. //    Need to crop the PNG to a given size? Pass it a Rectangle as the 5th parameter to draw()
  15. //var r:Rectangle = new Rectangle(0, 0, 50, 40);
  16.  
  17. theBitmap.bitmapData.draw(theMovieClip, m, null, null, null, true);
  18.  
  19. return theBitmap;
  20. }

2) Convert this Bitmap to a ByteArray.

Actionscript:
  1. private function getMovieClipAsByteArrayPNG():ByteArray
  2. {
  3. var data:Bitmap = getMovieClipAsBitmap();
  4.  
  5. var ba:ByteArray = PNGEncoder.encode(data.bitmapData);
  6.  
  7. return ba;
  8. }

3) Send this ByteArray to either the local filesystem, or AMFPHP.

Actionscript:
  1. //    Uses FileReference to save the PNG locally to the hard drive (see "saveToServer" for an alternative)
  2. private function saveLocalPNG(event:MouseEvent):void
  3. {
  4. var ba:ByteArray = getMovieClipAsByteArrayPNG();
  5.  
  6. file.save(ba, "BirdyNamNam.png");
  7. }

Complete source code is included in the zip file including an AMFPHP PHP script for saving on a web server.

Hope someone finds this useful.

Download the Soure Code zip.

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

23
Feb 10

Blockparty 2010 Invtro and the Opensource demo engine evoTinyEngine

Blockparty is an annual demo party held in the US, and 2010's is about to hit in a few months time. As with all good demo parties there is usually an invitation demo to announce it, and to whet the appetite somewhat. This year EvoFlash created this little beauty, and of course it's AS3 to the core:

I've not been to a demo party since 1999, but boy does this make me wish I could be there. Nice one guys, nice one.

There are some lovely effects as you'd expect. Evoflash have been at this for years now, and obviously have a highly streamlined demo pipeline going on. With impressive pre and post render effects; gorgeous blooms, radial blurs, reflections and shadowing. And what's more - they have released it as open source, free for demo coding plebs like me to use!

Called evoTinyEngine it's a small framework that offers you three core elements: Assets, the main Engine and Modifiers. The Modifiers can be stacked up on-top of each other. The Engine handles the construction and destruction of all the Modifiers for you, and there are some really nice things ready to use. Everything is based on 16th note beats, which allows for tight syncing with the audio in your demo.

I haven't dug through the code much yet but I'd be willing to bet there are some insane routines in there, that would be well worth studying for game development as well as demos.

(Now let's see if this blog post kicks off a 20+ comment flame war about "is it really a demo?" yadda yadda ... ;)

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

06
Jan 10

Access LiveDocs locally with Doc v3.0.1

Although the code-insight features of FlashDevelop help a lot, you can't beat a good AS3 reference - and I use Adobe LiveDocs almost exclusively for this. Although I have a Firefox search plugin that gives me quick access to it, I have still always wanted a decent local copy that offered the same benefits my browser does, but faster.

Thanks to the magic of Twitter (cheers @kode80) today I found such a beast in the shape of an AIR app called Doc?

Doc? allows you to view, search and bookmark all your favourite ASDocs. But the biggest feature for me is that on-line docs can be downloaded and stored locally too. This means that the docs for things like Away3D, Flint, Papervision, Adobe CoreLib, TweenMax or anything else that has ASDoc documentation can be added to your local books collection.

Adding a remote ASDoc

Adding new books couldn't be more simple. Just start-up Doc?, click the settings icon in the top-right and select ""Add Remote ASDoc". You'll be asked for some details. Here they are for the Stardust Particles system:

Note: when adding URLs be sure to specify a directory, and don't have the index.html on the end.

Doc? will then download and index the files, storing them locally.

Be advised that on large sets of documentation this can take a while. Indexing the AS3 Language Reference took nearly 10 minutes, and that's on an Intel Quad Core Q9950 @ 2.83GHz with 8GB RAM. Doc? stores the indexes in a local SQLite database.

Once downloaded and indexed the docs are available from the Books menu, ready for easy and fast local searching!

Here you can see I searched for "Radius" specifically in the Stardust book, and am viewing the CollisionRadius page. You can search across all books, highlight results in the text, include title and/or content in the search and even bookmark sections you know you return to often.

The tree view display has icons depending on the style of result - the green "C" circle icon means it's a Class, but it also shows packages, methods, constants, interface and others.

AS3 Language Reference

One of the first things I recommend you do is download the ActionScript3 Language Reference zip from the Adobe web site (5.8MB). Unzip it somewhere and use the "Add Local Book" Settings option to add it. It will still need to be indexed (and this takes a long time), but it's better to grab the zip as it can often have more up to date docs vs. those installed with CS4.

I'm quite sure that this app will save me a lot of time vs. digging through browser bookmarks.

Visit the Doc? web site

All I'd like to see now is this built into FlashDevelop, so F1 searched within Doc? :)

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

18
Dec 09

Happy Christmas Demo

To celebrate a highly productive 2009, the chaps over at Just Add Water game studio asked me to create a Flash Christmas card for them. They provided all assets and wanted it to showcase the successes of 2009, such as the release of Gravity Crash on the PS3. But also to include a few gentle nods towards 2010.

JAW 2009 Christmas Card

The music is by CoLD SToRAGE (he of Wipeout fame) and is from the Gravity Crash game soundtrack, available next year. Also due out is the PSP version. If you've not yet had a chance to try it, then do so!

Click here to see the Christmas card in action.

Check out some monster Gravity Crash videos.

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

16
Dec 09

FlodEx 1.01 – SidMon, Future Composer and BP SoundMod supported

Christian has been busy! FlodPro was already the best Amiga module replay library available for AS3. But not content with that he went and added support for 3 new chip-tune formats: SidMon, Future Composer and BP SoundMod.

As a special Christmas present for those who visit this blog I whipped up this little demo, showcasing 6 tunes, 2 of each newly supported format.

Hit the jump to see the demo in action :)

(more...)

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

30
Oct 09

Flod Beginners Guide now available for easy .mod replay in AS3

Flod Beginners Guide

As the AS3 Soundtracker replay library Flod gains traction, so I have been receiving more emails saying "Help!". Apparently people are having trouble dissecting just the replay sections from FlodPro (the full player interface). So to address this I have created the Beginners Guide to Flod. This download offers you source code that does nothing but replay a mod file. No file browser, no FlodPro, no UI, no hassle!

The guide includes source for both FlexSDK + FlashDevelop users, and also for Flash CS4 (if you really must code on the timeline.) I have included examples for plain vanilla replay, and also replay with the flectrum active:  the funky looking vu-meter seen in the screen shot above. Pick whichever is most useful for your production.

You can download the Beginners Guide from the updated Flod page.

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

01
Oct 09

DarkCubes released – Retro 16-bit demoscene gameyness

Away3D is an awesome 3D library for Flash. Flod is an awesome library for replaying tracker music in Flash. Throw those two things together with my inner-geek upbringing of the 80s and you get DarkCubes. I grew up drip-fed on ST/Amiga demo effects, and this random little 3D game is what I banged out during a couple of lunch breaks and some hours last night.

DarkCubes Credits

I actually wrote DarkCubes back in 2000 on the PC/Windows using DarkBASIC (hence the title of the game). So I had the code and figured it would make a good first experiment for Away3D. A bit of messing around, a bit of swearing, and lots of fiddling later and this tiny puzzler was born.

The logo is from the original PC game and was made by Yann 'Kohai' Parmentier. The music is by Adam Sikorski (DSX of TRSI), 505 of Checkpoint and Toodeloo of the Dead Hackers Society. The rest by yours truly.

Lots of keys do stuff in-game, so have a fiddle! (1-5 changes the music for example, D turns on Debug info, 7-9 change texture, etc. Read the scroller for the full list).

I make no apologies for this beating shitty spec  Netbooks / PCs over the head with a giant CPU grinding axe. Deal with it. It's hardly the end of the world.

DarkCubes In-game

Click here to play (sorry no pre-loader, but it's only 1MB in size)

Enjoy ;)

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

17
Sep 09

Flickr Water Painting Demo

Flickr Water Painting I had an idea for a game where you had to restore colour to the world, by speeding around in a boat and dropping colour bombs onto the greyscale picture below. I thought it'd be fun if the images were pulled in from Flickr dynamically, creating a constant ever-changing sea of levels.

A few hours and a prototype later, and I realise it's not actually going to work after all. There's just no easy way to control what comes back from Flickr - you can't search for images which just have "Big" sizes available, and you can't easily exclude black and white images, which totally ruin the painting part of the game! There are also commercial issues with the Flickr API Keys needed to search and request images. So in the end what was a nice idea in theory, turned out to be a bit crappy in reality.

However I was left a random but pretty prototype. I've removed the boat/gameplay element, so it's just the water painting demo hooked into Flickr.

Lots of pictures come back with "Image not available", so just search again. If it seems to hang for a while after clicking Search, then just search again! Paint with the left mouse button. Sometimes it works right away, and sometimes only on the third or so attempt.

[kml_flashembed publishmethod="dynamic" fversion="10.0.0" movie="http://sandbox.photonstorm.com/painterFlickr.swf" width="640" height="480" targetclass="flashmovie"]

One of my artist friends commented that this made him look at the use of colour in a whole different light. He said that as you start filling the image in, the colours that come through are often totally different to what you'd expect - and when the colour is presented in low volumes it can often look very wrong. As if your brain has substituted the colours for you, and when they don't match it gets confused.

I think there's something quite calming / feng shui about it all personally.

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

15
Sep 09

Creating MovieClips dynamically at run-time using the Linkage Class

linkageI found myself needing to create a MovieClip dynamically at run-time. But all I had was a string representation of its Class, as set in the Linkage properties for the Symbol. In my situation the string had been stored in an xml file. Now you could use a standard switch/case block to do this, checking the string and creating a new MovieClip as required. But in this case there were hundreds of possible things it could have been, and it seemed a very "hacky" way to do it.

So how do you go about creating an actual display object from just the Linkage Class value? Thankfully it's pretty easy, and this new bit of code now sits happily in my "everyday functions" collection!

Edit: Updated to be a little more robust, and removed an un-needed cast:

Actionscript:
  1. public function createMovieClipFromLinkageValue(linkageValue:String):MovieClip
  2. {
  3.     try
  4.     {
  5.         var libraryReference:Class = getDefinitionByName(linkageValue) as Class;
  6.     }
  7.     catch (error:ReferenceError)
  8.     {
  9.         trace(error);
  10.     }
  11.  
  12.     if (libraryReference)
  13.     {
  14.         return new libraryReference();
  15.     }
  16.  
  17.     return new MovieClip;
  18. }
  19.  
  20. var newClip:MovieClip = createMovieClipFromLinkageValue("playerFishMC");

Make sure you have imported flash.utils.getDefinitionByName.

Simply pass this function the Linkage value as entered in the IDE, and it'll spit a MovieClip back at you (providing it was a MovieClip in the first place). I'm sure you can see how to extend it to return a Sprite instead, should you require that.

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

27
Aug 09

Q-BLOCK: Create 3D Pixel Art Online

Aww this is just too much fun! Take a 2D sprite, extrude it into 3D and then shave and tweak as required.

Voila, you've just described Q-BLOCK and created your first piece of 3D pixel art:

Q-BLOCK

It's cool pixel art, in 3D (rotation under you control). And you can edit any model you like, change the colours or just add on new parts.

I had a very similar idea to this years ago, and never bothered to do anything with it. I built a small prototype app in DarkBASIC that would build a 3D model from a 2D sprite. But the Q-BLOCK guys have gone a whole step beyond that, and it rocks.

Check out their blog for some excellent examples of insanely good Q-BLOCKery.

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

16
Aug 09

FlodPro v1.0 Release Now Available with new ProTracker replay interface

I'm pleased to announce that Christian Corti has now released v1.0 of the FlodPro Soundtracker replay package. FlodPro extends upon the work done with Flod and adds a bunch of new features, better support for the harder to replay mods, and a brand new ProTracker style replay interface. You get the full source to this awesome player including the flectrum, so you can now learn how to sync with beat events, use stereo separation, change the volume, loop through the samples and more.

FlodPro v1 Interface

Grab the v1.0 download of FlodPro from the Flod page.

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

09
Aug 09

Proof of Concept – Evoflash 64k intro

evoflash64

EvoFlash have released the first ever 64k intro for Flash Player 10 - "Proof of Concept". It features some new to Flash effects such as a nice looking multi-ridged fractals voxel landscape and bezier curve tweened particles, with a lovely depth of field effect. This is supported by a thumping 36-voice soundtrack. Again remember it's a 64KB SWF with no external media.

The intro is nicely put together, harking back to the yesteryear of demo style. It's a bit "showing off" and self congratulatory, as if they are challenging other Flash demo crews to do better (which might be hard, because there virtually are none!). You are bombarded with the technical facts during the demo, rather than left to enjoy the aesthetics of it. But still, it's great to see and a bit of a benchmark.

Watch it here: http://mediaerror.com/temp/proof_of_concept_by_evoflash/

Anthology of Flash Demo History Video

The coder behind this demo (Jalava) also gave a presentation at the recent Assembly Summer 2009 Convention entitled the "Anthology of Flash Demo History". This is fascinating viewing and you can watch it online here. That link is to the h264 QuickTime MP4 file, which is just under 630MB. Don't let that put you off as  it's well worth the download or stream if your connection can handle it :)

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

05
Aug 09

FlodPro – Awesome Soundtracker Replayer – Sneak Preview

Christian Corti has been hard at work on the Flod Replay library, and Flod Pro incorporates the latest version and a whole lot more, wrapped up in a sexy ProTracker style interface! He gave me permission to show you a demo of it, so have a play with this:

[kml_flashembed publishmethod="dynamic" fversion="10.0.0" movie="http://sandbox.photonstorm.com/flod/FlodProSneakPreview.swf" width="568" height="477" targetclass="flashmovie"]

Get Adobe Flash player

Click "Browse" and select a soundtracker module (.mod file) then hit "Play". Some features work, some don't. The two sliders on the bottom right are for volume and stereo separation. The numbers 1-4 at the top enable/disable the channels. Clicking through the sample names often reveal hidden messages from the composers :)

Just check out the replay quality! It's now playing back a lot of mods better than even ModPlug can, all from AS3 / FP10.

If you don't have any soundtracker modules to load into it then here is a little zip (655KB) with 5 classic Amiga tunes and the FlodPro SWF. Or you can downloads thousands of tunes from sites like Amiga Music Preservation.

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

29
Jul 09

ActionScript Painter 2.0

Well this is just too much fun! Grootlicht have just released ActionScript Painter 2.0. I wasted a whole hour this evening creating images in this wonderful package. Remember Painter? This is similar. But automated. And made in AS3. It's a piece of FP10 wizardary and some of the results are beautiful. Here are a few of my creations:

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

17
Jul 09

Flash Gameboy Emulator Released

gameboyThis is a sweet piece of work indeed! Using the power of the gnuboy Gameboy Emulator combined with Alchemy, fishf has created a fully playable Gameboy Color emulator in Flash.

While my initial tests don't show it to be as fast as the real thing (or the gnuboy emulator it is derived from) it's still a mighty fine piece of work indeed!

So here is Contra: Alien Wars (Gameboy classic version) fully playable in your browser:

Download fgnuboy from here.

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

25
Jun 09

Here are all of my AS3 bookmarks

I use an excellent service called Xmarks which allows me to sync my bookmarks between my home and work copies of Firefox. I can also access them via mobile and a special web page. Part of the service allows me to share my bookmarks out - so I have decided to share my AS3 folder. There are hundreds of bookmarks in here covering everything from physics to PixelBender.

You can access my bookmarks here: http://bookmarks.photonstorm.com

Whenever I add or edit bookmarks this page will update automatically. You can even subscribe to it via RSS if you feel so inclined.

I know it's not as pretty or social as Delicious, but I've never really got on with Deli, Xmarks suits me far better.

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon

03
Jun 09

New Amiga Mod / Soundtracker AS3 Replay Library

In the immortal words of the BudBrains: Check dis out:

Get Adobe Flash player

Now Amiga mod replay has been done in AS3 before, most famously by Joa and Andre in the 8BitBoy Popforge library. And more recently in Flash Mod Player by Badsectoracula (although that is written in haXe it still compiles to AS3). But today I was blown away to receive a tiny zip package from the talented Christian Corti, lead developer at TrinityEffects. It contained a little test swf and a few class files named "flod".

Flod is his native AS3/FP10 Amiga Module playing library. And as you can hear, it plays very well!

It has full support for 15/31 instruments and all the effects up to Protracker 2.3 including Inverse Loop (latest version, not the Funky Repeat), it also supports both Amiga A500 and A1200 filters. It adds less than 10Kb to your SWF file size (excluding the mod itself of course), but more importantly the CPU impact is minimal.

Christian has released it under the Creative Commons Attribution-Share Alike 3 (Unsupported) License, which basically means you are pretty much free to use it however you want, for whatever you want. It requires Flash Player 10, which at it's current adoption rate of 76% and growing, shouldn't be a big issue for anyone these days.

I fully intend to integrate this with the FP10 branch of PixelBlitz. He also has a set of SoundSpectrum classes for generating beautiful VU meters (and also extremely useful if you wish to link the music to in-game events or effects). They are being tidied up at the moment, so hopefully they'll be released soon. I'll post about it here when they are.

Feel free to download the zip file and have a play!

Please comment here to let us both know what you create with it.

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Ping.fm Post to Reddit Post to StumbleUpon