試してみよう : 重なり合うアニメーションの作成
Expression Blend のタイムライン構造では、アプリケーションで複数のアニメーション タイムラインを同時に実行できます。次の手順では、蝶が絶え間なく円を描いて飛び、ユーザーがその蝶の上にマウス ポインタを移動すると羽ばたくアニメーションを作成する方法を示します。
重なり合うアニメーションを作成するには
Microsoft Expression Blend で、プロジェクトを開くか、新しいプロジェクトを作成します。詳細については、「新しいドキュメントまたはプロジェクトの作成」を参照してください。
F6 キーを押して、アニメーション ワークスペースに切り替えます (F6 キーにより、[デザイン ワークスペース] と [アニメーション ワークスペース] を切り替えます。[アニメーション ワークスペース] では、[組み合わせ] パネルはアートボードの下に配置されます)。
[オブジェクトとタイムライン] の [ストーリーボードを閉じる]
ボタンをクリックします。
メモ :
[既定] 以外のタイムラインを選択してプロパティを変更すると、そのタイムラインでキーフレームが自動的に記録されます。
ツールボックスの [楕円]
ツールを選択します。アートボードの右側に小さな円を 2 つ描きます。[プロパティ] パネルの [レイアウト] カテゴリで Height と Width プロパティの値を同じにすると、楕円を完全な円にできます。クリッピングが発生する場合は、Margin プロパティを調整します。
ツールボックスの [選択内容]
ツールを選択し、下の図のように 2 つの円を近づけます。
アートボードに描かれた 2 つの円
両方の円を同時に操作するには、[オブジェクトとタイムライン] で 1 つの円を選択し、Ctrl キーを押しながらもう 1 つの円も選択します。選択した円を右クリックして [グループ化設定] を選択し、[グリッド] をクリックします。
2 つの円を含む新しいグリッド パネルが [オブジェクトとタイムライン] に表示されます。
グリッドを右クリックし、[名前変更] を選択して、グリッドの名前を変更します。名前を「Butterfly」に変更します。
円を描いて飛ぶアニメーションを作成するには、パスからアニメーション タイムラインを生成する [モーション パスに変換] ツールを使用できます。アートボード中央に、アートボードの画面の半分の幅を持つ 3 番目の楕円を描きます。
[オブジェクトとタイムライン] で新しい楕円を選択した状態で、[オブジェクト] メニューの [パス] を選択し、[モーション パスに変換] をクリックします。
[モーション パスのターゲットを選択] ダイアログ ボックスが表示されます。
アートボード上のオブジェクトの一覧から [Butterfly] グリッドを選択し、[OK] をクリックします。
新しいタイムラインが作成されます。Expression Blend は新しいタイムラインの記録モードに移行し、[再生]
ボタンをクリックすると、アートボード上のアニメーションを表示できます。ターゲット (Butterfly) は楕円から生成されたモーション パスを移動します。楕円の Fill プロパティがブラシに設定されている場合、Butterfly オブジェクトの部分にブラシの効果が適用されます。
3 番目の楕円は不要になったので削除します。
[オブジェクトとタイムライン] で、Butterfly、RenderTransform、および Translation 要素のノードを展開し、[モーション パス] タイム スパンを表示します。[モーション パス] 要素またはタイム スパンを表すグレーのバーを右クリックし、[繰り返し回数の編集] をクリックします。
[繰り返し編集] ダイアログが表示されます。
タイムラインを無限に繰り返すには、[終了日未定に設定]
ボタンをクリックして、[OK] をクリックします。
このアニメーションを実行すると、繰り返しループします。
[オブジェクトとタイムライン] で、[新規作成]
ボタンをクリックします。
[ストーリーボード リソースの作成] ダイアログ ボックスが表示されます。
[リソース名 (キー)] フィールドに「Flap」という名前を入力し、[OK] をクリックします。
Expression Blend は新しいタイムラインのタイムライン記録モードに移行し、再生ヘッド
が 0 秒のマークに置かれます。記録モード中は、プロパティを設定すると、タイムラインに自動的にキーフレームが記録されます。
0 秒の位置でキーフレームを設定するには、[Butterfly] グリッドを選択し、[キーフレームの記録]
ボタンをクリックします。
タイムラインの [Butterfly] グリッドに対応する行にキーフレーム
が表示されます。
再生ヘッドを 1 秒のマークにドラッグし、別のキーフレームを記録します。
これで、アニメーションの開始位置と終了位置が設定されました。
再生ヘッドを、前の 2 つのキーフレームの間の 0.5 秒のマークにドラッグします。
ツールボックスから [選択内容] ツールを選択し、Alt キーを押しながら、アートボード上で [Butterfly] グリッドの高さを広げ、幅を狭くして、下の図のようにします。
Expression Blend は、Flap アニメーション タイムラインに対して記録モードになっているので、グリッドの変更処理によって、0.5 秒のマークでグリッドの ScaleX および ScaleY プロパティに新しいキーフレームが設定されます。
アートボード上の円のグリッドを広げる
[オブジェクトとタイムライン] で、[ScaleX] および [ScaleY] ノードが表示されるまで [Butterfly] グリッドのノードを展開します。1 つずつノードを選択し、これらを右クリックして [繰り返し回数の編集] を選択し、タイムラインを 2 回実行するように [繰り返し編集] ダイアログに「2」を入力します。次に、[OK] をクリックします。
[再生] ボタンをクリックして、アートボード上のアニメーションをテストします。繰り返しの値は、アートボード上の再生とは関係ありません。アニメーションのタイミングを調整する場合は、グレーのタイム スパン バーのキーフレームを移動できます。
メモ :
タイムライン全体を表示するスペースがない場合は、[タイムライン ズーム] テキスト ボックスを使用して、タイムラインをズーム アウトできます。パネルの幅を変更して、[オブジェクトとタイムライン] パネルの他の項目を表示することもできます。
次に、アニメーションのトリガを設定します。ドキュメントのルートで新しいタイムラインを作成すると、アプリケーションの起動時に発生する Window.Loaded イベントの [トリガ] の下に既定のイベント トリガが追加されます。
円を描くタイムラインにはそのトリガを使用し、Flap タイムラインに新しいトリガを追加します。
[トリガ] で [Window.Loaded] トリガを選択します。トリガのアクションが、[Window.Loaded の発生時] の下に表示されます。[Flap.Begin] の横にあるマイナス記号をクリックし、そのアクションを削除します。
これで、アプリケーションが起動すると円を描くアニメーションは開始しますが、Flap アニメーションは開始しません。
メモ :
[アクティブな際のプロパティ] が表示されない場合は、[トリガ] ウィンドウのサイズを調整する必要があります。サイズを調整するには、ウィンドウの境界とウィンドウ内の境界をクリックしてからドラッグします。
Window.Loaded トリガから Flap アニメーションを削除
Flap アニメーションにトリガを追加するには、[トリガ] の [イベント トリガの追加]
ボタンをクリックします。
新しい [Window.Loaded] トリガが作成されます。
[オブジェクトとタイムライン] で Butterfly グリッド要素を選択し、[トリガ] のドロップダウン ボックスを使用して、新しいトリガを [Window.Loaded の発生時] から [Butterly.MouseEnter の発生時] に変更します。
[Butterfly.MouseEnter の発生時] の横にある [新しいアクションの追加]
ボタンをクリックし、ドロップダウン ボックスを使用して、新しいアクションを Flap.Begin に変更します。
これで、ユーザーがマウス カーソルを蝶の上に置くと、Flap アニメーション タイムラインが開始します。
グリッドの MouseEnter イベントに新しいトリガを作成
作成したアニメーション タイムラインとイベント トリガの動作を確認するには、[プロジェクト] メニューの [プロジェクトのテスト] をクリックして、シーンをテストします。
メモ :
円を描くアニメーションの動きが早すぎる場合は、タイムラインの実行時間を調整できます。[オブジェクトとタイムライン] で、ドロップダウン ボックスからモーション パス タイムラインを選択し、グリッドのノードを順に展開して [モーション パス] ノードを表示します。次に、グレーのタイム スパン バーの右端をつかんで右にドラッグし、終了時間を延ばします。
円を描くタイムラインを削除し、新しいタイムラインを作成して、手順 8 (楕円の描画) から開始して、モーション パスを作成することもできます(手順 8 で始める前に新しいタイムラインを作成しない場合、Flap アニメーション タイムラインに円を描くアニメーションが追加されます)。