Sunday, June 29, 2008

Another Deflector Example



View online

Download source

It's a combination of LineDeflector and CircleDeflector

Saturday, June 28, 2008

Emitter v1.0.7 - Deflectors

Ladies and gentlemen, may I introduce to you...the Deflectors!!
Yes, now Emitter supports basic deflector simulation.
Currently available deflectors are CircleDeflector and LineDeflector.
Check out the example source for details!!

CircleDeflector


View online

Download source


LineDeflector


View online

Download source


Double LineDeflector


View online

Download source

Emitter v1.0.5 - Bubble Motion



View online

Download source

Voila!! It's bubble motion~
If you're familiar with 3DS Max...
yes, I was inspired by the bubble motion feature of its particle system.

Here's a list of related parameters for you to play with:
(you can toy with them in the example source file)

bubbleMotion: Boolean - whether to use bubble motion
bubbleAmplitude: Number - the amplitude of bubble motion
bubbleAmplitudeVar: Number - amplitude variation
bubbleFrequency: Number - the frequency of bubble motion
bubbleFrequencyVar: Number - frequency variation

Saturday, June 14, 2008

Storm



View online

Download source

Just playing around with LineEmitter and PointGravity.

Velocity Field Overriding



View online

Download source

Emitter v1.0.3 new functionality: Velocity Field Overriding (VFO)
You can now assign a vector field to be the velocity field of the emitter.
All particles' velocities will equal to the vectors corresponding to their coordinates.
Note that while velocityFieldOverride is set to true,
all gravity fields are inactive.

P.S. The velocity field used in the example is a new field class: MotorField.

Friday, June 13, 2008

FD code hint - Lazybone maker



Yep, the code hint in FlashDevelop is THAT HELPFUL.
You type down some characters in the proper order as they are in a variable/function name,
and as you can see, you get your code hint.

In the case shown in the picture above,
to obtain the code hint for finalScaleValue,
you don't have to type in manner such as f-i-n-a-l-s...
You can simply pick some characters and type them down.
In this case, I typed down the initials of each words in the variable name.

In fact, the characters required to trigger the correct code hint need not to be in the exact order.
You can just type down the characters in random order,
and FlashDevelop still gives the correct code hint.
But still, I prefer typing characters in the correct order, since it's friendly to my brain.

Nice job, FlashDevelop.
You've once more made me even lazier.

Wednesday, June 11, 2008

Missiles



View online

Download source

This sure is a hell lot of missiles :)
There's that little delay between the first missile hitting the target and sparks shooting out.
The timing is perfect when viewed locally on your hard drive.
But when viewed online, it's due to the framerate limit by the browser.

Tuesday, June 10, 2008

Emitter 1.0.1 - UniBurst

Now a new functionality is added to Emitter: UniBurst.
It can spawn "ordered" particles instead of random ones.
Note that RectEmitter does not have this new functionality.
Only PointEmitter, LineEmitter, and CircleEmitter can use UniBurst.
They now have a method called uniBurst() available.

Now it's time for some example~


PointEmitter UniBurst


View online

Download source


LineEmitter UniBurst


View online

Download source


CircleEmitter UniBurst


View online

Download source


...and the last has got to be the best :)

Rainbow Ring!!


View online

Download source

Monday, June 9, 2008

Emitter 1.0.0 released



View online

Download source

Finally...the Emitter 1.0.0 API is done!!
And the source for this API is available now.

In addition to the existing LineGravity,
now a new type of gravity is available: PointGravity.
As it's name suggests,
PointGravity creates a point-like gravity source instead of a uniform one.

Don't forget to leave a thought after you've tried it :)
Any suggestions are welcome as well.

Particle Orientation - Wheel Saw



View online


Now it's possible for Emitter to make particles tangent to their velocity.
As you can see, the sparks are oriented to where they're shooting.

Sunday, June 8, 2008

RectEmitter & CircleEmitter



View online




View online


Great, now all four types of Emitter are finished~
These are RectEmitter and CircleEmitter.
Now it's time for further refinement of the Emitter API!

LineEmitter - Sprinkles & sparks



View online


Woohoo~LineEmitter is finished!
Now moving on to RerctEmitter and CircleEmitter!

And I made another demo for PointEmitter.



View online

Saturday, June 7, 2008

Emitter test



View online


Behold! It's the particle effect~
This is Emitter, the API for particle effects I'm currently working on.
It's still in early stage of development actually, but some basic functions are working already :)
In the example above, the Emitter is a PointEmitter.
I'll make other types of emitters, such as LineEmitter, CircleEmitter, RectEmitter...etc

BTW, you can choose your own asset to be used as particles,
which means using prerendered MovieClip animations are also an option.
This, I believe, can give a boost on CPU performance.

Friday, June 6, 2008

More Fader Demo - Circular Fading



View online

Download source

Finally, Fader is now complete.
When the FaderPointer's circular property is set to true.
As the FaderPointer's position increase, to a Fader, its position only goes around and around within a certain interval (Fader.endL, Fader.endR).
Thus, simply keep increasing a FaderPointer's position.
You can create a periodic effect like that of the demo above.

Thursday, June 5, 2008

Fader - crowd control with easing



View online

Download source

Fader is an API for numerical property crowd control.
What's more? It can apply Flash's built-in easing function, so as to create continuous transition effect of specific properties among objects.

Fader registers every object with a specific "position".
And its FaderPointer specifies the "center position" of transition.
Taking the poitners' positions and objects' positions into account, and easing functions as well, Fader modifies the crowd's properties at once, making a better world :)

Well, I'm not even sure if I conveyed Fader's mechanism clearly enough; just download the source and take a look at the .fla source file, you'll get the idea.




View online

Download source

Here's another test for Fader during its early development stage.
In this example I only had Fader take care of the objects' y property.

Sunday, June 1, 2008

RippleBlocks test




View online
Download source


Here's something I made with the aforementioned FlashDevelop-plus-FlexSDK-combo in my last entry.
Geeze, the compilation speed is just so amazingly fast compared to Flash IDE, which I'm pretty used to.

BTW, you'll need Flash Player 10 to watch it.

Super Flash Tool Combo!!



That's right, it's FlashDevelop plus Flex SDK!!
I found that it takes much less time to compile compared to Flash IDE, Flex Build, and even Flex SDK itself!!
And you've got all the juicy code hints from FlashDevelop; it's tasty, trust me.

Here are a few steps to help you setup your development environment:

  1. Download and install the latest FlashDevelop release.

  2. Download and unzip the latest Flex SDK nightly build.

  3. Download the Flash Player 10 beta standalone player.

  4. Run FlashDevelop, and select Tools > Settings.

  5. Select the AS3Context plugin entry on the left, then set the Flex SDK Location as the directory of your unzipped SDK.

  6. Select the FlashViewer plugin entry on the left, the set the External Player Location as your player director, and change External Player Location to External.

  7. Open a new file, select Syntax and change it to AS3.
    Save it as Test.as
    Now type in the code below:

    package {
    import flash.display.*;
    import flash.events.*;

    public class Test extends Sprite {

    public function Test() {

    }
    }
    }

  8. Press ctrl + F8 to compile, and....Wow!! What have we got here?? A Flash application window pops up!!

Okay, now you've got the idea.
Hope you find this Flash tool combo useful :)