シネマティックのショートカットとヒント

シネマティック ワークフローのヒント、コツ、ショートカットについて説明します。

シーケンサー エディタには、シネマティック アニメーションの作業効率を高めるショートカットがあります。このドキュメントでは、一般的なワークフローに関するヒント、問題の対処方法、およびシーケンサーのその他の役立つ機能について説明します。

再生する

スペース キー再生の切り替え

デフォルトでは、スペース キー をホットキーとして使用してシーケンスの再生を切り替えるのは、ウィンドウのフォーカスがシーケンサーにある場合にのみ機能します。ビューポートにフォーカスがある場合、スペース キーを押すとトランスフォームの操作モードが切り替わります。

以下の手順を実行すると、スペース キーを押すことで、ウィンドウのフォーカスに関係なくシーケンサーの再生を切り替えることができます。

  1. [Editor Preferences (エディタの環境設定)] ウィンドウを開き、[General (全般)] > [Keyboard Shortcuts (キーボード ショートカット)] にある [Cycle Between Translate, Rotate, and Scale] を見つけます。このショートカットのバインドを解除するには、[Remove this binding (X) (バインディングを解除する (X))] をクリックします。

    unbind space bar hotkey

    QWER キーを押して、それぞれ SelectTranslateRotateScale を有効にすると、ホットキーでこれらのトランスフォーム モードを切り替えることができます。

  2. ビューポートの [Perspective (パースペクティブ)] メニューで、 [Cinematic Viewport (シネマティックス ビューポート)] を有効にします。

    enable cinematic viewport

  3. これで、シーケンサーまたは [Cinematic Viewport] のどちらかにフォーカスがあるときに スペース キー を押すと、再生が正しく切り替わります。

    spacebar playback toggle

インクルーシブ フレームとエクスクルーシブ フレーム

Unreal Engine 内のアニメーションでは、「インクルーシブ」フレームと「エクスクルーシブ」フレームという概念を使用しています。これらは、フレーム全体が含まれているか、すなわち、全体が評価されるかどうかを決定します。通常、これは アニメーションショット、またはシーケンサーの全体的な再生時間など、シーケンスの 開始 フレームと 終了フレーム を定義する際に重要になります。

シーケンサーでは、開始フレームがインクルーシブ (含まれる) で、終了フレームはエクスクルーシブ (含まれない) であるため、終了フレームまでのすべてのフレーム データが評価されます。この例では、開始時間を「0」、終了時間を「10」に設定しており、実際の経過時間は「9.999」(繰り返し) フレームになります。つまり、シーケンスは終了時間まで評価されるものの、終了時間までは評価されません。これは、Adobe Premiere などの多くのノンリニア編集ソフトで見られる動作に似ています。

sequencer exclusive frame

この機能により、以下のような動作を想定できます。

  • [(スクラブ中に再生範囲にカーソルを維持する)] が有効な場合、シーケンスの正確な終了フレームをスクラブまたは表示することはできません。そのフレームにデータが存在することはあっても、シーケンサーがそこに到達することはありません。この例では、終了時間は 0346 フレームですが、再生は 0345 フレームまでしか到達しません。

    Exclusive2.gif

  • ショットなど、2 つのセクションが接触する同じポイントに再生ヘッドがある場合は、前のショットではなく、次のショットのデータが表示されます。

    Exclusive3.png

  • ムービー レンダー キュー で画像シーケンスをレンダリングする場合、終了フレームは除外されます。つまり、シーケンスに 0 〜 50 フレームが含まれている場合、画像シーケンスには 0 〜 49 フレームが出力されます。

    Exclusive4.png

シーケンサーのインクルーシブ フレームとエクスクルーシブ フレームの処理は、開始フレームと終了フレームの両方を含む アニメーション シーケンス とは異なります。アニメーション FBX をインポートする場合、Unreal Engine では最終フレームを超えて少量のデータを含めるため、最終フレームが完全に含まれることになります。これは、未編集のアニメーション セクションの末尾を十分に拡大すると、シーケンサーで確認できます。

