【リファレンス】Fuse-PPgBaseControl

この記事では、Fuse版立ち絵マクロを構成するノードの一つであるPPgBaseControlについて、役割と各コントロールの意味を紹介します。
対象ツール:PPgarage_ver0.8、DaVinci Resolve

この記事のヒーロー画像

この記事でお借りした立ち絵

アズキ様:男にも女にもなれる鳴花ヒメ立ち絵

Character: 鳴花ヒメ

PPgBaseControlとは

PPgBaseControlは、PPgarageのFuse版立ち絵マクロに含まれるノードの一つで、PSDファイルを元にベースとなるイメージを作成します。
操作項目は、PSDファイルの指定、各レイヤーの可視状態(表示/非表示)の変更、画像の反転、クロップ範囲の選択などです。

PPgBaseControlへのアクセス

Fuse版立ち絵マクロとして使っている場合は、タイムライン上に置いた立ち絵クリップからFusionページへ移動し、マクロ内部のPPgBaseControl1を選択することでアクセスできます。

  1. エディットページにて、立ち絵クリップの右上にあるアイコンをクリックして、Fusionページへ移動します。
  2. Fusionページにて、マクロのグループノードをWクリックして展開します。
  3. PPgBaseControl1を選択してください。

    インスペクタにノードのコントロールが表示されない場合は、対象のノードをWクリックすると展開されます。

各コントロールについて

タブについて

PPgBaseControlのコントロールは、内容ごとに以下のタブに分かれています。

タブ 主な役割
コントロール(Controls) 反転、クロップ、画像サイズなど、出力画像そのものに関する設定
Layer レイヤー名の扱いと、各レイヤーの可視状態(表示/非表示)の切り替え
Links PSDファイルの指定、EditNoの設定、追加情報の確認
コントロールの機能に関する簡易説明の表示

Fusionページにて各コントロールの上にマウスカーソルを置くと、DaVinci Resolve下部のステータス欄に簡易説明が表示されます。
目的のコントロールについて知りたい場合は、Fusionページに移動してマウスホバーすることをオススメします。

コントロール(Controls)

反転、クロップ、画像サイズなど、出力画像そのものに関する設定を行います。

『コントロール』タブは『Controls』と表記されることがあります。これはDaVinci Resolveのバージョンと設定されている言語によって異なります。

ImageOptions

画像に関する設定をまとめた折りたたみラベルです。

レイヤー選択時に上位フォルダーを有効化

レイヤーを有効にした際に、所属する上位フォルダーもまとめて有効化します。これによりレイヤー選択時の表示漏れを防ぎやすくなります。

ここでの設定はPPgBaseControlだけでなく、PPgExControlやPPgSyncControlの処理にも影響します。

イメージの反転

立ち絵全体を反転します。レイヤー名拡張機能の:flipyなどを反映させる場合は、この機能を利用して操作する必要があります。

値 内容
None 反転を行いません。
正面表示になります。
X:Flip 左右を反転します。
:flipxが付いているレイヤーが有効になります。
Y:Flip 上下を反転します。
:flipyが付いているレイヤーが有効になります。
XY:Flip 上下左右を反転します。
:flipxyが付いているレイヤーが有効になります。

イメージのクロップに関する操作

一般的に配布されている立ち絵のPSDファイルは、高解像度で作成されていることが多いため、そのまま使用するとDaVinci Resolve上での負荷が大きくなることがあります。

PPgarageのFuse版立ち絵には、余計な領域をクロップ(切り取り)することで、処理コストを抑える機能が実装されています。

例えば立ち絵のバストアップを描写するシーンでは、上の画像のように、胸より下の領域をクロップすることでイメージサイズを削減し、処理コストを軽減することが可能です。

イメージをクロップする

クロップ機能の有効/無効を切り替えます。
チェックを入れることで、クロップ用コントロールが表示されます。

チェックを外すとクロップが解除されます。

クロップの編集

クロップの編集に関する現在の状態を変更します。

値 機能
Apply クロップの設定が反映されている状態です。
Edit こちらが選択されている間だけ、クロップに関する設定を変更することが可能になります。

