Previous Blog Next Blog
Prev/Next Blog
by date

AFX and Bottle Rocket Science

AFX and Bottle Rocket Science
Name:Jeff Faust
Date Posted:Jul 04, 2007
Rating:4.9 out of 5
Public:YES
Comments:YES
RSS Feed:GarageGames Blog feedor Subscribe with .
Profile Page:View profile page for Jeff Faust

Blog post


Today is the 4th of July, Independence Day here in the United States, where a big part of the celebration is fireworks. A few weeks ago, with the 4th holiday approaching, Matthew Durante and I decided to see what kind of fireworks effects we could come up with using AFX. Here are the results in movie form and some images:

Fireworks Movie (AVI) <4mb> -- silent
Fireworks Movie (QuickTime) <3.75mb> -- silent

At first we attempted to pull this off in stock AFX 1.0.2. I got some good results attaching particle emitters to multiple debris effects, and Matt made some nice bursts using particles on paths, but we quickly realized that we lacked a good flexible way of moving effects in a ballistic fashion.

Instead of creating a monolithic fireworks effect, we wanted to find a way to harness the kind of physical forces at work in real fireworks and apply them to the movement of any AFX component effect. To do this, Matt had a clever idea for something we call ForceSets. In much the same way that AFX assembles multiple component effects into a bigger compound effect, it also groups individual forces into one or more ForceSets. From there, you can link other AFX effects to specific ForceSets which will then influence their motion in a physical way. You can think of each ForceSet as a separate little universe of forces which can fade in and out over time. Assigning an effect to a ForceSet causes its movement to be steered by the collection of forces in the ForceSet. (We are just using simple linear forces, nothing rotational, and no collision response, but this is enough for decent fireworks.)



With a prototype implementation of ForceSets in place, Matt went off and researched fireworks and designed the fireworks display captured in the movie. What you see here is mostly achieved using stock AFX 1.0.2 with the addition of ForceSets, however, the results are still highly experimental. As a whole the complexity of the fireworks display seriously pushes the software to the limits and beyond.

From here, we'll use what we've learned from this experiment to implement production-ready ForceSets to be included in a future update of AFX. We think the ForceSets will turn out to be very useful in a wide variety of effects beyond fireworks.

Happy 4th of July!


Recent Blog Posts
List:04/17/08 - AFX 1.1.2 for TGEA 1.7.0 Open Beta
12/13/07 - Preview Pics from AFX for TGEA
07/04/07 - AFX and Bottle Rocket Science
12/18/06 - AFX: Off to a Great Start
10/23/06 - AFX Presents: A Little Night Magic...
07/28/06 - AFX Selectrons and Other Goodies
02/20/06 - Arcane-FX: spellcasting effects for TGE (Update)
11/08/05 - Plan for Jeff Faust

Submit ResourceSubmit your own resources!

Johnny Hill   (Jul 04, 2007 at 19:20 GMT)
Wow :)) Now that is amazing!!

David Higgins   (Jul 04, 2007 at 19:21 GMT)
Jeff, very very slick ... I think I'll stay in tonight and just play the demo videos on the big screen ...



BigPapa   (Jul 04, 2007 at 19:35 GMT)
This is so cool! It would be awesome if we could log in to your world and view the fireworks live.

Matthew Durante   (Jul 04, 2007 at 19:51 GMT)
Woohoo!

Incidentally if there are any professional pyrotechnicians here who know a definitive (and thorough) refererence for classifications of professional fireworks, I'd appreciate the link...

Clint Herron   (Jul 04, 2007 at 20:00 GMT)
Very cool. Out of convenience, any chance we could see this on YouTube?

Joshua Dallman   (Jul 04, 2007 at 20:04 GMT)
wow, very impressive effects! now I don't even feel the need to see the real thing later tonight.

Todd Pickens   (Jul 04, 2007 at 20:13 GMT)
Very Nice! Happy 4th to everyone.

Timothy Aste   (Jul 04, 2007 at 20:14 GMT)
Haha, that is so awesome!

Chip Lambert   (Jul 04, 2007 at 20:17 GMT)
Oooooo. Ahhhhhh. :)

Great work, looks awesome. I agree with Josh :)

Barry Gallagher   (Jul 04, 2007 at 20:49 GMT)
Stunning as ever Jeff!

Jermaine Morgan   (Jul 04, 2007 at 20:55 GMT)   Resource Rating: 5
NICE

Josh Williams   (Jul 04, 2007 at 21:10 GMT)
Wow, this is awesome. :)