animation sequence inclusive

ただし、トリミングやその他のアニメーションに対する セクション編集 の操作によって、シーケンサーの最終フレーム排他的な動作が復元されます。

ワークフローのショートカット

マウスの中ボタンによるスクラブ

Autodesk Maya と同様に、タイムラインで マウスの中ボタン をクリックしてドラッグすることにより、更新や評価を実行させることなく、現在の時間を変更することができます。これは、同じ値で異なる時間のブラケット キーフレームを追加設定する場合に役立ちます。この方法で再生ヘッドを操作すると、再生ヘッドの色が 黄色 に変わり、シーケンスが評価中でないことを示します。

middle mouse scrub

シーケンサーにアクタを追加する

コンテンツ ブラウザ から新しいアクタをレベルにドラッグしたり、 アクタを配置する 際に、特定のキーを押すことでシーケンサーにアクタが追加されます。押されたキーに応じて、 スポーン可能なものか所有可能なもの のどちらかとしてアクタが追加されます。

  • Ctrl キーを押しながら操作すると、新しいアクタが所有可能なものとしてシーケンサーに追加されます。

  • Shift キーを押しながら操作すると、新しいアクタがスポーン可能なものとしてシーケンサーに追加されます。

adding sequencer actors

デフォルトのトラック

特定のアクタをシーケンサーに追加すると、そのアクタに対し、トラックが自動的に作成される場合があります。以下に例を示します。

この処理は、 Sequencer プラグインのプロジェクト設定 にある トラック設定 によって行われます。これらの設定は、 [Project Settings] ウィンドウを開くと [Plugins (プラグイン)] カテゴリ内の [Level Sequencer (レベル シーケンサー)] から確認できます。

sequencer track settings

Track Settings 配列には、デフォルトで上記のトラックの設定が入力されています。[追加 (+)] ボタンをクリックし、新しい配列アイテムを追加することができます。また、各配列には次のカテゴリがあります。

add track setting

名前

説明

Matching Actor Class (一致するアクタクラス)

ここでは、シーケンサーへのアクタ クラスの追加時に、自動的にトラックを作成するアクタ クラスを指定します。

matching actor class

Default Tracks (デフォルトのトラック)

この配列では、 一致するアクタ クラス がシーケンサーに追加された際に追加するトラックを指定します。[追加 (+)] ボタンをクリックし、ドロップダウン メニューをクリックして シーケンサー のトラック タイプを参照します。

default tracks

Exclude Default Tracks (デフォルトのトラックを除外)

この配列では、このアクタ クラスに追加しないトラックを指定します。親クラスからクラスを継承し、その親クラスにもデフォルトのトラックがある場合など、異なるトラックの追加を指定する場合にこれを使用できます。

Default Property Tracks (デフォルトのプロパティトラック)

この配列では、アクタがシーケンサーに追加された際に追加するプロパティ トラックを指定します。[追加 (+)] ボタンをクリックして配列に新しいプロパティを追加します。

default property tracks

  • [Component Path (コンポーネント パス)] ではプロパティを追加したいアクタのコンポーネントを指定します。

  • [Property Path (プロパティ パス)] では自動的に追加したいプロパティの名前を指定します。

Exclude Default Property Tracks (デフォルトのプロパティトラックを除外)

この配列では、このアクタ クラスに追加しないプロパティを指定します。親クラスからクラスを継承し、その親クラスにもデフォルトのプロパティがある場合など、異なるトラックの追加を指定する場合にこれを使用できます。

ショットの自動サイズ調整

内部でショットの開始および終了時間を調整する場合、Auto Size コマンドを使用すると、親ショット セクションを自動的に編集に合わせることができます。これを行うには、ショットを右クリックして、[Edit (編集)] > [Auto Size (自動サイズ調整)] を選択します。これは、ショットのタイミングを調整する際に、手動でトリムをやり直すことなく、ショット セクションを一致させたい場合に役立ちます。