『Edit』を選択してクロップする範囲を設定し、その後『Apply』を選択することでクロップを適用する、という流れになります。

『Edit』が選択されている間は、ExButtonsや目パチ口パクの設定が無効になります。

クロップ範囲の色 - Edit時のみ

クロップ範囲を選択した際に、目印としてその領域に何色を合成するかを選択します。

クロップ範囲の不透明度 - Edit時のみ

クロップ範囲を選択した際に、目印となる色の不透明度を設定します。

CropSize - Edit時のみ

クロップする範囲を割合で設定します。
左右の●を狭めることで範囲を広げ、間の─を動かすことで範囲がスライドします。

  1. CropSizeTop

    上辺をクロップする範囲を設定します。

  2. CropSizeBottom

    下辺をクロップする範囲を設定します。

  3. CropSizeLeft

    左辺をクロップする範囲を設定します。

  4. CropSizeRight

    右辺をクロップする範囲を設定します。

クロップ範囲 - Apply時のみ

現在適用されているクロップ範囲の割合が表示されます。
このコントロールはクロップが適用されている状態でのみ表示されます。

イメージのサイズ

立ち絵のサイズが表示されます。
クロップが有効になると削減された範囲が反映されます。

Layer

全てのレイヤーに対する可視状態(表示/非表示)の操作を行います。

文字Encoding

基本的に『Auto』のままで問題ありません。

後述のレイヤーリストにて一覧化した、各レイヤー名の文字エンコードを選択します。
古いペイントツールなどで作成されたPSDファイルでは文字化けが発生することがあるため、その場合はここで文字エンコードを設定してください。

排他的制御を有効にする(!*)

レイヤー名拡張機能のうち、!と*による制御を有効化します。
この設定は、PPgBaseControl内でのレイヤー表示処理にのみ使用されます。(ExButtonsや目パチ口パクには影響しません)

記号 内容
!

そのレイヤーを強制表示化させます。親フォルダーを無効にすると非表示にすることができます。

レイヤー名の先頭に付ける必要があります。

*

同じフォルダーに所属するレイヤーに排他的制御属性を付与します。これにより、*付きレイヤーを有効にすると、他の*付きレイヤーは無効化されるようになります(レイヤーが切り替わります)。予期せぬ重複表示を防ぎ、面倒な表示解除の手間を減らすことができます。

レイヤー名の先頭に付ける必要があります。

反転制御を有効にする(:Filp)

イメージの反転と連動して、対応するレイヤーの可視状態が切り替わるようになります。
この設定は、PPgBaseControl内でのレイヤー表示処理にのみ使用されます。(ExButtonsや目パチ口パクには影響しません)

記号 内容
:flipx

立ち絵を左右反転するとレイヤーの可視状態(表示/非表示)が切り替わるようになります。この機能は同じフォルダー内に同名のレイヤーを2つ保存し、片方だけに:flipxを付けることで有効になります。

この機能は『イメージの反転』と連動して動作します。他のコントロールで左右反転した場合は反映されません。

レイヤー名の末尾に付ける必要があります。

:flipy

:flipxの上下反転版です。

レイヤー名の末尾に付ける必要があります。また、:flipxと併用することも可能です。

:flipxy

:flipxの上下左右反転版です。

レイヤー名の末尾に付ける必要があります。また、:flipxや:flipyと併用することも可能です。

レイヤーリスト

PSDファイルの各レイヤーを一覧化することで、可視状態の操作が可能になります。
これにより、ExButtonsに登録していないレイヤーも操作対象になります。

レイヤーリストを有効化

クリックすると、PSDファイル内の各レイヤーを一覧化します。

表示された各レイヤーはチェックボックスを操作することで可視状態が切り替わります。
また、各レイヤー名の先頭に付く記号は、そのレイヤーの状態を表しています。

