Flashのマスクでグラデーションを利用する方法
Flash Player8以降で可能です
このように、マスク自体にグラデーションがかかっていて滑らかなアルファ(透明度)を再現したサンプルですが、意外とActionScriptなしでは出来なかったりします。
そういうのに限って需要が高かったりするので、これまた厄介(笑)。
しかしActionScriptとは言っても、それほど難解なものではないので、適用することはできますよ。
ActionScript1.0から利用可能で、Flash Player8以降であれば再生可能なので、世の中の99%以上のネットユーザーに見てもらうことが出来ます(参考:Adobe社公式のレポートページ)。
グラデーション・アルファマスクのサンプルファイル構造
今回作成したサンプルのタイムラインのスクリーンショットです。
スクリプト・サンプル
ポイントはやはりActionScriptのサンプルです。 グラデーション・マスクにしたインスタンスが「myMask」、マスクする対象が「myText」ですね。
今回のサンプルファイルです。 gradation_alpha.zip
myText.cacheAsBitmap = true;
myMask.cacheAsBitmap = true;
myText.setMask(myMask);
//徐々に右に動かす
this.onEnterFrame = function() {
myMask._x += 5;
//右端までいったら移動をやめる
if (myMask._x - myMask._width > Stage.width) {
delete this.onEnterFrame;
}
}
ポイントは各ムービークリップに設定した「cacheAsBitmap」です。 Flashヘルプによると、cacheAsBitmapプロパティは、複雑なベクターデータの描画を高速化するためのプロパティで、ビットマップとしてステージに描画されるようになります。
2010-09-08
2 件のコメント
アルファアニメーションのかかった画像を作りたかったので、非常に参考になりました。
お役に立てて良かったです!