前回は、scene-referred環境でのACESとCDLの関係を整理しました。

scene → intermediate(CDL) → display(RRT)

このように、3つのレイヤーで考えることで、
補正と見た目の関係が整理しやすくなる、という内容でした。

今回はこの考え方を、Flameでの実際の運用に落とし込みます。

Flameでの基本的な考え方

FlameでACES環境を扱う上で重要なのは、

「データ」と「見た目」を分けて考えることです。

前編で整理した通り、

  • 調整しているデータ → intermediate(CDL)  
  • 見えている結果 → display(RRT)

これらは別のレイヤーです。  

Flameでは、Colour ManagementのViews設定(OCIO View)から表示を切り替えています。

このViewsが、display-referredの見え方にあたります。

CDLはどこで扱うのか

CDLは、intermediate-referredのレイヤーで扱う補正です。

Flameでは、

  • Lookノード
  • またはBatch内の処理

からCDLを適用することができます。

Lookノードに適用することで、データはそのままに、見た目だけをコントロールすることができます。

.cccファイルとCCCIDの運用

CDLを扱う上で有効なのが、

.cccファイルとCCCIDによる管理です。

これにより、

  • ショット単位で補正値を管理
  • 他ツールとの受け渡しが可能
  • 後からの修正が容易

といったメリットがあります。

ただ、FlameではEDLのように自動でショット単位に適用される仕組みがありません。

そのため、

  • 手動で適用する
  • またはスクリプトで対応する

といった運用が必要になります。

補足:.cccファイルからLookノードへ展開するPython運用

CDL(.edl)が存在しない場合、

  • 別のアプリケーションから.cccのみデリバリーされる
  • ショット単位でのCDL適用が必要になる

といったケースでは、Flame標準の機能だけでは対応が難しくなります。

この対応として、.cccファイルからCDL情報を取得し、Lookノードに展開するPythonを用意しています。

具体的には、

  • CCCIDとショット〜のsource_nameを照合
  • 該当するCDL値(Slope / Offset / Power / Saturation)を取得
  • 既存のLookノードがあれば再利用
  • Lookノードが無い場合は新規追加
  • 新規追加時には、あらかじめACEScctを設定して保存したLookノードセットアップを読み込み
  • その上でCDL値を反映

といった処理を行うことで、
Flame上でショット単位のCDL適用を実現しています。

今回のケースでは、DaVinci Resolveから出力した.cccを扱うため、
Look Working Spaceは、ACEScctで統一します。

つまり、

  • CDL値はショットごとに変わる
  • Look Working Spaceはプロジェクト単位で決める

という役割分担です。

まとめ

FlameでのACES運用を整理すると、

  • CDLはintermediateの補正
  • 最終的な見た目はdisplayで決まる
  • Viewerはその結果を確認するためのもの

という関係になります。

重要なのは、

見えているものと、実際に扱っているデータを分けて考えることです。

この考え方をベースにすることで、

  • ミスの防止
  • 柔軟な修正
  • 他工程との連携

がスムーズになります。

また、Look Working Spaceはショットごとではなく、
プロジェクト単位でノードセットアップとして管理しておくと、運用がシンプルになります。

なお、.cccファイルからCDLをショット単位で適用するPython Hookについては、
別記事でまとめます。