auto size shots

Shift キーによるスナップとアライメント

セクション アセットを オーディオ トラック、 サブシーケンス トラック、 アニメーション トラックなどのシーケンサー トラックにドラッグする際、Shift キーを押しながら操作すると、ドロップしたセクションが再生ヘッドの位置にスナップされます。

shift dragging

Snap to the Pressed Key が無効な場合でも、Shift を押しながらキーフレームをクリックすると、プレイヘッドをキーフレームに合わせることができます。これにより、このキーフレームの値を変更したり、他のキーを当該のキーに合わせたりといった、後続のアクションを簡単に実行できます。

shift alignment

ウォームアップ レンダリング

ムービー レンダー キュー (MRQ) でプレレンダリングされたシーケンスを作成する場合、シーンのさまざまな要素を正しくレンダリングするために、各ショットを「ウォームアップ」する必要がある場合があります。たとえば、以下のような一般的な問題があります。

  • パーティクルやその他のエフェクトが、すでにアクティブになっているのではなく、ショットの開始時にアクティブになる。

  • クロスなどの物理ベースのエンティティが、ショットの開始時に顕著な「セトル」が見られる。

  • ショットの最初のレンダリン グフレームで、顕著なエイリアスなどのテンポラル アーティファクト (スパークル) を示すことがある。

ムービー レンダー キューの [Anti-Aliasing Render Settings (アンチエイリアスのレンダリング設定)] にあるさまざまなウォームアップ プロパティを使用すると、これらのシナリオを解決することができます。シナリオによっては、どの設定を使用するのが最適かを決定するために、別の考慮事項を考慮する必要がある場合もあります。

パーティクル

パーティクルやその他のエフェクトをショットの開始前に一定時間アクティブにしておく必要がある場合があります。リアルタイム プレビューでは正しい動作が表示される場合がありますが、MRQ でレンダリングすると、ショットの開始時にパーティクル システムがアクティブになる場合があります。これは望ましい動作ではありません。

WarmupParticle_OFF.gif

WarmupParticle_ON.gif

ウォームアップを使用したパーティクル

ウォームアップを使用しないパーティクル

このパーティクルのシナリオでは、次のいずれかの方法でこの問題を解決できます。

  • ショットの開始時間にパーティクルの Activate キーフレームを作成し、[Engine Warm Up Count (エンジン ウォームアップ カウント)] にフレーム値を設定します。この値は、パーティクルがウォームアップするのに必要なフレーム数に応じて任意に設定できます。

    WarmupParticle1.png

  • または、パーティクルの Activate キーフレームを Camera Cut セクションと一緒に、シーケンスの 開始前 領域に作成または移動することもできます。次に、[Use Camera Cut For Warm Up (ウォームアップ用のカメラ カットを使用)] をオンにします。これにより、ウォームアップ時間が、Camera Cut トラック セクションが占める開始前領域で定義されます。

    WarmupParticle2.png

パーティクルが GPU ベース の場合、[Render Warm Up Count (レンダー ウォームアップ フレーム)] も有効にする必要があります。

render warm up frames

クロスと物理

クロスなどの物理オブジェクトのレンダリング時の共通の問題として、ショットの開始時に顕著なセトルが見られることがあります。これは、レンダリングが開始されるまでゲーム シミュレーションが開始されないため、物理が実際のシミュレーション状態に安定するまで時間がかかることが原因です。

WarmupCloth_OFF.gif

WarmupCloth_ON.gif

開始時にクロスがセトルしている (ウォームアップなし)

クロスがセトルしない (ウォームアップあり)。

開始モーションなし

アイドル ポーズなど、キャラクターまたは物理オブジェクトが冒頭で動かないショットでは、[Engine Warm Up Count] にフレーム値を設定することでこの問題を解決することができます。この値は、物理がセトルするまでに必要なフレーム数によって任意に設定できます。通常、30 を超える値を使用する必要があります。

