ATF Timeline Editor Sample_j - kaisu1986/ATF GitHub Wiki

Table of Contents

説明

TimelineEditor は、比較的機能豊富なタイムラインエディタで、そのコンポーネントは製品用ツールに実際に使用されています。

このサンプルの内容は、Timeline Editor Programming Discussion を参照してください。

TimelineEditor が示す ATF の機能

  • MEF (Managed Extensibility Framework) を使用して、オプションのコンポーネントを使用するアプリケーションをまとめる。
  • CommandService、SettingsService、StatusService、および ControlHostService を含むアプリケーションシェルフレームワークの使用。
  • TimelineControl、TimelineRenderer、およびすべてのタイムラインマニピュレータ (MoveManipulator、ScaleManipulator、ScrubberManipulator、 SelectionManipulator、SnapManipulator、および SplitManipulator) の使用。
  • TimelineControl を変更せずに新機能を TimelineControl に追加または削除することを可能にするマニピュレータのアーキテクチャ。
  • IPaletteService を使用して、タイムラインオブジェクトタイプのリストを表示する。オブジェクトは、新しいタイムラインオブジェクトをインスタンス化するために、パレットからドキュメントにドラッグ可能。
  • 2 つのプロパティエディタ、PropertyEditor と GridPropertyEditor を使用。
  • リファレンスドキュメントがメインドキュメントのタブ内に子ドキュメントとして表示されるサブドキュメントのサポートの実装。
  • 同時に開いている複数のドキュメント。
  • ドキュメント内およびドキュメント間でのコピーと貼り付け。

TimelineEditor の実行

  1. ATF\Samples\TimelineEditor\bin\Release にある TimelineEditor.exe をダブルクリックします。
  2. [TimelineEditor] ウィンドウが表示されます。
TimelineEditor には以下のペインがあります。
  • [Palette]: [Timelines] パーツパレットには次の要素があります。
    • [Marker]: アニメーションが 6 分経過後に世界が破滅するなどのグローバルイベントをマークします。マーカーはグローバルに適用され、タイムラインドキュメントに属します。マーカーは、アニメーションのトラックやグループには属しません。マーカーはトラック全体に適用されます。
    • [Group]: アニメーションのトラックを整理できるようにします。グループには 1 つ以上のトラックが含まれます。トラックのグループの非表示や削除、グループの展開や折りたたみ、グループ間でのトラックの移動が可能です。グループを折りたたむと、そのグループのトラックは選択できなくなります。グループはネストできません。
    • [Track]: アニメーショントラックです。トラックは、アニメーションが正しい順番で再生されるようにする映像ツールです。各トラックには、間隔とキーが含まれます。トラックをグループにドラッグアンドドロップしたり、トラックの名前を変更したりできます。
    • [Interval]:明確な開始と終了が決まった時間的な間隔を示します。
    • [Key]: 明確な開始と継続時間が 0 である時間上の一点を示します。キーはトラックに属します。
    • [Reference]: 別のタイムラインドキュメントへの参照と、そのリファレンスタイムラインをオフセットする開始時間を含みます。
  • [Property]: 選択した要素のプロパティをリストコントロールで編集します。
  • [Grid]: 選択した要素のプロパティをグリッドコントロールで編集します。
  • [Output]:診断を表示します (オプション)。
  • キャンバス: タイムラインを定義、表示、および編集する場所です。
ツールバーに含まれるボタンは、ファイル管理用が、保存、名前を付けて保存、すべて保存、タイムラインドキュメントの新規作成、既存のタイムラインドキュメントを開く、印刷、ページ設定、印刷プレビューで、キャンバス表示用が、選択をキャンバスの中央に配置するパンおよびズーム、編集用が、切り取り、コピー、貼り付け、削除、元に戻す/やり直しです。

メニューバーには次の項目があります。

  • [File]: [New] (タイムラインの新規作成)、[Open] (既存のタイムラインを開く)、[Save] (保存)、[Save] (名前を付けて保存)、[Save] (すべて保存)、[Close] (現在のタイムラインを閉じる)、[Page] (ページ設定)、[Print] (印刷プレビュー)、[Print] (印刷)、[Recent] (最近使用したファイル) および [Exit] (Timeline Editor の終了)。
  • [Edit]: 標準の編集機能 ([Undo]/[Redo] (元に戻す/やり直し)、[Cut] (切り取り)、[Copy] (コピー)、[Paste] (貼り付け)、[Delete] (削除)、[Select]/[Deselect] (すべて選択/選択解除)、[Invert] (選択対象を反転する)) のほかに、次の項目があります。
    • [Interval]: 選択済みの間隔が、次にクリックした箇所で分割されます。
    • [Keyboard] (キーボードショートカット): [Customize] ウィンドウを使用して、キーボードショートカットを設定します。
    • [Load] (設定の読み込み/保存): [Load] ウィンドウを使用して、現在の TimelineEditor の設定を保存するか、またはファイルからアプリケーション設定を読み込みます。
    • [Preferences] (設定): コマンドアイコンのサイズや最後にアクティブになったドキュメントの自動読み込みなど、アプリケーションやドキュメントを設定します。
  • [View] > [Fit]: 現在の選択がキャンバス上に表示されるようにします。
  • [Window]: ペインを選択/選択解除したり、複数のドキュメントペインを整理します。