Justin DuJardin   (Jul 04, 2007 at 21:39 GMT)   Resource Rating: 5
:bugeyes:

Jaw-Dropping as always :)

Dave Young   (Jul 04, 2007 at 23:13 GMT)
Wow!!

Here is a very good classification listing for US fireworks:

en.wikipedia.org/wiki/Firework

Michael Perry   (Jul 04, 2007 at 23:21 GMT)
Holy poop on a stick that is awesome......Ed Johnson is gonna be sooooooo pissed.... =)

Kenneth Holst   (Jul 04, 2007 at 23:41 GMT)
holy cow that is sweet...

you should find a way to put the spinners in there too.. the ones that shoot off of the big explosion in a wiggly fashion

too cool Jeff.. !

Alienforce   (Jul 05, 2007 at 01:30 GMT)
Jeff! That Looks awesome!!!
Happy 4th of july

Edward   (Jul 05, 2007 at 03:32 GMT)
when will we get this awesomeness released to the masses :)
Im geared to see the next big pack and the work you guys have been up too.

Nicholas Bogart   (Jul 05, 2007 at 03:38 GMT)
That was great. I was almost sad I didn't get to see fireworks this year but that made it all better. Great work guys it looks amazing.

Christian S   (Jul 05, 2007 at 07:20 GMT)
He he!

Really nice :)

Chris *Quessir* Sibilski   (Jul 05, 2007 at 08:32 GMT)
Great! Stunning as ever Jeff!

Leslie Young   (Jul 05, 2007 at 09:18 GMT)
that looks sweet!!!

Tom Eastman (Eastbeast314)   (Jul 05, 2007 at 13:33 GMT)
All of your .plans are awesome.
Especially the ones involving explosions and fire!

Anthony Rosenbaum   (Jul 05, 2007 at 15:00 GMT)
WEll done guy!!

Jeff Faust   (Jul 05, 2007 at 17:13 GMT)   Resource Rating: 4
@ Big Papa -- In current form these effects are really overboard, but once we get the tech under control, it should be feasible to set up a live server, distribute a client, and have a bunch of people join us for a live fireworks show. Consider that a working goal, at least.

@ Clint Herron -- I uploaded the video to YouTube and the results were so awful that I immediately deleted it. It wasn't just bad, it looked like this video was a worst-case for YouTube's compression technology. It really could not handle it.

@ Dave Young -- Nice link, but I'm pretty sure that was already Matt's primary source. I think he's mined it for everything valuable and he's looking for something that goes even deeper.

@ Michael Perry -- I hope Ed's not really pissed...

@ Kenneth Holst -- I don't think Matt's finished yet. I think he wants to flush out the fireworks repertoire with a few more types.

@ Edward -- Some of the tech here is brand new and still somewhat wild. The datablock resources used just to represent this short display were enormous. We actually had to devise some scripting techniques to procedurally define datablocks and assemble them into AFX effectrons. I'm pretty sure the individual effect count runs into the several thousands. To get it all under control, we will probably have to extend the datablock system to allow the creation of non-networked datablocks copied or derived from other datablocks. Hopefully the ForceSet feature will make it into the next version of AFX. If Matt continues to develop more species of fireworks, we may consider offering some kind of fireworks pack.

Alex Swanson   (Jul 05, 2007 at 17:47 GMT)   Resource Rating: 5
Very cool Jeff! We have been really excited about the capabilities of AFX internally at GG, and seeing this display just makes it that much more clear how powerful your system is!

Ed Johnson   (Jul 05, 2007 at 21:15 GMT)
Hehe not pissed, Michael's comments were referring to my plans to do a similar 'Fireworks pack' using AFX effects but it never happened, I dropped the ball on that one. Glad to see great minds do indeed think alike, and may I say those effects look mighty fine! Good job!

Andy Hawkins   (Jul 05, 2007 at 23:01 GMT)
Very nice. Will this be a plugin for the AFX pack? I'd love to see if AFX or Torque can do some of the fireballs created for film for space explosions such as in Star Wars. Essentially these are controlled fireworks filmed from underneath with a high speed camera. If someone could do that it would be a great incentive to buy the AFX pack or a stand alone pack.

T Squared   (Jul 06, 2007 at 05:11 GMT)
insane!

Davey Jackson   (Jul 06, 2007 at 06:18 GMT)
Very F'N Cool!

Leroy Frederick   (Jul 06, 2007 at 11:45 GMT)   Resource Rating: 5
Very, very cool! At least Kork looks like he enjoyed himself! :D
Edited on Jul 06, 2007 11:45 GMT

You must be a member and be logged in to either append comments or rate this resource.