« クラブきっずの記事に対してアクセスが « » Flashで逆光効果フィルター。一般公開 ― 細かい設定 »

2007年02月08日

 Flashで逆光効果フィルター。一般公開このエントリーを含むはてなブックマーク

逆光フィルターを簡単に使えるようにASクラスにまとめて公開しました。(まだβ段階ですが)
少しのAS知識で設置することができます。
前回より軽量化に成功しています。

(※クリックでムービーを見る)

素材をカギさんにいただきました。
オリジナルはこのサイトで見れます。

一応Backlit効果という名前がついています。
背景からの逆光が漏れ出す様子や、明るい部分と暗い部分の境界の色が違う現象、カメラに自然光が乱反射する様子を擬似的に再現して、全体的にやわらかい印象を出します。

仕組みとしては対象のムービークリップの透明な部分だけを抜き出し、加算で白いブラーやグローをつけています。
よって、
・対象はムービークリップでなければならない
・全体に半透明の絵がかかっている場合、上手く出ない場合がある
・サイズやムービークリップの状態によっては著しく重い
といった欠点があります。
ただし、品質を下げて軽量化するための機能もつけてあるので、上手く利用してください。

今回軽量化に成功し、前回のエジさんのバージョンも軽くなっています。

ソース

ソースはこちらになります (lzh)

※使用にあたって、ソース内にはカギさんとエジエレキさんの作品ソースが含まれており、この2つにおいては転載などを完全に禁止させていただきます。
※ActionScriptの使用については下記の使用のルールを読んでください。

使い方

対象はFlash8以上です。(basicも可)
また、ある程度はASが書けることが前提です。
(ムービークリップとか、stop()がわかるくらい)

準備

まず、ソースの中のsippoフォルダを、使用したい.flaと同じフォルダへコピーします。

対象はムービークリップでなければいけないので、エフェクトをかけたい絵をムービークリップにします。(複数でもOKですが、なるべくまとめると軽いです)
(特定のアニメーション丸ごとムービークリップにしたい場合、フレームのコピーを使うと便利です。)
例えば、背景と人では、人だけをムービークリップにすれば、人の後ろから光が来るように見えます。
とりあえずムービークリップへの変換は地味に面倒だったりするので、最初は既存のムービーで試すよりは新しいムービーで適当に実験するほうがいいでしょう。

次に、エフェクトを乗せるためのムービークリップを用意します。
中身が空のムービークリップを、エフェクトをつけたいムービークリップと同じタイムラインの、上のレイヤーに(0, 0)の位置に置けばOKです。(このムービークリップで重なり順などを調節できます)
面倒な場合は作らなくても_rootで代用できるんですが、一応作っておいたほうが便利です。

名称付け

対象のムービークリップと、効果を載せるムービークリップに名前をつけます。
プロパティパネルの<インスタンス名>とあるところです。

適当でいいですが、targetMcとか、effectMcとかつけましょう。
複数ある場合は当然違う名前をつけます。
後で使うので覚えておいてください。

AS設置

次のASを、エフェクトを始めたいフレームに書きます。

import sippo.effect.*;
var baklit:Backlit = new BacklitGlow([対象のMC], エフェクトを乗せるMC, サイズ, アルファ);

もしくは

import sippo.effect.*;
var baklit:Backlit = new BacklitBlur([対象のMC], エフェクトを乗せるMC, サイズ, アルファ);

上の方は、グローを使ったフィルター、下のはブラーを使ったフィルターです。
グローのほうが調節が簡単で、軽いですが、ブラーのほうが自然に近い結果が出ます。

日本語のところをそれぞれの値に直してください。
MCというのはさっき設定した名前です。
対象が複数ある場合は
[対象のMC1, 対象のMC2, 対象のMC3]
という感じです。
(両側の「[ ]」は必要なのでそのままつけてください。)

サイズは光の漏れる量(大きいほど重くなります。)
アルファは光の透明度(1~100)

設定例

import sippo.effect.*;
var baklit:Backlit = new BacklitGlow([mainMc], overMc, 32, 30);

次に解除命令です。
下のASを、エフェクトを終わりたいフレームに書きます。

baklit.del();

この命令は必ず書いてください。
じゃないとメモリーを食いまくることがあります。

軽量化など細かい設定

品質などの細かい設定をすることができます、が、とても長いので別エントリーに書きました。
特に重いときはこの設定で軽くすることができるので、参考にしてください。

しっぽのブログ: Flashで逆光効果フィルター。一般公開 ― 細かい設定

使用のルール

個人使用は原則自由ですが、同時に責任を負いません。
ある程度は対応しますが、基本的にしっぽは使用に関する質問や損害の対処には応じる責任が無いということを了承してください。
ASの改変など自由にしてください。
より良いASができたら公開されても結構です。
商用利用は事前承諾を必要とします。
リンクを貼っていただくことはとても嬉しいですが、特に強制はしません。
リンクを貼る場合はこのページか、しっぽのところトップへどうぞ。