TimelineEditor の使用法

TimelineEditor を開くと空のキャンバスが表示されます。 [File] > [New] を選択するか、ボタンをクリックして新しいタイムラインドキュメントを作成します。または、[File] > [Open] を選択するか、ボタンをクリックして既存のタイムラインドキュメントを開きます。[Palette] から使用する要素をキャンバスにドラッグします。各ペインのタブをクリックして、要素プロパティを表示し編集します。

タイムラインリファレンスドキュメントの使用

Reference オブジェクトを [Palette] からキャンバスにドラッグして、現在のタイムラインにほかのタイムラインドキュメントを含めることができます。タイムラインリファレンスドキュメントは、タイムラインサブドキュメントとも呼ばれます。 タイムラインサブドキュメントには、追加のタイムラインサブドキュメントを含めることができます。 タイムラインドキュメントを参照するときに、現在のタイムラインドキュメントに読み込まれます。

現在のタイムラインドキュメント内にあるタイムラインサブドキュメントファイルは編集できません。 グループの展開と折りたたみ同様に、現在のタイムラインドキュメントにあるタイムラインサブドキュメントの表示を展開または折りたたむことができます。 タイムラインサブドキュメントと現在のタイムラインを同時に開き、キャンバスに並べて表示して、変更できます。使用しながら両ドキュメントの変更を確認でき、ドキュメントの同期が保たれます。 タイムラインサブドキュメントには、キーや間隔のように明確な開始点があります。 タイムラインサブドキュメント上の「0」時間の位置がひし形のアイコンにより示されます。 タイムラインリファレンスを [Palette] からキャンバスにドラッグすると、サーモン色のラインが表示されます。タイムラインリファレンスファイルを設定するには、次の手順を実行します。

  1. リファレンスをクリックして選択します。タイムラインリファレンスのプロパティが [Property] と [Grid] ペインに表示されます。
  2. [File] プロパティをクリックして、タイムラインファイルにブラウズします。

スクラバーの使用

スクラバーは垂直の黒い線で、タイムラインを使用しているときに表示されます。スクラバーはドキュメントの一部ではありません。スクラバーを移動すると発生するイベントがあり、これに応じてアプリケーションが何らかの動作を実行します。たとえば、タイムラインエディタがゲームに接続している場合、スクラバーを移動するとゲーム内の時間が変化します。アプリケーションに任意の動作をさせることができます。つまり基本的に「何か新しくなるように現在時刻を設定する」ということです。 たとえば、再生ボタンおよび一時停止ボタンと併用してスクラバーを使用できます。

ツールの使用

パンとズーム

Alt キーと左マウスボタンおよび Alt キーと右マウスボタンを使って、キャンバス上のタイムライン表示をパンまたはズームできます。

Interval Splitting (間隔分割) モード

間隔分割モードの使用法を次に示します。

  1. 間隔を選択します。
  2. 「S」 (「S」のみ) を入力します。間隔が分割されます。複数の間隔を分割できます。
[Edit] > [Interval] でもこの動作を実行できます。

拡大縮小

拡大縮小には、次の 2 つのタイプがあります。

  • 選択された間隔の左または右の枠線をドラッグします。同じイベントを示す間隔が複数ある場合、選択した間隔の左端または右端をドラッグできます。選択した間隔は同じサイズだけ拡大縮小されます。同じ比率で拡大縮小されないことに注意してください。選択した間隔は、タイムラインに沿って同じ長さだけ拡大縮小されます。
  • 任意の数のタイムラインオブジェクト (間隔、キー、またはマーカー) を選択する場合は、水平のタイムラインスケール上に表示される黒い拡大縮小バーを使用します。拡大縮小バーは、タイムラインの選択部分を拡大縮小します。 選択した間隔内にあるタイムラインオブジェクトはすべて互いに相対的な位置を保って拡大縮小されます。拡大縮小前に隣接していた間隔は、間が空いたり重なったりすることなく隣接したままになります。
⚠️ **GitHub.com Fallback** ⚠️