Fuse Kitと複数MCの同時Tweenのお話
Fuse Kitで同時にTweenさせるにはグループ化させる必要があります。
で、これが複数のMCの場合でそのMCの個数などが動的に変化する場合、
どう記述すればいいのかわからない。
一応、下記のようにすれば動くのですが、Fuseのほうでエラー吐き出してるのが気持ち悪くてどうにかしたい。
var f = Fuse.open(); Fuse.openGroup(); // たぶん、このforでエラー出てる for(var i = 0; i < photoAry.length; i++) { targetMC[mcAry[i]].tween("_x", -100, 2, motionType); } Fuse.closeGroup(); Fuse.closeAndStart();
AS3が出てからもうかなり経過しますが、やっぱりまだまだAS2の出番は多く、Fuse Kitのお世話になることが多いのですがその度に悩んでる気がする。
まぁ、Tweenerでできちゃうんですが、負けた気がするんです。
コメント
ひろゆき
Fuseクラスを使ってみては、どうでしょうか?
http://www.project-nya.jp/modules/weblog/details.php?blog_id=591
ヒロ
このエントリーの場合、複数のMCを同時に動かしているのですが、Fuseクラスのpushメソッドを利用して複数MCの同時Tweenはグループ化してやらないといけないと思ってるんですが、違いますでしょうか?
グループ化のためには「[]」で囲んでやらないといけないので、forでまわせないと思っているのですが、もしかしたら他に方法があるのでしょうか。
WebMaster改め突然、ヒロで申し訳ありません。
ひろゆき
import com.mosesSupposes.fuse.*;
ZigoEngine.simpleSetup(Shortcuts, PennerEasing, Fuse);
var fuse:Fuse = new Fuse();
var mcList:Array = [mc1, mc2, mc3];
var tweenList:Array = new Array();
for(var n = 0; n < mcList.length; n++) {
var obj:Object = {target: mcList[n], _x: “-100″, seconds: 2, ease: “easeOutQuad”};
tweenList.push(obj);
}
fuse.push(tweenList);
fuse.start();
こんな感じでどうでしょ?
ひろゆき
http://www.project-nya.jp/modules/weblog/details.php?blog_id=590
よく考えると、グループ化する必要ないですね。
import com.mosesSupposes.fuse.*;
ZigoEngine.simpleSetup(Shortcuts, PennerEasing);
var mcList:Array = [mc1, mc2, mc3];
for(var n = 0; n < mcList.length; n++) {
mcList[n].tween(”_x”, -100, 2, “easeOutQuad”);
}
これでも、行けるでしょうか。
ヒロ
サンプルコードありがとうございます。
さすが、よく理解されてますね。
どちらのコードでも出来ました。
最初のグループ化するコードは「あー、そうか!」と思いつつ、過去に同じやり方で一度やっていたのを思い出し・・・
TweenerがフィルタなどのTweenをサポートしたこともあって、最近ではAS2でもTweener使うことが多くなっています。
Fuse KitはTweenerと違ってTweenさせる方法が多いので、利用のたびに頭が混乱してます。
何か目的別に最適な使い方とかあるのかもしれませんが、難しいです。
ひろゆき
Fuse.openGroup(); は、面倒なので、ほとんど使いませんね。
var fuse:Fuse = new Fuse();
fuse.push({…});
これで、ほとんどが動かせるので、こっちを使いますね。
ヒロ
確かに、Fuse.openGroup();は面倒ですね。
自分もグループ化させるとき以外はひろゆきさんと同じくfuse.push使ってました。
ひろゆきさんのサイトのほうでも解説されている
http://www.project-nya.jp/modules/weblog/details.php?blog_id=590
の~To系のメソッドは一度も使ったことがないです。
Fuse Kitを利用するときには必ずひろゆきさんのサイトのお世話になっており、今回のことも含めて大変感謝しております。
ひろゆき
FuseKitは、若干重い感じがするので、
実は、自作クラスを使っていたりします。(笑)
http://www.project-nya.jp/modules/weblog/details.php?blog_id=694