1

私たちのアニメーターは、50 以上のレイヤー、モーション トゥイーン、3D トゥイーンを含む非常に複雑なムービークリップを Adob​​e Flash CS5 で作成しました。残念ながら、彼女はすべての要素を右に 680 ピクセル、下に 400 ピクセル配置しすぎました。

アニメーションを中断することなく、すべてのレイヤーのすべての要素を移動する方法を見つけようとしています。「MoveRegpoint」という JSFL スクリプトを試してみましたが、Motion Tween キーフレーム (ひし形) を適切に処理できません。だから今、私はJSFLを自分で書こうとしています。

フレームがモーション トゥイーンかどうか、フレームがキーフレームかどうかを判断するにはどうすればよいですか? 現在のスクリプトを参照してください。

// get the selected Element
var vElement = fl.getDocumentDOM().selection[0];

// get the Timeline of the Element
var vTimeline = vElement.libraryItem.timeline;

// loop over the Timeline's Layers
var vLayersLength = vTimeline.layers.length;
for (var i=0; i<vLayersLength; ++i) {
    var vLayer = vTimeline.layers[i];

    // loop over each Layer's Frames
    var vFramesLength = vLayer.frames.length;
    for (var j=0; j<vFramesLength; ++j) {
        var vFrame = vLayer.frames[j];

        if(vFrame.isMotionObject()) {
            // DOES NOT WORK, startFrame is always 0
            if(vFrame.startFrame == j) {}
        }
    }    
}

明確にするために:フレーム 0 でモーション トゥイーンが開始されるため、 frame.startFrameは常に 0 です。モーションを定義するフレーム 12、27、および 49 にひし形があります。フレームにひし形が含まれているかどうかを知り、これらのひし形のデータにアクセスしたいと考えています。

ポール

4

2 に答える 2

1

New Anim Clip と呼ばれる、これを完全に行うフラッシュ拡張機能があります。Toon Monkey で見つけることができます: http://toonmonkey.com/extensions.html

私はいつも次のように使用しています: - 新しいクリップに入れたいすべてのフレームを (複数のレイヤー上で) 選択し、タイムラインの右クリック メニューから [フレームをカット] をクリックします - NewAnimClip コマンドをクリックします - 新しいシンボルとレイヤーに名前を付けます何か説明的な - 新しいクリップの最初のフレームをクリックして、フレームを貼り付けます

出来上がり!元のタイムラインに合わせて、サイズと位置を変更できる新しいクリップ!

于 2012-10-31T12:41:34.760 に答える