記号 意味
📁(フォルダーのマーク) フォルダーです。
🟫(茶色い四角) レイヤーです。
💠(青いひし形) 上位のフォルダーが有効で、表示経路が通っていることを示します。
🔺(赤い三角) 上位のフォルダーが無効で、表示経路が通っていないことを示します。
🔸(オレンジ色のひし形) このレイヤーのクリッピング先が無効になっていることを示します。
.(ピリオド) このレイヤーの階層の深さを示しています。
▮(長方形) このレイヤーのクリッピングが有効であることを示しています。

レイヤーごとのチェック操作

レイヤーリストのチェックを切り替えると、そのレイヤーの可視状態が更新されます。

ただし実際にはそのレイヤーだけが切り替わるのではなく、親フォルダーの有効状態、クリッピング先の有効状態、!や*の関係、:flip系の関係などにより、最終的な表示状態が再計算されます。

Links

PSDファイルの選択、PSD差し替え時のレイヤー状態の扱い、EditNo、その他の情報などを管理します。

File

このクリップで扱うPSDファイルへのパスです。
パスを変更することで別のPSDファイルへ差し替えることができます。

ブラウズ

クリックするとダイアログが開き、PSDファイルを選択できます。
立ち絵を別のPSDファイルへ差し替える際に使用します。

レイヤーの表示/非表示を引き継ぐ

新しいPSDファイルを選び直した際に、Layerタブの『レイヤーリスト』にて設定されている、各レイヤーの可視状態を引き継ぐか否かを選択します。

チェックの有無 ブラウズでPSDを選び直した際の動作
有効 新しいPSDファイルに対し、Layerタブの『レイヤーリスト』で設定されている可視状態を適用します。
無効 『レイヤーリスト』で設定されている可視状態を破棄し、新しいPSDに保存されている状態を再現します。

EditNo

Fuse版立ち絵では、合成を行う前に前回作成したイメージとの差分について事前計算を行い、処理内容を最適化して負荷を軽減する独自のシステムを実装しています。

ただし、同一のPSDファイルの立ち絵を複数同時に画面へ表示すると、内部でイメージの合成が交互に行われるため、前回のイメージと一致しなくなり、一部の最適化機能が損なわれることがあります。

この場合、それぞれの立ち絵クリップに異なる『EditNo』を設定することで、イメージ合成に使用する領域を分離し、複数表示時でも最適化を維持できます。

事前計算による最適化が損なわれるのは、同じPSDの立ち絵が同時に複数表示される時だけです。
異なるPSDの立ち絵が複数表示される場合や、同じPSDの立ち絵が別々のタイミングで表示される場合は正常に最適化されるので、EditNoを分ける必要はありません。

EditNoを設定すると使用するメモリ容量も増えるため、メモリに余裕が無い場合は注意してください。

ExInformation

高度な情報をまとめる折りたたみ見出しです。通常の編集では触る必要はありません。

PPgVersion

PPgarageにて立ち絵を作成した場合、作成時のPPgarageのバージョン情報が表示されます。
このノードを手動で設置した場合はNoneになります。

PPgBaseControlを単独ノードとして使う

PPgBaseControlは、PPgarageが生成するFuse版立ち絵マクロの一部として使われるのが基本ですが、関連Moduleが導入済みの環境であれば、単独ノードとして配置して使うこともできます。

前提

  • PPgarage付属のModuleがDaVinci Resolveにインストールされている必要があります。
  • Moduleがインストールされていない環境では、PPgBaseControlを配置しても正常に動作しません。

基本的な使い方

  1. Fusionページを開きます。

    メディアプール領域で右クリックして、『新規Fusionコンポジション』を選択すると、新しいFusionコンポジションを作成することができます。

  2. ノードエディターで右クリックし、『ツールを追加』→『PPgarage』→『PPgBaseControl』を選択します。
  3. Linksタブの『ブラウズ』にてPSDファイルを指定します。
  4. 作成したPPgBaseControlノードを出力ノードへ接続します。

PPgBaseControl単体で行えるのは、ベースイメージの作成までです。ExButtonsによる差分切り替えや、目パチ口パクのような連動機能を利用する場合は、PPgExControlやPPgSyncControlも組み合わせて使う必要があります。