- ベストアンサー
マスクにグラデーションをかけるには???
あるテキストにマスクの処理を施している最中なのですが、 テキストが中心からだんだん端のほうの文までグラデーションをかけながら表示させるにはどうしたらいいんでしょうか? 中心から端にかけて浮き上がってくるみたいな感じです。 すでに表示されている部分は色は変わらず、 表示される端のほうが背景と透明化(?)しているみたいな感じです。 ただ単にテキストが中心から端のほうまで表示されるのはきれいじゃなかったです。 これはどうやったらいいんでしょうか><
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
#1 です。 Flash 8 以上では,#1の方法以外に別の方法があることに最近気づきました。 ご使用の Flash のバージョンを書かれていませんが, Flash 8 (Basic 8 でもOK)以上に限定すると, グラデーションマスクを簡単にかけることができます。 ---用意するもの---------------------- ・マスク用グラデーション塗り入りムービークリップ ・テキスト入りムービークリップ ・背景(JPEG でも シェイプ画でも何でも可) ----------------------------------- ◎マスク用グラデーション塗り入りムービークリップの作成 まず,ステージ上に, 黒アルファ100%→黒アルファ100%→黒アルファ0% の横に細長い長方形のグラデーション塗りを描きます。 ↓アルファ100 ↓アルファ100 ↓アルファ0 ■■■■■■■■■回■回回□回□□ ■■■■■■■■■回■回回□回□□ | グラデーション 次に, 横に細長い長方形のグラデーション塗りを選択して, ムービークリップに変換し,インスタンス名を付けます。 この説明では, 「myMask」 というインスタンス名を付けたとしておきます。 ◎テキスト入りムービークリップの作成 上で作った 「myMask」 の下に新しいレイヤーを追加して, そのレイヤーのステージ上に何かテキストを書きます。 例えば『あおうえお』を書きます。 その『あおうえお』を選択してムービークリップに変換し, そのムービークリップにインスタンス名を付けます。 この説明では, 「myText」 というインスタンス名を付けたとしておきます。 ◎背景の用意 上で作った「myText」 の下に新しいレイヤーを追加して, そのレイヤーのステージ上に何か背景を置くか描くかします。 ◎スクリプト 上で作った 「myMask」 の "上" に新しいレイヤーを追加して, そのレイヤーのフレームにスクリプトを書きます。 □ レイヤー 筆・・|○| ←スクリプト □ レイヤー 筆・・|●| ←「myMask」 □ レイヤー 筆・・|●| ←「myText」 □ レイヤー 筆・・|●| ←背景 フレーム の スクリプト --------------------------------------- // 「myMask」のビットマップキャッシュを有効にする myMask.cacheAsBitmap = true; // 「myText」のビットマップキャッシュを有効にする myText.cacheAsBitmap = true; // 「myText」 に 「myMask」 のマスクをかける myText.setMask(myMask); --------------------------------------- 後は, マスク 「myMask」を「myText」の上でモーショントゥイーンさせてもらえばOKです。 □ レイヤー 筆・・|○ []| ←スクリプト □ レイヤー 筆・・|●>---->[]|●| ←「myMask」 □ レイヤー 筆・・|●/////////[]| ←「myText」 □ レイヤー 筆・・|●/////////[]| ←背景 ※上記スクリプトのように マスク側も,マスクをかけられる側も, ビットマップキャッシュを有効にする必要があります。 ※レイヤーの設定でマスクをかけることはできません。 必ず setMask でマスクをかけるようにします。 ※上のようにして作成したものは, Flash Player 8 以上のみで正常に動作します。 ※Flash Playar 7 と 6 のバージョンでは, グラデーションがかからないのは当然のこと, マスク自体の効果もなくなります。 (文字はずっと表示されっぱなしになります) ※Flash Playar 5 以下のバージョンでは, グラデーションがかからないのは当然のこと, マスクも文字も全く表示されなくなります。 ※Flash Player 8 以上は, Windows 95 以下,MacOS9.x 以下には, インストールすることができません。 Flashドキュメンテーション 「アルファチャンネルマスクについて」 http://livedocs.macromedia.com/flash/8_jp/main/00001410.html 「ムービークリップのキャッシュ」 http://livedocs.macromedia.com/flash/8_jp/main/00001406.html
その他の回答 (1)
マスクにはグラデーションはかけられません。 また,文字のアルファ変化も 1文字1文字別のムービークリップに入れて, 1文字ずつのムービークリップのアルファを変化させるような面倒なことをしなければなりません。 ですから, 簡易的には次のURLのようにするのが良いと思いますよ。 フェードインする文字 FLASHRAVE - FLASH 講座 - http://flashrave.org/anima/fade_in/index.html