2010年3月13日土曜日

Flash CS4  ActionScript3.0 で複数のマスクオブジェクトを動かしてみる。

(FlashCS4)複数のアニメーションマスクが適用できない

で記したようにFlashのタイムラインに複数のマスクオブジェクトを配置してアニメーションさせた場合、ひとつしかマスクオブジェクトとして有効にならない。

だもんで、やっぱActionScriptで記述するしかないよな、と作ってみたのが下のサンプル。
楕円部分をドラッグすると、動いて向こう側が見えます。

だだし、以下のような問題が発生したので、マウスイベントを検出するダミーの楕円movieクリップを間にかますという、ちょっと遠回りな手法をとった。
そのため、動作はするけど、若干見苦しい挙動をする。
(実験用ならいいけど、売り物にはならない)
もう少し、研究する必要がありますね。

問題は
①マスクオブジェクトは(少なくとも単純な方法では)イベントリスナが効かない?
②ただし、座標のセットは出来る模様

ということ。

また、マスクオブジェクトはFlashの仕様でどうもマスク用フレームには1オブジェクトしか置けない模様。

この点については、複数のオブジェクト(下のサンプルなら2つの楕円ムービークリップ)をFlashのステージ上で複数選択して、(一つの)シンボルに変換してから、ActionScriptで個別の楕円MovieClipへのターゲットパスを指定してやれば回避できた。


0 件のコメント:

コメントを投稿