たとえば、ムービークリップの背後にある特定の領域にぼかしを追加するにはどうすればいいのでしょうか。そのムービークリップの領域内のすべてをぼかすマスクかもしれません。エリア内のすべてにぼかしを追加するAS3
私はすべてをぼかすにしたくない、AppleはそのメニューとAS3でこれを行うには
たとえば、ムービークリップの背後にある特定の領域にぼかしを追加するにはどうすればいいのでしょうか。そのムービークリップの領域内のすべてをぼかすマスクかもしれません。エリア内のすべてにぼかしを追加するAS3
私はすべてをぼかすにしたくない、AppleはそのメニューとAS3でこれを行うには
唯一の方法をやっているようにムービークリップの背後にあるだけで何:) ソートへのMovieClipの背後にあるものは何でも描くですビットマップを作成し、ビットマップをぼかします。例えば
、あなたのMovieClip
は、半透明の背景を持つある種のモーダルダイアログで、あなたはビットマップ上にその背後にあるステージにあるものは何でもぼかす(MovieClip
内)次のスクリプトを使用することができます言います表面:この図は、「ライブ」ではないことを
// create a bitmap surface to use as a blurred background
var blurData:BitmapData = new BitmapData(width, height, false);
var blur:Bitmap = new Bitmap(blurData);
addChildAt(blur, 0); // put the blur surface behind everything in the movieclip
// this function draws the portion of the stage that's behind the movieclip
// onto the bitmap surface, then blurs it
function drawBlurBehind():void {
// fill the bitmap with the stage color first
blurData.fillRect(blurData.rect, stage.color);
// account for the coordinate offset of the stage and movieclip
var offset:Point = globalToLocal(new Point());
var matrix:Matrix = new Matrix();
matrix.tx = offset.x;
matrix.ty = offset.y;
// hide the movieclip so it doesn't show up in the blurred background
visible = false;
// draw the stage behind the movieclip onto the bitmap
blurData.draw(stage, matrix);
// blur the background bitmap
blurData.applyFilter(blurData, blurData.rect, new Point(), new BlurFilter(25, 25));
// show the movieclip after the background has been blurred
visible = true;
}
注意して任意の時間は何も変更(あなたがムービークリップまたは何それは変更の後ろだを移動)あなたが再描画する必要があります。 ENTER_FRAME
イベントハンドラを使用して、すべてのフレームを継続的に再描画することができます。これは基本的にはライブになりますが、それは比較的高価になります。
また、このスクリプトはムービークリップの「背後」のものではなく、ステージ全体(ムービークリップを除く)を描画してぼかします。したがって、ムービークリップの上に表示され、ムービークリップの後ろにぼやけて表示されないようにするには、ぼやけた背景を描画している間にムービークリップをvisible=false
に設定する必要があります。
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/filters/BlurFilter.html私はあなたのためにフラッシュAPIを探査しました; P –