Rewind Debugger を使用すると、ランタイム時にプロジェクトのゲームプレイ セグメントをレコーディングし、シミュレーションを巻き戻してアニメーションの動作やインタラクションに関する情報を確認することができます。Animation Insights を基盤として構築された Rewind Debugger は、Unreal Engine のアニメーション コンテンツのデバッグに新たなビジュアル インターフェースを提供します。
前提条件
- Animation Insights プラグイン を有効にします。メニュー バー で [Edit (編集)] > [Plugins (プラグイン)] の順に選択して [Animation (アニメーション)] セクションにある Animation Insights を見つけるか、検索バー を使って検索します。このプラグインを有効にして、エディタを再起動します。

概要
Unreal Engine でキャラクター アニメーション システムを操作する際、バグの原因を特定することが難しい場合があります。Rewind Debugger を使用すると、ゲームプレイのセグメントをレコーディングしてスクラブ再生することにより、アニメーション コンテンツのデバッグをより機能的かつ安定した作業環境で行うことができます。

アニメーション データはターゲット オブジェクトの選択後、Rewind Debugger のタイムライン が生成されるトラック上に視覚的に表示されます。Rewind Debugger のトラックには、アニメーション ブループリント、シーケンス の再生、アニメーション変数、通知 などについての情報を含めることができます。

[Rewind Debugger] ウィンドウを開くには、メニュー バー の [Tools (ツール)] > [Debug (デバッグ)] > [Rewind Debugger] に移動します。

より正確なアニメーション データは Rewind Debugger のタイムラインのトラックを選択した後、[Rewind Debugger Details (Rewind Debugger の詳細)] パネルで確認することができます。[Rewind Debugger Details] パネルを開くには、メニュー バー の [Tools] > [Debug] > [Rewind Debugger Details] に移動します。

Rewind Debugger のインターフェース
[Rewind Debugger] パネルには、レコーディングされたゲームプレイのセグメントを移動しながらアニメーション データを確認するために使用できる独自のインターフェースが搭載されています。

