コンテンツにスキップ

カメラの切り替え

MR set 内で同時にターゲットカメラになれるのは 1 台だけですが、MR Set には Indirection Controller を使用して切り替えられる複数のカメラを含めることができます。

MR set のターゲットカメラは、MR set にルーティングされるビデオ入力を決定します。ただし、複数のカメラを MR set に追加できます。

xR でのカメラ切り替えでは、出力のすべての部分が同じフレームでビューを切り替えるように、システム内のすべての遅延を完璧に補正する必要があります。これには、ユーザーが切り替えを要求してから、その切り替えが出力に表示されるまでの間に遅延を導入する必要があります。

Disguise Controller には、6 種類の Indirection Controller タイプがあります。

  • DMXIndirectionController
  • ListIndirectionController
  • MachineListIndirectionController
  • ManualIndirectionController
  • SequencedIndirectionController
  • OSCIndirectionController
  • UDPIndirectionController

これらにより、Disguise 内でアクティブなカメラを切り替えるために複数のプロトコルを使用できるほか、外部トリガーに依存しない方法も使用できます。

これにより、Bank と Slot のメカニズムでカメラを選択できます。

  1. Disguise が DMX を受信するようにセットアップされていることを確認します。
  2. DMXIndirectionController を作成して MR Set に割り当てます。
  3. Sockpuppet bank editor で、Camera bank の一覧が利用可能になります。
  4. 選択したいカメラで bank と slot を登録します。
  5. Camera bank を選択したい Universe とチャンネルをコントローラーに入力します。
  6. slot は bank の直後の次のチャンネルなので、DMX センダーで 2 つのチャンネルを指定する必要があります。
  7. DMX 送信デバイスから、選択した Universe とチャンネルに、適切な 2 チャンネルの識別子を送信します。

これにより、0 ベースのインデックスでカメラを選択できます。

  1. ListIndirectionController を作成します。
  2. カメラを Resource として追加します。
  3. カメラの順序が Index Number になります。
  4. Index をスクロールして、アクティブなカメラを選択します。

選択される index は 0 ベースで、一覧の最初の項目は index 0 で選択されます。

選択された index を右クリックすると、index を制御する式を入力できます(例: 外部プロトコル からの制御を可能にする)。

選択された index が 0 未満、または一覧の要素数以上の場合、コントローラーは Resource として None を選択します。

これにより、特定のマシンが指定されたカメラの視点のみを出力できます。これのユースケースは、Front plate と Back plate のレンダリングを複数のマシンに分割する場合です。

  1. ManualIndirectionController を作成します。
  2. カメラを選択します。

これは IndirectionControl レイヤーのキーフレームによって制御されます。indirection control モジュールにより、indirection をタイムライン上でシーケンスできます。1 つの indirection control モジュールが 1 つの indirection を制御します。

indirection をシーケンスするには:

  1. indirection の controller フィールドに SequencedIndirectionController を追加します。
  2. タイムラインに IndirectionControl レイヤーを追加します。
  3. Indirection control モジュールでコントローラーを選択します。

これにより、OSC 経由でカメラを強制的にアクティブにできます。

  1. OSCIndirectionController を作成します。
  2. OSC Device を作成します。
  3. OSC device をコントローラーに追加します。
  4. OSC address フィールドから $ 記号を削除します。
  5. カメラをアクティブに呼び出すための文字列は、Disguise 内のカメラの名前です。現在、OSC indirection controller では、選択するオブジェクトの完全なパスを使用する必要があります。例:

path: /d3/indirection/osc

value: objects/camera/cam1.apx **

これにより、UDP 経由でカメラを強制的にアクティブにできます。

  1. UDPIndirectionController を作成します。
  2. 必要な数の Resources を追加します。これはシーン内のカメラの数になります。
  3. そのアクティブなカメラをトリガーする Key を追加し、Virtual Camera となる resource を追加します。
  4. UDP センダーからの受信ポート番号を追加します。
  5. Disguise にコマンドを送信し、Current Target が変わるのを確認します。Verbose Logging をオンにして、コンソール (alt+c) で受信文字列を確認します。