Codex で DaVinci Resolve の DCTL を作成してみた(構図確認用グリッド表示)
前回のObsidian用プラグインの作成に味をしめて、DaVinci Resolve用のDCTLを作成してみました。
構図確認用グリッドを表示するDCTLです。映像の上に分割線、交点クロス、対角線、黄金分割、黄金螺旋を重ねて表示できます。表示するものはオプションで選択できます。

DaVinci ResolveのDCTL作成についてはCodex(GPT5.5)の学習量が少ないのか、エラーが多くて修正を重ねる必要がありました。修正といっても、エラーメッセージのスクリーンショットを貼り付けて修正依頼するだけではあるのですが、その分、時間とトークンの消費は多くなります。
それにしても、こんなに簡単に作れるとなると、アイデアが大切になりますね。
ちなみに、DCTL(DaVinci Color Transform Language)とは、DaVinci Resolve向けのスクリプト言語で、独自の色変換や画像処理を実装できます。
簡単に言うと、
LUT = あらかじめ決められた変換表
DCTL = コードで自由に変換を記述できる仕組み
となります。
DCTLでは、
独自のカラースペース変換
フィルムエミュレーション
トーンマッピング
露出補正
色相・彩度処理
偽色表示(False Color)
フォーカスアシスト
構図ガイド表示
波形やマスクの可視化
など、ピクセル単位の処理を自由に実装できます。
言語としては、C言語風のGPUシェーダー言語で、GPU上でリアルタイムに実行されます。
ダウンロード
インストール
DaVinci Resolveを起動し、メニューから DaVinci Resolve > Preferences > Color Management を開きます。
Lookup Tables > Open LUT Folder をクリックして、Resolveが使用しているLUTフォルダを開きます。
`GridOverlay.dctl` を開いたフォルダへコピーします。整理用にサブフォルダを作っても大丈夫です。
DaVinci Resolveに戻り、同じ設定画面の Update Lists をクリックするか、DaVinci Resolveを再起動します。
Colorページでノードを選択し、Effects > DCTL を追加して、DCTLリストから `GridOverlay` を選択します。
コントロール

`GridOpacity`: オーバーレイの不透明度です。初期値は`0.5`です。
`LineWidth`: グリッド線、対角線、黄金分割線、黄金螺旋の線幅です。初期値は`2.5`です。
`VerticalDivisions`: 横方向を何分割するかを指定します。`3`の場合、内部の縦線は2本です。
`HorizontalDivisions`: 縦方向を何分割するかを指定します。`3`の場合、内部の横線は2本です。
`OffsetX` / `OffsetY`: グリッド全体を画像幅/高さに対する割合で移動します。
`ShowGrid`: 分割線を表示します。
`ShowCrossPoints`: 分割線の交点にクロスを表示します。
`CrossSize`: クロスの長さです。初期値は`50`です。
`CrossLineWidth`: クロスの線幅です。
`ShowDiagonals`: 2本の対角線を表示します。
`ShowGoldenRatio`: 黄金分割線を表示します。38.2%と61.8%の位置に縦横の線を描きます。
`ShowGoldenSpiral`: 黄金螺旋の近似線を表示します。
`SpiralRotation`: 黄金螺旋の向きを`Rotate0`、`Rotate90`、`Rotate180`、`Rotate270`から選択します。
`GridColor`: 線の色を`White`、`Black`、`Red`、`Green`、`Blue`、`Cyan`、`Magenta`、`Yellow`から選択します。
メモ
`ShowGoldenSpiral`は黄金長方形の四分円を連結した近似表示です。ResolveのDCTL上でリアルタイム表示できるよう、線分への距離判定で描画しています。
DaVinci ResolveのDCTLは無償版で使用すると画面に透かし(ウォーターマーク)が入るため、実質的にStudio版専用の機能となります。
免責事項
本DCTLは現状のまま提供されます。作者は、本DCTLの使用または使用不能によって生じたいかなる損害についても責任を負いません。
本DCTLの動作について正確性や完全性を保証するものではありません。利用者の責任においてご使用ください。
本DCTLは予告なく仕様変更、更新、公開停止される場合があります。