機能 | 画像 | 説明 |
---|---|---|
1.プロジェクト シミュレーションのコントロール | ![]() |
再生、ポーズ、停止 などの機能を使用して、プロジェクトのシミュレーションを制御します。詳細については、「Unreal Editor のインターフェース」のドキュメントを参照してください。 |
2.Rewind Debugger の [Camera (カメラ)] メニュー | ![]() |
ゲームプレイのレコーディングを再生するためのカメラ動作を選択します。カメラ モードは次のとおりです。
このオプションでは、選択したオブジェクトを追跡するのではなく、キャラクターと同じ移動データに基づいてカメラを移動させます。
カメラ コントロール モードの変更を試みる前に、プロジェクト シミュレーション コントロールでプレイヤー コントロールを解除します。 |
3.オブジェクト アウトライナー | ![]() |
ゲームプレイ セグメントをレコーディングした後、[Rewind Debugger] パネルに表示されるゲーム オブジェクトを [Object Outliner] ドロップダウン メニューから選択することができます。 ゲーム オブジェクトを選択した後、選択したオブジェクト、すべての子オブジェクトおよびコンポーネント (ランタイム時に作成または破棄されたものを含む)、および接続されているコントローラーがオブジェクト アウトライナーにリストされます。 オブジェクト アウトライナーでは、デバッグするゲーム オブジェクトの選択や接続されているコンポーネントのフィルタリングを支援する次のツールを使用することができます。
一部のゲーム オブジェクトは、移動コンポーネント、アニメーション ブループリント など、多くのコンポーネントで構成されています。これらの各コンポーネントは、Rewind Debugger のタイムラインの関連トラックとともにオブジェクト アウトライナーの子オブジェクトとしてリストに表示されます。[Rewind Debugger Details] パネルでそれぞれのデータを確認するには、個別に選択する必要があります。 |
4.再生コントロール | ![]() |
レコーディングされたゲームプレイ セグメントの再生を制御できます。レコーディングの 開始 および 停止 は、[Record (録画)] ボタン を使用するか、Rewind Debugger のタイムライン で [Play (プレイ)]、[Pause (ポーズ)]、および [Scrub (スクラブ再生)] を使用して行うことができます。 |
5.Rewind Debugger のタイムライン | ![]() |
デバッグするゲーム オブジェクトを選択した後、Rewind Debugger のタイムラインには選択したゲーム オブジェクトのコンポーネントと子オブジェクトが表示されます。各コンポーネントまたは子オブジェクトには、レコーディングされたゲームプレイ セグメント中のデータ、変数、カーブ値の変化を視覚的に表示することができるトラックが追加されます。 Rewind Debugger のタイムラインのトラックを選択して、[Rewind Debugger Details] パネルでより正確なアニメーション データ値を確認することができます。 赤色の再生ヘッドをクリックしてドラッグすると、手動でタイムラインをスクラブ再生し、[Rewind Debugger Details] パネルとビューポートで同時にアニメーション データの変更を確認することができます。 |
**6.[Rewind Debugger Details] パネル | ![]() |
[Rewind Debugger Details] パネルには、Rewind Debugger のタイムラインで選択されたトラックおよびタイムライン上の位置に応じて、使用可能なすべてのデータが表示されます。表示される情報には、変数の値やブール値の状態などが含まれます。 Rewind Debugger のタイムラインで選択したトラックに応じて、コンテキスト データがパネルに表示されます。 [Rewind Debugger Details] パネルは、メニュー バー の [Tools] > [Debug] > [Rewind Debugger Details] に移動して開くことができます。 |
Rewind Debugger を使用する
-
Rewind Debugger を使用するには、最初にプロジェクト シミュレーション コントロールの 緑色の [Play (プレイ)] ボタン をクリックしてゲーム シミュレーションを開始します。
- 次に、Rewind Debugger の再生コントロールにある [Record] をクリックし、プロジェクト シミュレーションのレコーディングを開始します。
シミュレーションを停止またはポーズすることなくカーソルをシミュレーションから切り離すには、ホット キー Shift + F1 を使用します。
- ゲームプレイ セグメントをレコーディングしたら、プロジェクト シミュレーション コントロールを使用してシミュレーションをポーズし、カメラを解除します。
- シミュレーションがポーズすると、レコーディングも自動的に停止します。
これで、ゲームプレイのレコーディングされたセクションを使用する準備が整いました。ゲーム オブジェクトのデバッグを開始するには、[Object Outliner (オブジェクト アウトライナー)] でゲーム オブジェクトを選択するか、ビューポートで スポイト ツールを使用してゲーム オブジェクトを選択します。
ゲーム オブジェクトを選択した後、Rewind Debugger のタイムライン にはゲーム オブジェクトのコンポーネントと子オブジェクトに関連するアニメーション データのトラックが状況に応じて表示されます。再生ヘッドや再生コントロールを使用して Rewind Debugger のタイムラインをスクラブ再生すると、レコーディングされたアニメーション データによってゲーム オブジェクトがどのように更新されるかをビューポートで確認することができます。
タイムラインのアニメーション データ値を素早く読み取るには、タイムライン トラックにカーソルを乗せると、レコーディングされたセグメントの時間の位置にあるアニメーション トラックの現在値が表示されます。

Rewind Debugger のメニュー で他の カメラ モード を選択すると、デバッグ時に被写体の別のビューを取得することができます。たとえば、[Disabled] オプションを使用すると、カメラを切り離して自由に配置し、ゲーム オブジェクトをあらゆる角度から確認することができるため、ワークフローに役立ちます。

レコーディングされたゲームプレイ セグメントがポーズされた状態で、[Follow Target Actor (ターゲット アクタをフォロー)] または [Replay Recorded Camera (レコーディングされたカメラのリプレイ)] オプションを使用している場合は、ビューポートの [Pilot Actor (パイロット アクタ)] ビュー設定を使用して、ビューポートを一時的にアクタからデタッチすることができます。

ゲーム オブジェクトやアニメーション システムを編集した後は、プロジェクト シミュレーション コントロールのコントローラー アイコンを使用してゲーム コントローラーを再接続し、ゲームを再開してデバッグを続けることができます。ゲーム シミュレーションが再開されると、Rewind Debugger は手動で停止しない限り、ゲームプレイのレコーディングを続行します。
トレース ファイル
Rewind Debugger でゲームプレイ セグメントをレコーディングする際は、同時に トレース ファイル が記録されてローカル マシンに格納されます。トレース ファイルは、トレース ファイルのレコーディングをポーズしたり、新しいトレース ファイルのレコーディングを開始したり、Unreal Insights で最近のトレース ファイル レコーディングを開いたりと、プロパティと設定を通じて管理することができます。

