Foss: Main
Here i will post all my filter realted codes. i only have one right now because i'm still improving on my others.
first off
Directional Blur!!!
this took shit loads of time to learn. but since this is a FOSS thread and not an AS thread, i really dont have to explain it. But basically, it takes the movieClip you what to directionally blur, draws a bitmap version of it, rotates it using the matrix rotation and translation formula(that i just learned about in school :D) it then applies a blur filter to it, only in the horizontal direction thus to keep it linear looking. then it rotates the movieClip containing the bitmap in the desired angle so that the bitmaps rotation cancels out and becomes 0, but the blur filter is rotated still.
and if your wondering why i had to create a bitMap of the object it's because vector'd drawing's cant rotate theyre filters. even if the filters are on a movieclip inside of it.
The Code
put this code on the first frame of your movie
import flash.geom.*;
import flash.display.BitmapData;
import flash.filters.BlurFilter;
_root.myBlurPoint = new Point(0, 0);
MovieClip.prototype.directionalBlur = function(distance, angle, qual) {
this._visible = false;
wide = (distance * qual) + this._width;
high = (distance * qual) + this._height;
myBitmapData = new BitmapData(wide, high, true, 0);
Mc = _root[this._name + "Mc"];
_root.createEmptyMovieClip(this._name + "Mc", 1);
Mc.createEmptyMovieClip("image", 5);
Mc.image.attachBitmap(myBitmapData, 2, false, true);
Mc.image._x = wide / -2;
Mc.image._y = high / -2;
myMatrix = new Matrix();
myBlurRect = myBitmapData.rectangle;
myBlurFilter = new BlurFilter(distance, 0, qual);
Mc._x = this._x;
Mc._y = this._y;
myMatrix.identity();
myMatrix.rotate(-angle / 180 * Math.PI);
myMatrix.translate(wide / 2, high / 2);
myBitmapData.fillRect(myBitmapData.rectang
le, 0);
myBitmapData.draw(this, myMatrix);
myBitmapData.applyFilter(myBitmapData, myBlurRect, _root.myBlurPoint, myBlurFilter);
Mc._rotation = angle;
};
and to call it just put this on the movieclip you wish to blur
this.directionalBlur(#, #, #);
//here is what the #'s represent, in order; distance, angle, quality