-
Notifications
You must be signed in to change notification settings - Fork 263
ATF Timeline Editor Sample_j
TimelineEditor は、比較的機能豊富なタイムラインエディターで、そのコンポーネントは製品用ツールに実際に使用されています。
サンプルのプログラム方法に関する詳細は、Timeline Editor Programming Discussion をご覧ください。
- MEF (Managed Extensibility Framework) を使用して、オプションのコンポーネントを使用するアプリケーションをまとめる。
- CommandService、SettingsService、StatusService、および ControlHostService を含むアプリケーションシェルフレームワークの使用。
- TimelineControl、TimelineRenderer、およびすべてのタイムラインマニピュレータ (MoveManipulator、ScaleManipulator、ScrubberManipulator、SelectionManipulator、SnapManipulator、および SplitManipulator) の使用。
- TimelineControl を変更せずに新機能を TimelineControl に追加または削除することを可能にするマニピュレータのアーキテクチャ。
- IPaletteService を使用して、タイムラインオブジェクトタイプのリストを表示する。オブジェクトをパレットからドキュメントにドラッグすると、新しいタイムラインオブジェクトがインスタンス化されます。
- 2 つのプロパティエディター、PropertyEditor と GridPropertyEditor を使用。
- サブドキュメント対応の実装。参照されたドキュメントを、メインドキュメントのタブ内に子ドキュメントとして表示します。
- 複数のドキュメントを、同時に開いた状態にする。
- ドキュメント内およびドキュメント間でのコピーと貼り付け。
- ATF\Samples\TimelineEditor\bin\Release にある TimelineEditor.exe をダブルクリックします。
- \[TimelineEditor] ウィンドウが表示されます。
TimelineEditor には以下のペインがあります。
- [パレット]: タイムラインパーツのパレットには、次のパーツがあります。
- [Marker]: アニメーションの 6 分経過後に世界が破滅するなどのグローバルイベントをマークします。マーカーはグローバルに適用され、タイムラインドキュメントに属します。マーカーは、アニメーションのトラックやグループには属しません。マーカーはトラック全体に適用されます。
- [Group]: アニメーションのトラックを整理するために使用します。グループには最低 1 つのトラックが含まれています。グループの非表示、削除、展開や折りたたみ、またグループ間でのトラックの移動が可能です。グループを折りたたむと、そのグループのトラックは選択できません。グループはネストできません。
- [Track]: アニメーショントラックです。トラックは、アニメーションが正しい順番で再生されるようにする映像ツールです。各トラックには、間隔とキーが含まれます。トラックをグループにドラッグアンドドロップしたり、トラックの名前を変更したりできます。
- [Interval]: 明確な開始と終了が決まった時間的な間隔を示します。
- [Key]: 明確な開始が決まっており、継続時間が 0 である時間上の一点を示します。キーはトラックに属します。
- [Reference]: 別のタイムラインドキュメントへの参照と、そのリファレンスタイムラインをオフセットする開始時間を含みます。
- [プロパティエディター]: 選択した要素のプロパティをリストコントロールで編集します。
- [グリッドプロパティエディター]: 選択した要素のプロパティをグリッドコントロールで編集します。
- [出力]: 診断を表示します (オプション)。
- キャンバス: タイムラインを定義、表示、および編集する場所です。
メニューバーには次の項目があります。
- [ファイル]: [タイムラインを新規作成]、[タイムラインを開く]、[保存]、[名前を付けて保存]、[すべて保存]、[閉じる]、[ページ設定]、[印刷プレビュー]、[印刷]、[最近使用したファイル]、および [終了]。
- [編集]: 標準の編集機能 ([元に戻す/やり直し]、[切り取り]、[コピー]、[貼り付け]、[削除]、[すべて選択]/[すべて選択解除]、[選択を切り替え]) のほかに、次の項目があります。
- [Interval Splitting Mode]: 選択済みの間隔が、次にクリックした箇所で分割されます。
- [キーボードショートカット]: [キーボードショートカットをカスタマイズ] ウィンドウを使用して、キーボードショートカットを設定します。
- [設定を読み込み/保存]: 現在の設定を保存するか、またはファイルからアプリケーション設定を読み込みます。
- [基本設定]: コマンドアイコンのサイズや最後にアクティブになったドキュメントの自動読み込みなど、アプリケーションやドキュメントを設定します。
- [表示] > [現在のビューに表示]: 現在の選択がキャンバス上に表示されるようにします。
- [ウィンドウ]: ペインを選択/選択解除したり、複数のドキュメントペインを整理します。
TimelineEditor を開くと空のキャンバスが表示されます。新しいタイムラインドキュメントを作成するには、[ファイル] > [タイムラインを新規作成] またはツールバーボタンをクリックします。既存のタイムラインドキュメントを開くには、[ファイル] > [タイムラインを開く] またはツールバーボタンをクリックします。[パレット] から使用する要素をキャンバスにドラッグします。各ペインのタブをクリックして、要素プロパティを表示し編集します。
リファレンスオブジェクトを [パレット] からキャンバスにドラッグすると、現在のタイムラインにほかのタイムラインドキュメントを含ませことができます。タイムラインリファレンスドキュメントは、タイムラインサブドキュメントとも呼ばれます。タイムラインサブドキュメントには、追加のタイムラインサブドキュメントを含めることができます。タイムラインドキュメントを参照するときに、現在のタイムラインドキュメントに読み込まれます。
現在のタイムラインドキュメント内にあるタイムラインサブドキュメントファイルは編集できません。グループの展開と折りたたみ同様に、現在のタイムラインドキュメントにあるタイムラインサブドキュメントの表示を展開または折りたたむことができます。タイムラインサブドキュメントと現在のタイムラインを同時に開き、キャンバスに並べて表示して、変更できます。使用しながら両ドキュメントの変更を確認でき、ドキュメントの同期が保たれます。タイムラインサブドキュメントには、キーや間隔のように明確な開始点があります。タイムラインサブドキュメント上の「0」時間の位置がひし形のアイコンにより示されます。タイムラインリファレンスを [パレット] からキャンバスにドラッグすると、サーモン色のラインが表示されます。タイムラインリファレンスファイルを設定するには、次の手順を実行します。
- リファレンスをクリックして選択します。タイムラインリファレンスのプロパティが [プロパティエディター] と [グリッドプロパティエディター] ペインに表示されます。
- [File] プロパティをクリックして、タイムラインファイルにブラウズします。
スクラバーは垂直の黒い線で、タイムラインを使用しているときに表示されます。スクラバーはドキュメントの一部ではありません。スクラバーを移動すると発生するイベントがあり、これに応じてアプリケーションが何らかの動作を実行します。たとえば、タイムラインエディターがゲームに接続している場合、スクラバーを移動するとゲーム内の時間が変化します。アプリケーションに任意の動作をさせることができます。つまり基本的に「何か新しくなるように現在時刻を設定する」ということです。たとえば、再生ボタンおよび一時停止ボタンと併用してスクラバーを使用できます。
Alt キーと左マウスボタンおよび Alt キーと右マウスボタンを使って、キャンバス上のタイムライン表示をパンまたはズームできます。
間隔分割モードの使用法を次に示します。
- 間隔を選択します。
- 「S」 (「S」のみ) を入力します。間隔が分割されます。複数の間隔を分割できます。
拡大縮小には、次の 2 つのタイプがあります。
- 選択された間隔の左または右の枠線をドラッグします。同じイベントを示す間隔が複数ある場合、選択した間隔の左端または右端をドラッグできます。選択した間隔は同じサイズだけ拡大縮小されます。同じ比率で拡大縮小されないことに注意してください。選択した間隔は、タイムラインに沿って同じ長さだけ拡大縮小されます。
- 任意の数のタイムラインオブジェクト (間隔、キー、またはマーカー) を選択する場合は、水平のタイムラインスケール上に表示される黒い拡大縮小バーを使用します。拡大縮小バーは、タイムラインの選択部分を拡大縮小します。選択した間隔内にあるタイムラインオブジェクトはすべて互いに相対的な位置を保って拡大縮小されます。拡大縮小前に隣接していた間隔は、間が空いたり重なったりすることなく隣接したままになります。
- CircuitEditor: 入力ピンと出力ピンを持つモジュールとモジュール間の接続で構成される回路用のサンプルエディターです。
- CodeEditor: Actipro Software 社の SyntaxEditor を使用して編集コントロールを提供するコードエディターです。
- DiagramEditor: 回路、FSM、およびステートチャートの各エディターを 1 つのアプリケーションに組み合わせて、複数のエディターがアプリケーションシェルおよびエディターコンポーネントを共有する方法を示します。
- DOMPropertyEditor: 広範な種類のプロパティ編集コントロールおよびプロパティ記述子を備えたプロパティ編集の使用例を示します。
- FileExplorer: ディスクの内容を表示する、Windows® Explorer に似た単純なアプリケーションを作成する方法を示します。
- FSMEditor: 有限ステートマシンエディターです。
- ModelViewer: ATF の ATGI ファイルローダーと Collada ファイルローダーの使用法および、OpenGLR によるレンダリングの使用法を示します。
- SimpleDOMEditor: データモデルの定義などの、ドキュメントオブジェクトモデル (DOM) の使用例を示します。
- SimpleDOMEditorWPF: ATF SimpleDOMEditor Sample に似ていますが、ATF の WPF フレームワークを使用して実装されています。
- SimpleDOMNoXMLEditor: SimpleDOMEditor サンプルにとてもよく似ていますが、XMLを使用しません。
- StateChartEditor: ステートチャートのエディターです。
- TargetManager: ターゲットを検出、追加、構成、および選択するための TargetEnumerationService の使用方法を示します。ターゲットは、TCP/IP アドレス、PS3? 開発ツール、または PlayStationRVita 開発ツールなどのネットワークエンドポイントです。
- TimelineEditor: 比較的機能豊富で、そのコンポーネントは製品用ツールに使用されています。
- TreeListControl: TreeListControl/TreeListItemRenderer クラスを使用して、階層的なデータをツリービューに表示して編集し、詳細を列に表示する例を示します。
- TreeListEditor: 選択されたフォルダーの下層フォルダーおよびファイルを表示する階層構造リストなど、さまざまな種類のツリー構造リストの作成およびエントリー追加の方法を示しています。
- UsingDirect2D: Direct2D および Direct2D をサポートする ATF クラスの使用方法を示すサンプルアプリケーションです。
- UsingDom: DOM の基本的な使用法を簡単に示します。
- ドキュメントの検索 (英語)
- ドキュメントの使用法 (英語)
- 動画
- チュートリアル
- 手順 (英語)
- プログラマーズガイド
- リファレンス (英語)
- コードサンプル
- ドキュメント
© 2014-2015, Sony Computer Entertainment America LLC