トレース ファイルは記録されると永久的に格納されるため、古いファイルを定期的に削除するなど、適切に管理することが重要です。管理目的で保存されたトレース ファイルの場所にアクセスするには、画面下部のトレース アイコンをクリックして [Open Trace Store Directory (トレース ストア ディレクトリを開く)] を選択します。

次のファイル パスからトレース ファイルにアクセスすることもできます。
"ドライブ名":\Users\"ユーザー名"\AppData\Local\UnrealEngine\Common\UnrealTrace\Store\001
アニメーション ブループリント
レコーディングされたゲームプレイのセグメントを取得した後、オブジェクト アウトライナーでアニメーション ブループリント コンポーネントを ダブルクリック すると、新しいウィンドウで アニメーション ブループリント エディタ を開いてアタッチすることができます。レコーディングされたセグメントをスクラブ再生しているときは、アニメーション ブループリント エディタに、ゲーム オブジェクトのレコーディングされたモーメントに対応する、選択したアニメーション ブループリントのレコーディングされた状態が表示されます。

この機能により、レコーディングされたゲームプレイ セグメントの任意のモーメントで、アニメーション ブループリントからどのようにして出力ポーズが生成されるかを確認することができます。確認できる項目は Animation Blueprint ノード、変数、ステート マシン の位置などです。
ポーズ ウォッチ
アニメーション ブループリント内では、Animation Blueprint ノード の ポーズ ウォッチング を有効にして、レコーディングされたゲームプレイ中の 出力アニメーション ポーズ で各ノードのエフェクトを確認することができます。これは、ゲームプレイのレコーディング中にオブジェクトのアニメーションに対する各ノードの影響について理解するために非常に有用です。

Animation Blueprint ノード では、Rewind Debugger でゲームプレイのセグメントをレコーディングする前に ポーズ ウォッチを有効にする 必要があります。その後、レコーディングされたゲームプレイ セグメントを使用しながら、ポーズ ウォッチングを切り替えることができます。
Rewind Debugger の設定
Unreal Engine の [Project Settings (プロジェクト設定)] でアクセスすることができる Rewind Debugger の設定 について、次に示します。メニューで [Edit (編集)] > [Project Settings] の順に選択して [Project Settings] を開きます。Rewind Debugger の [Settings] セクションは、[Plugins (プラグイン)] カテゴリにリストされています。

設定項目 | 説明 |
---|---|
Camera Mode (カメラ モード) | ここでは、現在の保存されている カメラ モード を確認することができます。保存された カメラ モード オプションは、設定内または Rewind Debugger のカメラ メニュー 内で設定することができます。カメラ オプションは、次の中から選択することができます。
このオプションでは、選択したオブジェクトを追跡するのではなく、キャラクターと同じ移動データに基づいてカメラを移動させます。
|
Should Auto Record on PIE (Play In Editor) (PIE (プレイ イン エディタ) で自動レコーディング) | 有効 にすると、Rewind Debugger が開いているかぎり、ゲーム シミュレーションが開始されると自動的にゲームプレイがレコーディングされます。無効 にすると、ゲームプレイのレコーディングは手動で有効にする必要があります。 |
Show Empty Object Tracks (空のオブジェクト トラックを表示) | 有効 にすると、Rewind Debugger のタイムラインには空のアニメーション データ トラックが表示されます。無効 にすると、すべての空のトラックが非表示になります。 |
拡張性
Rewind Debugger の用途は、Animation Insights プラグインにパッケージされているバージョン以外にも拡張できます。チームは独自のカスタム仕様のトラックをビルドして Rewind Debuggerに追加し、プロジェクト固有のコンポーネントやゲームプレイ要素を表示することができます。
プロジェクト固有のニーズに合わせて Rewind Debugger を変更する方法の例については、ポーズ検索アニメーションを操作するために設計された独自のデバッグ ツールを持つ Pose Search プラグイン を確認してください。

両方のプラグインをインストールすると、選択したキャラクターで Pose Searching ノードを使用する場合にカスタム仕様のポーズ検索トラックが Rewind Debugger に追加されます。これには、デバッグを支援するための拡張されたポーズ検索アニメーション データが含まれています。

ポーズ検索機能を試すことは可能ですが、これは実験的機能のため、出荷プロジェクトに組み込むことは推奨していません。