engine warm up count

開始モーション

物理オブジェクトが動いている状態でショットを開始するシナリオ (走行、ジャンプなど) では、[Engine Warm Up Count] を設定すると、正確な結果が得られません。これは、開始フレームを「ウォームアップ」するだけで、事前に発生する可能性のあるモーションを考慮していないためです。左の例では、クロスが不自然な静止位置から開始し、シミュレーションが動きに反応して修正されるのがわかります。

WarmupCloth2_OFF.gif

WarmupCloth2_ON.gif

クロスが静止状態から開始している (ウォームアップ設定が誤っている)

クロスは正しく後ろから開始している (正しいウォームアップ設定を使用している)

これを解決するためには、以下を実行する必要があります。

  1. 物理キャラクターまたはオブジェクトが、シーケンサーの開始前領域 (Camera Cuts セクションを含む) にアニメーション データを含んでいることを確認します。これには、開始前領域に拡張するために、アニメーションとトランスフォーム トラックのキーフレームを変更する必要がある場合があります。

    cloth prestart animation

    コンテキスト でショットをプレビューする場合、シーケンサーのメニューの [Playback Options (再生オプション)] メニューで [Evaluate Sub Sequences In Isolation (サブシーケンスを独立して評価)] を有効にすることをお勧めします。この操作を行わないと、タイムラインの逆方向の領域にスクラブすると、前のショットがプレビューされ、現在のショットの開始前の領域がプレビューされないからです。

  2. [Anti-Aliasing (アンチエイリアス)] 画像設定で、[Use Camera Cut For Warm Up (ウォームアップ用のカメラ カットを使用)] をオンにします。これにより、ウォームアップ時間が、Camera Cut トラック セクションが占める開始前領域で定義されます。これにより、シーケンスは開始前のモーションを蓄積し、ショットの開始時の物理状態が正確になるようにします。最初のフレームを評価して保持する [Engine Warm Up Count] とは異なり、[Use Camera Cut for Warm Up] は開始フレームに達するまでのシーケンスを評価します。

    cloth use camera cut for warm up

この手法は、トレイル パーティクルなど、他の要素の動作履歴を作成するためにも使用できます。

テンポラル アーティファクト

テンポラル アンチエイリアス (TAA)、テンポラル スーパー解像度 (TSR)、レイトレーシングのノイズ除去など、テンポラル コンポーネントを含むレンダリング機能によるエイリアシングなどのアーティファクトも、ショットの最初の数フレームで発生することがあります。通常、この問題は反射面の顕著に硬いエッジやきめが粗い輝きとして表示されます。これは、レンダリングの開始時に時間的履歴が蓄積されていないことに起因します。

WarmupTemporal_OFF.png

WarmupTemporal_ON.png

スパークリングとギザギザになっているエッジ部分 (ウォームアップなし)

滑らかなエッジ部分とハイライト (ウォームアップ使用)

この問題を解決するためには、次のいずれかの操作を実行できます。

  • [Render Warm Up Count (レンダー ウォームアップ カウント)] のフレーム値を設定します。この値は、最初のフレームのための時間的履歴を作成するために事前にレンダリングするフレーム数です。

    temporal warmup settings

  • [Render Warm Up Count] 値を上げても問題が解決しない場合は、代わりに [Engine Warm Up Count] 値を上げて、[Render Warm Up Count (レンダー ウォームアップ フレーム)] を有効にします。これにより、シーケンスの最初のフレームが評価され、[Engine Warm Up Count] のフレームが経過するまで、エンジンとレンダラを継続的にティックします。

    temporal warmup settings

タグ
Unreal Engine のドキュメントを改善するために協力をお願いします!どのような改善を望んでいるかご意見をお聞かせください。
調査に参加する
キャンセル