Flash CS6 のアニメーションを希望の形式にエクスポートするための jsfl スクリプトを作成しています。ここに問題があります。アニメーションにモーション トゥイーンを使用したため、次のコードを使用して要素の位置、回転、およびスケールを正しく取得できます。ただし、コードは色情報を処理できません。
var element = something;
for( var frameIndex = 0; frameIndex < layer.frames.length; frameIndex++ )
{
timeline.currentFrame = frameIndex;
fl.trace( element.x + ", " + element.y ); // Works
fl.trace( element.scaleX + ", " + element.scaleY ); // Works
fl.trace( element.rotation ); // Works
fl.trace( element.colorAlphaPercent ); // DOES NOT WORK
}
要素のアルファが 0 から 100 まで直線的に変化する簡単なアニメーションを作成しました。すべてのcolorAlphaPercent
値を最初から最後まで出力すると、すべて 0 であることがわかります。さらにテストを行った結果、作成するアニメーションに関係なく、どのフレームでも、colorAlphaPercent
値は常に最初のフレームの値と等しいことがわかりました。colorAlphaAmount
および他のカラー値 (赤、緑、青)でも同じことが起こります。
これを取り除く唯一の方法は、Convert to frame by frame animation
オンザモーション トゥイーンを実行することです。しかし、それは 1 つの要素を多くの要素に分割するため、それらが元々同じ要素であるかどうかはわかりません。
それで...モーショントゥイーン内の要素から色情報を取得する方法を知っている人はいますか? とにかくありがとう :)