<s:AnimateTransform>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:AnimateTransform Properties id="ID" applyChangesPostLayout="true" applyLocalProjection="false" autoCenterProjection="true" fieldOfView="no default" focalLength="no default" projectionX="0" projectionY="0" removeLocalProjectionWhenComplete="false" />]]>
AnimateTransform と同じように、このエフェクトの一部のプロパティは、実行時に組み合わされる他のすべての変換エフェクトと共有されます。具体的には、投影関係のプロパティ
3D エフェクトは、3D イメージをコンピューターの画面に表示するための 2D 表現にマッピングすることで動作します。投影ポイントは、視野の中心を定義し、ターゲットが 3 次元から画面に投影される方法を制御します。
このプロパティは、
このプロパティは、
このプロパティは、
このプロパティは、
このプロパティは、
このプロパティは、
<s:AnimateTransitionShader>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:AnimateTransitionShader Properties id="ID" bitmapFrom="no default" bitmapTo="no default" shaderByteCode="no default" sahderProperties="no default" />]]>
アニメーション化を行う際には、2 つのビットマップを入力として使用し、
いずれかのビットマップが提供されなかった場合、トランジションでのターゲットの適切なステートから、またはトランジションでエフェクトが実行されていないのであれば直接ターゲットから、その値が動的に決定されます。トランジションでエフェクトが実行されて、そのステート変更中にターゲットオブジェクトが消えるか出現する場合、そのオブジェクトが存在していないときのステートを表すために、完全に透明なビットマップが使用されます。
このエフェクトは、UIComponent または GraphicElement のいずれかであるターゲットに対してのみ実行できます。これは、オブジェクトのビットマップをキャプチャする際に、これらのクラスにのみ存在する、オブジェクトに関する情報が必要であるためです。
エフェクトはビットマップに基づいており、基になるピクセルシェーダープログラムは両方のビットマップが同じサイズであることを前提としているため、エフェクトは両方のビットマップが同じサイズである場合にのみ正しく機能します。したがって、ターゲットオブジェクトのサイズまたは方向が変更されて境界ボックスのサイズが変わると、エフェクトが正しく再生されない可能性があります。
このエフェクトとそのサブクラスは、Flex にある他のエフェクトとは異なり、単独で機能することが前提となっているため、他のエフェクトと同時に実行されると、意図した結果にならない可能性があります。この制約があるのは、前と後の両方のビットマップがエフェクトの開始前にキャプチャされるためです。したがって、これらのビットマップが計算された後に、ターゲットオブジェクトに対して、別のエフェクトによるターゲットのプロパティの変更といった何らかの処理が行われた場合、事前に計算されたビットマップではそれらの変更が反映されず、結果が期待どおりのものにならない可能性があります。これらのビットマップに基づくエフェクトを正しく再生するには、対象となるターゲットオブジェクトにおいてエフェクトを単独で再生する必要があります。
ピクセルシェーダープログラムでは任意の機能と入力を使用できますが、少なくとも 3 つの
このほか、前と後のビットマップイメージを表す
オプションパラメーターとして、
Flash 用のピクセルシェーダープログラムの記述について詳しくは、Pixel Bender Toolkit のドキュメントを参照してください。また、Flex ソースコードの frameworks¥projects¥flex4¥src¥spark¥effects ディレクトリで、CrossFade.pbk ファイルのソースコードを確認することもできます。
[Embed(source="Wipe.pbj", mimeType="application/octet-stream")] private var WipeCodeClass:Class; var shaderEffect = new AnimateTransitionShader(); shaderEffect.shaderByteCode = WipeCodeClass; shaderEffect.shaderProperties = {direction : 1};
<s:Move3D>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:Move3D Properties id="ID" xBy="no default" xFrom="no default" xTo="no default" yBy="no default" yFrom="no default" yTo="no default" zBy="no default" zFrom="no default" zTo="no default" />]]>
すべての AnimateTransform に基づくエフェクトと同様、このエフェクトは UIComponent と GraphicElement のサブクラスでのみ動作します。これは、それらのクラスにある特定の変換関数にこうしたエフェクトが依存しているためです。また、同じターゲット上で並行して実行する複数の変換エフェクトは、単一のエフェクトインスタンスとして実行されます。したがって、変換エフェクトは関係するエフェクトによって設定される変換の中心を共有します。
<s:Wipe>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:Wipe Properties id="ID" direction="right" />]]>
エフェクトによってロードされるピクセルシェーダープログラムは、基になるビットマップエフェクトを実行します。別の Wipe ビヘイビアーを使用する場合は、カスタムのピクセルシェーダープログラムを指定する必要があります。ピクセルシェーダープログラムは、AnimateTransitionShader クラスの
これらのすべてのパラメーターは、エフェクトの再生が開始されるときにシェーダーで設定されます。したがって、エフェクトが正しく機能するためには、パラメーターが存在しており、何らかの適切な役割を果たす必要があります。
<s:CallAction>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:CallAction Properties id="ID" functionName="no default" args="no default" />]]>
<s:AddAction>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:AddAction Properties id="ID" index="-1" position="index" relativeTo="" />]]>
<s:AnimateFilter>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:AnimateFilter Properties id="ID" bitmapFilter="no default" />]]>
このエフェクトと共に使用できるフィルターは、spark.filters パッケージで定義されています。 一般的なフィルターは、DropShadowFilter、GlowFilter、BlurFilter および ShaderFilter です。
アニメーション化するフィルターのプロパティを定義するには、SimpleMotionPath オブジェクトの配列を AnimateFilter エフェクトの
このエフェクトと共に使用できるフィルターは、spark.filters パッケージで定義されています。 一般的なフィルターは、DropShadowFilter、GlowFilter、BlurFilter および ShaderFilter です。
<s:Rotate>
tag
inherits all of the tag attributes of its of its superclass,
and adds the following tag attributes:
<s:Rotate id="ID" angleBy="val" angleFrom="val" angleTo="val" />]]>
角度の値(angleFrom、angleTo または angleBy)の 2 つを指定すると、Flex によって 3 つ目の値が計算されます。3 つの値をすべて指定すると、
すべての AnimateTransform に基づくエフェクトと同様、このエフェクトは UIComponent と GraphicElement のサブクラスでのみ動作します。これは、それらのクラスにある特定の変換関数にこうしたエフェクトが依存しているためです。
<s:Scale3D>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:Scale3D Properties id="ID" scaleXBy="no default" scaleXFrom="no default" scaleXTo="no default" scaleYBy="no default" scaleYFrom="no default" scaleYTo="no default" scaleZBy="no default" scaleZFrom="no default" scaleZTo="no default" />]]>
すべての AnimateTransform に基づくエフェクトと同様、このエフェクトは UIComponent と GraphicElement のサブクラスでのみ動作します。これは、それらのクラスにある特定の変換関数にこうしたエフェクトが依存しているためです。また、同じターゲット上で並行して実行する複数の変換エフェクトは、単一のエフェクトインスタンスとして実行されます。したがって、変換エフェクトは関係するエフェクトによって設定される変換の中心を共有します。
<s:Move>
tag
inherits all of the tag attributes of its of its superclass,
and adds the following tag attributes:
<s:Move id="ID" xBy="val" xFrom="val" xTo="val" yBy="val" yFrom="val" yTo="val" />]]>
すべての変換に基づくエフェクトと同様、このエフェクトは UIComponent と GraphicElement のサブクラスでのみ動作します。
アニメーションの任意の時点において、アニメーションの経過イージング割合が
v = v1 * (1 - f) + v2 * f
ビットマップエフェクトは、エフェクトによってロードされたピクセルシェーダープログラムによって実行されます。
<s:Fade>
tag
inherits the tag attributes of its superclass,
and adds the following tag attributes:
<s:Fade id="ID" alphaFrom="val" alphaTo="val" />]]>
エフェクトによってターゲットコンポーネントが非表示になる場合、デフォルト値はターゲットの
エフェクトによってターゲットコンポーネントが非表示になる場合、デフォルト値は 0.0 です。エフェクトによってターゲットコンポーネントが表示される場合、デフォルト値はターゲットの
<s:Animate>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:Animate Properties id="ID" disableLayout="false" easer="{spark.effects.easing.Sine(.5)}" interpolator="NumberInterpolator" motionPaths="no default" repeatBehavior="loop" />]]>
エフェクトレベルと Keyframe レベルの両方にイージングがある場合があります(Keyframe が MotionPath 構造体で使用される値/時間を保持している場合)。これらのイージングビヘイビアーは相互に作成されます。
<s:Resize>
tag
inherits all of the tag attributes of its superclass,
and adds the following tab attributes:
<s:Resize id="ID" widthFrom="val" heightFrom="val" widthTo="val" heightTo="val" widthBy="val" heightBy="val" />]]>
<s:Scale>
tag
inherits all of the tag attributes of its of its superclass,
and adds the following tag attributes:
<s:Scale id="ID" scaleXBy="val" scaleXFrom="val" scaleXTo="val" scaleYBy="val" scaleYFrom="val" scaleYTo="val" />]]>
すべての AnimateTransform に基づくエフェクトと同様、このエフェクトは UIComponent と GraphicElement のサブクラスでのみ動作します。これは、それらのクラスにある特定の変換関数にこうしたエフェクトが依存しているためです。
<s:RemoveAction>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:RemoveAction Properties id="ID" />]]>
<s:SetAction>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:SetAction Properties id="ID" property="" value="" />]]>
<s:AnimateTransform>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:AnimateTransform Properties id="ID" applyChangesPostLayout="false" autoCenterTransform="false" transformX="0" transformY="0" transformZ="0" />]]>
こうした複数の変換エフェクトの結合は内部的に行われますが、これにより、考慮しなければならない特定の制約が適用されます。
さらに、このエフェクトとそのサブクラスでは、ターゲットに UIComponent 型または GraphicElement 型(あるいはそれらのクラスのサブクラス)を使用する必要があるという制約があります(同様に定義されて実装された
このエフェクトは直接使用するためのものではなく、サブクラスによって使用される共通機能を公開します。変換エフェクトを使用するには、サブクラスのエフェクト(Move、Move3D、Scale、Scale3D、Rotate、Rotate3D)を使用します。
<s:AnimateColor>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:AnimateColor Properties id="ID" colorFrom="no default" colorPropertyName="color" colorTo="no default" />]]>
<s:Rotate3D>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:Rotate3D Properties id="ID" angleXFrom="no default" angleXTo="no default" angleYFrom="no default" angleYTo="no default" angleZFrom="no default" angleZTo="no default" />]]>
すべての AnimateTransform に基づくエフェクトと同様、このエフェクトは UIComponent と GraphicElement のサブクラスでのみ動作します。これは、それらのクラスにある特定の変換関数にこうしたエフェクトが依存しているためです。また、同じターゲット上で並行して実行する複数の変換エフェクトは、単一のエフェクトインスタンスとして実行されます。したがって、変換エフェクトは関係するエフェクトによって設定される変換の中心を共有します。