CG 日記

Tips

DaVinci Resolve で編集したタイムラインを After Effects に読み込む方法

DaVinci Resolve でカット編集したデータを、After Effects に読み込む方法について書いてみます。.xmlや.aaf形式を使用すると DaVinci Resolveで編集したタイムラインをAfter Effectsに読み込むことができます。

 

どうしてAfter Effectsを使用するの?

DaVinci Resolveはカット編集からコンポジットまで幅広い工程をカバーしたソフトです。しかし、自分の作業環境としてはAfter Effectsの方が便利なプラグインが充実していて、エフェクトの品質やテキスト等のアニメーション作成もAfter Effectsの方が快適です。
このためAfter Effectsでは作業しにくいカット編集や音のタイミング合わせをDaVinci Resolveで行い、編集したタイムラインをAfter Effectsに読み込んでアニメーションやカットを作り込むというワークフローが理想的です。

 

DaVinci Resolve で編集したデータを After Effects に読み込む手順

1. DaVinci Resolve からタイムラインを書き出す

ファイルメニューから「タイムライン」を書き出します。

ファイル / 書き出し / タイムライン

保存するファイル形式は「FCP 7 XML V5ファイル」または「AFFファイル」を使用します。

どちらも同じようなタイムラインデータを出力しますが、「FCP 7 XML V5ファイル」は不完全ながらも平面やテキストレイヤーの情報を保存できます。最初は「FCP 7 XML V5ファイル」を試して、駄目なら「AFFファイル」を試すのがいいかもしれません。

この.xmlにはメディアへのファイルパスや、トランジションなどタイムラインの情報が保存されています。

 

デリバーのPremiere XML

デリバーページには「Premiere XML」の設定があります。デリバーを使用するとビデオやオーディオをレンダリングし、レンダリングしたファイルへのファイルパスを.xmlに出力します。DaVinci Resolveでエフェクトを適用した状態のデータを他のソフトに渡したい場合はこの設定を使うと便利です。

 

2. After Effectsにタイムラインを読み込む

After Effectsでタイムラインデータを読み込むには「Pro Import After Effects」を使用します。

 ファイル / 読み込み / Pro Import AfterEffects

 

Pro Import After Effects ダイアログで.xmlを選択してImportすると、プロジェクトにコンポジションが追加されます。

 

コンポジションを開くと、編集済みのタイムラインが読み込めています。

 

3. After Effectsに読み込めるパラメータ

「FCP 7 XML V5ファイル」を使用した場合に読み込めるパラメータを軽く試しました。

DaVinci Resolve から読み込める情報は位置、回転、スケール、不透明度、各パラメータのアニメーション。再生速度、クロスディゾルブ、テキストレイヤー、単色レイヤーを読み込めるようです。
ただしいくつか制限があり、スケールはXYのアスペクトがリンクした状態。テキストレイヤーはテキストが空になる。単色レイヤーは色の設定やクロスディゾルブが無効になるようです。当然ですがブラー等のエフェクトは読み込めません。

DaVinci Resolveのタイムライン。

After Effectsにタイムラインを読み込んだ状態。

 

以前確認したときはDaVinci Resolveで「フリーズフレーム」を設定したクリップを、Premiereに読み込んでプロジェクト保存。PremiereプロジェクトをAfter Effectsに読み込むと「タムリマップ」が適用されたレイヤーとして読み込めていた気がするのですが、DaVinci Resolve 18.5で試すと「フリーズフレーム」に設定したレイヤーが欠けるようです。
「フリーズフレーム」を設定したクリップ欠けを避けたい場合は、Premiereに.xmlを読み込んだ後、再度Premiereから.xml出力した物をAfter Effectsに読み込むといいですが、やや面倒ですね。

軽く編集して、細部をAfter Effectsで作り込むには十分使えそうですね。

Tips

DaVinci Resolve Speed Editor のキー操作

DaVinci Resolve Speed Editorを購入したので、使い方を覚えるためにSpeed Editorの操作まとめを書いてみます。

Speed Editorは、映像編集ソフト「DaVinci Resolve」専用の編集キーボードです。感想等はこちらの記事を見てください。

 

Speed Editor の機能

Speed Editorのキー機能を紹介します。

キー操作

Speed Editorは4種類のキー操作があります。

  • 押す:タイピングの時のようにキーに短くタップして離す。
  • 長押し:キーをタップして押したままにする。
  • ダブルクリック:キーを短く2回叩いて離す。キーキャップ下部に書かれている機能を呼び出します。
  • ダブルクリック長押し:ダブルクリック後にキーを押したままにする。

 

最低限覚えると便利なキー

Speed Editorには使い勝手が微妙な機能や、使わないだろうキーもあります。
カット編集に使用する場合は、最低限以下のキーを覚えておくと便利です。

他に個人的によく使うのがフリーズフレーム Shift + R です。

 

 

サーチダイヤルとナビゲーションキー

 

SOURCE \ TIME LINE

「ソーステープ」「タイムライン」を表示します。カットページでは「ソーステープ」と「タイムライン」を切り替えながらタイムラインに素材を配置するのが編集の基本的な流れになります。

 

「ソーステープ」は読み込んだ素材全てを並んだ状態でビューに表示します。インアウトが設定されてる場合にもう一度押すと、インアウトの範囲内のみ表示できます。ソース全体表示に戻る場合は「ESC」キーを押します。

「ソーステープ」で全てのクリップを再生して確認する場合は「ファストレビュー」を使用すると、クリップの長い短いを考慮して再生できるので、クリップの見逃しがなくなります。

 

SHTL (Shuttle)

サーチダイヤルを回すと角度に応じて再生速度が変わります。
SpeedEditorは1つのサーチダイヤルがジョグとシャトル共有なのでかなり使い難い。

 

JOG

サーチダイヤルで正確にフレームを操作する際に使用します。サーチダイヤル1回転でおよそ3秒進みます。

 

SCRL (スクロール)

JOG の高速版です。サーチダイヤルを回すとフレームではなく秒で進めることができます。

 

 

イン/アウト点

 

IN / OUT

クリップのイン/アウト点を設定します。

 

CLR

ダブルクリックするとイン/アウト点をクリアします。

 

 

カットページ編集ツール

 

SMART INSRT

スマートインサートはスマートインジケーターの位置に新しいクリップを挿入します。

 

CLIP

ダブルクリックするとInとOutを無視してクリップが追加できるらしい (18.5では動作しなかった)。

 

APPND

アペンドは新しいクリップを常に最後のクリップの後ろに追加します。

 

CLIP

ダブルクリックするとInとOutを無視してクリップが追加するらしい (18.5では動作しなかった)。

 

RIPL O/WR

クリップを置き換えます。

 

CLOSE UP

クリップを約20%~40%拡大してタイムラインに追加します。AIによる顔検出が行われます。インタビュー用。

 

YPOS

長押し+サーチダイヤルを回すと、クリップのY位置を調整できます。

 

PLACE ON TOP

クリップをクリップの上に追加します。ピクチャインピクチャ等で使用できます。

 

SRC O/WR(ソース上書き)

マルチカム用です。キーを押すとタイムコードに応じて適切な位置にクリップを配置します。

 

 

トリムツール

 

TRIM IN / TRIM OUT

長押し+サーチダイヤルを回すと、スマートインジケーターのイン/アウト点をトリムできます。Sourceモードで長押し+サーチダイヤルを回すと、Viewer上のクリップのIn Pointを調整できます。

Ripple ONで隙間をつめるか指定できます。

 

ROLL

長押し+サーチダイヤルを回すと、タイムラインの尺を変更せずトランジションポイントをトリムします。

 

SLIDE

ダブルクリック長押+サーチダイヤルを回すと、クリップをタイムライン上でスライドします。

 

SLIP SRC / SLIP DEST

長押し+サーチダイヤルを回すと、ソースのインアウトの位置を移動できます。SRCは前のクリップ、DESTは後ろのクリップが編集対象になります。

4wayマルチビューにソースクリップと配置先クリップのイン点とアウト点が表示されます。

 

TRANS DUR(トランジションの長さ)

長押し+サーチダイヤルを回すと、トランジションの長さを変更できます。

 

SET

ダブルクリックすると、現在のトランジションの長さをデフォルトのトランジションの長さとして設定できます。

 

トランジションキー

 

CUT

トランジションを削除します。

 

DIS(ディゾルブ)

1秒のディゾルブを追加します。

 

SMTH CUT(スムースカット)

スムースカットトランジションを追加します。
スムースカットはジャンプカットを目立たないようにする特殊なトランジションで、カットの両側に含まれる同じ特徴をマッチさせモーフィングします。

 

トップセンターキー

 

ESC

キーボードのEscapeキーと同じ働きをします。カットページでは、選択したカメラを同期ビン内で消去するのにも使われます。

 

UNDO

ダブルクリックすると、最後に行った操作を取り消すことができます。
複数回取り消しするには、再生ヘッドを移動してダブルクリックする必要があります。

 

SYNC BIN

キーを押すと同期ビンが開きマルチカメラ編集ができます。

 

AUDIO LEVEL

長押し+サーチダイヤルを回すと、クリップの音量を調整できます。ミュートしたい場合に便利。

 

MARK

ダブルクリックするとマーカ ーを追加します。ダブルクリック長押しすると、サーチダイヤルを回してマーカーを追加する前に色を設定することができます。
トリプルクリックすると、マーカーの編集ダイアログを表示します。

 

FULL VIEW

ビューアーをフルビューモードで表示します。もう一度押すと通常モードに戻ります。

 

RVW

ダブルクリックすると修正した編集点から再生します。

 

TRANS

長押し+サーチダイヤルを回すと、使用可能なトランジションが表示されます。サーチダイヤルを回してトランジションを選択できます。

 

TITLE

ダブルクリック長押し+サーチダイヤルを回すとフォントを変更できます。

 

SPLIT

クリップをカットします。複数のトラックを使用している場合、カットは全クリップに影響します。
再生ヘッドがスプリット上にある場合、キーを押すとスプリットが解除され結合されます。

 

MOVE

長押しすると選択したクリップをタイムライン上で移動できます。

 

SNAP

サーチダイヤル専用の「スナップ」モードが有効になります。タイムライン上の編集点に再生ヘッドがスナップします。

 

Viewer Resize

ダブルクリック長押しすると、サーチダイヤルを使ってビューアのUIの高さを変更できます。

 

RIPPLE DEL(リップル削除)

キーを押すと選択したクリップを削除します。
クリップが選択されていない場合、再生ヘッド下のクリップを削除します。
Ripple ONで隙間をつめるか指定できます。

 

 

カメラキー、ライブ上書きキー、再生バー

 

LIVE O/WR(ライブ上書きモード)

キーを押すと「ライブ上書きモード」 になります。キーのLED点灯は「ライブ上書き」モードを示します。

通常はクリップを配置後にトランジションを設定しますが、「ライブ上書き モード」ではマルチカムを使用しながらトランジションが設定された状態でクリップを配置できるようになります。

 

RND(ランダムモード)

ダブルクリックするとランダムにカメラとランダム尺でクリップを追加します。

 

VIDEO ONLY \ AUDIO ONLY

キーを押すとソースクリップのビデオのみ、オーディオのみを追加して編集できます。

 

STOP/PLAY

タイムラインやソースメディアの再生を開始・停止します。

 

CAM 1-9

「同期ビン」を表示した状態でキーを押したままサーチダイアルを回すと、タイムコードが同期した状態でクリップを追加できます。

カットページでは各カメラキーで対応するカメラアングルを同期ビン内で選択できます。
エディットページでは、マルチカムクリップのカメラアングルを切り替えるできます。

 

 

参考

DaVinci Resolve 18.5マニュアル。907ページからSpeed Editorの解説があります。
https://documents.blackmagicdesign.com/jp/UserManuals/DaVinci_Resolve_18_Reference_Manual.pdf?_v=1690182010000


Tips

DaVinci Resolve Speed Editor 買ってみた

DaVinci Resolve Speed Editorを購入したので、使ってみた感想を書いてみます。

Speed EditorはDaVinci Resolve専用の編集キーボードです。DaVinci Resolve Studioのライセンスが付属していて、Bluetooth接続できるのも面白いです。

USB-Cケーブルや、DaVinci Resolve Studioのアクティベーションキーが書かれたカードが付属しています。

 

DaVinci Resolve Studio とは

DaVinci Resolve Studioは映像の編集、カラーコレクション、VFX、モーショングラフィックス、オーディオポストプロダクションをひとつに統合したソフトウェアです。

公式サイト
https://www.blackmagicdesign.com/jp/products/davinciresolve

一般的に映像制作では各工程ごとに専用のソフトがあります。例えばコンポジットはAfter EffectsやNuke。編集はPremiere、FinalCutPro、Avid。DAWはPro ToolsやCubase。
DaVinci Resolveは、これらの工程全てに対応できる欲張りセットのようなソフトです。有償版は最近では珍しい買い切りのライセンスで、毎年行われるメジャーアップデートが無料です。

DaVinci Resolveには有償版と無償版の2種類があります。無償版でも期限なし、商用利用可能、4Kまで出力可能と、有償版の95%以上の機能が開放されています。有償版と無償版の比較はこちら

 

Speed Editor の価格

Speed Editorの定価は現在 ¥57,980 (税込)です。Speed EditorにはDaVinci Resolve Studioのライセンス  ¥42,980 が付属しているので、Speed Editorの価格は実質1.5万円です。

公式サイト
https://www.blackmagicdesign.com/jp/products/davinciresolve/keyboard

家電量販店やネットショップでは少し安く購入できます。私は2023年3月頃にヨドバシで ¥47,950 で購入しました。

 

Speed Editorの価格は何度か変わっています。発売直後はDaVinci Resolveのライセンスが付属していませんでした。2021年に$100値上げされてDaVinci Resolveのライセンスが付属するようになりました。2022年後半からは円安の影響で価格が変更されています。

最も安く買えたのはSpeed Editorプレゼントキャンペーンで、DaVinci Resolve Studio 17 ¥38,778 を購入するとSpeed Editorが無料で付いてきていたようです。

 

Speed Editorの感想

Speed Editorを軽く使ってみた感想です。

ポジティブ
  • カット編集、トリムが素早くできる。
  • メタルのサーチダイアルは重量感があって触り心地がよい。
  • 専用デバイスが好きなので使っていてテンション上がる。
  • Bluetoothで使えるのが便利そう(有線でしか使ってない)。
ネガティブ
  • ジョグとシャトルが分かれてないので、ジョグが使い物にならない。
  • サーチダイアルにノッチがないので、回転を止めたときにフレームが微妙に動いてしまう。
  • 一般的なPC用キーボードに比べてキーやフレームのプラスチックが安っぽく、物を落としたら簡単に割れそう。
  • DaVinci Resolve以外で使用できないのが残念。

基本的には使用頻度の高いキーがまとまってるので、カットやトリムが素早くできて便利です。
DaVinci Resolve専用のニッチなデバイスと考えると妥当な価格だとは思いますが、使い勝手を損ねるコスト削減も感じます。例えばジョグとシャトルが1つのダイヤルで操作するため、15°に角度を維持したり、0°に戻したりが直感的にできません。
サーチダイアルにノッチ (マウスホイールのようにカチカチと回転がスナップする機構) がないので、1フレームでピタリと止まりません。この使い勝手が気になる人は多い気がします。

ノッチがないのでダイアルを回すと勢いよく回り続けてしまう。1フレームだけ移動したいときに、慣性で微妙に動くことが多い。

DaVinci Resolve Studio を購入するついでにSpeed Editorもゲットしてみるか。くらいのゆるい期待感で購入して、便利に使えたらラッキーくらいの感じがいいと思いました。悪くないけどダイヤルが絶賛するほどは使いやすくなく、60~70点くらいのデバイスです。
SpeedEditorのキーを見ずに押せるようになるほど使用頻度が高くないので、慣れてる左手デバイスにショートカットを設定しても、ある程度効率化できる気がしました。

また、Speed EditorをAfter EffectsやPremiereなど他のソフトでも使用できれば便利だと思いますが、現状は難しいようです。DaVinci ResolveとSpeed Editorは一定間隔で暗号通信してるようで、Windowsでは完全にDaVinci Resolve専用です。
他のソフトでも使用したい場合は、Shuttle PROのようなデバイスの方がいいかも知れません。

 

Speed Editorで何ができるのかは、キー操作のページを作ったので見てください。

 

なぜ DaVinci Resolve ?

DaVinci Resolveを購入した理由を書いておきます。たまにPremiereを使用して編集する機会があるのですが、昔からPremiereが使いにくいと感じていました。

Premiereは普通に映画の編集にも使用されているので、ソフトとの相性や便利な機能を知らないだけだと思うのですが、カット編集したいだけなのにサクサク編集できません。
また、それほど本格的な編集でなくてよいので、簡単に音の編集もしたいと思うことがあるのですが、Premiereはオーディオ系エフェクトが弱いように感じます。

以上の2点から何かいい編集ソフトないかなと探していました。DaVinci Resolveはカット編集が直感的に使えたのと、オーディオ系のエフェクトが多いのがよさそうに感じました。
あとは有償版にしかないAI機能が気になったのと、専用キーボードのSpeed Editorに引かれたというのもあります。専用デバイスはロマンがあっていいよね。

また、DaVinci Resolveに搭載されているノードベースのコンポジット機能「Fusion」は、元々eyeon Softwareが開発していたスタンドアロンのソフト「Digital Fusion」です。2000年前後はAfter Effectsと競合するコンポジットソフトが複数あり、Fusionもそんなソフトの1つでした。
2014年にeyeon SoftwareがBlackmagic Designに買収されてしばらく併売されていましたが、2018年にDaVinci ResolveにFusionが統合されました。
一時期はFusionとLightWaveをバンドル販売していたので、元LightWaveユーザーとしては懐かしいソフトでもあります。

AI系の機能は全部確認できてませんが、Depthはフリッカーが多く想像通り微妙な品質で、動画で使用するのはまだ早いかなという印象です。
Fusionは標準搭載のエフェクトも多く、OpenFXにも対応しているのでAfter Effectsでメジャーなプラグインの多くはDaVinci Resolveでも使用できそうです(OpenFX版を買い直す必要があります)。

USD対応など3Dモデルの読み込みにも積極的なので、基本はカット編集に使いつつ3D関連の成長を見守ろうかなと思ってます。


Tips

modoでCryptomatteをレンダリングする方法

modoでCryptomatteをレンダリングする方法について書いてみます。modo 14.2でmPathがCryptomatteに対応しました。Cryptomatteを使用するとAfter Effectsでマテリアル単位のマスク作成が簡単にできるようになります。

■ サンプルファイル(xlo)
■ サンプルファイル(exr)

 

Cryptomatte とは

Cryptomatteは映像スタジオの「Psyops」がSIGGRAPH 2015で発表したオープン標準のIDマット技術です。モーションブラー、透明度、被写界深度をサポートしたマットを自動的に作成できます。DeepDataに比べてはるかに高速で軽量というのが特長です。

CGは3Dソフトでレンダリングした様々な画像を、AfterEffectsやNukeのようなコンポジットソフトで合成して最終的な映像にするのが一般的です。コンポジット段階ではオブジェクトやマテリアル単位で色を調整したい場合があります。
画像の中のオブジェクトやマテリアルで色を調整したい場合、昔からある方法だと白黒のマット(マスクやアルファと呼ぶこともある)をレンダリングして画像を編集します。しかし、オブジェクトやマテリアル数が100や1000を超えるシーンだと、マットを作成するのも手間がかかります。

Cryptomatteを使用すると、事前にオブジェクトやマテリアルにマット用のIDを設定する必要がなく、自動的にIDを持ったマットを作成できるのが便利です。また、独自形式の画像ファイルフォーマットではなく、オープン標準の「OpenEXR」を使用しているのも特長です。

同じような物だと RLAファイルRPFファイルがあります。

 

Cryptomatteのレンダリング方法

modoでCryptomatteを使用するには、いくつかのルールがあります。

  1. レンダラーに「mPath」を使用する
  2. シェーダーツリーに「Cryptomatte Output」 を追加する
  3. レンダリングに「アニメーションをレンダー」を使用する

 

1. レンダラーに「mPath」を使用する

Render アイテムでレンダラーを「mPath」を設定する必要があります。

 

2. シェーダーツリーに「Cryptomatte Output」 を追加する

シェーダーツリーに「Cryptomatte Output」を追加します。

 

クリプトマットのメニューには「Cryptomatte ID Output」や「Cryptomatte Coverage Output」もありますが、追加する必要はありません。「Cryptomatte ID Output」「Cryptomatte Coverage Output」はレンダリング時に自動的に使用されます。

 

3. レンダリングに「アニメーションをレンダー」を使用する

Cryptomatte をレンダリングするには「アニメーションをレンダー」を使用する必要があります。

 

保存形式に「レイヤー画像」を使用すると、複数の「レンダー出力」を1つのexrファイルにまとめて保存できます。

 

「画像シーケンスの保存」ダイアログで、ファイルの種類を「レイヤーOpenEXR ハーフ 16ビット」または「レイヤーOpenEXR 浮動小数点 32ビット」を選択して「保存」します。レンダリングが実行されてexrファイルが出力されます。

 

Cryptomatteレンダリングの注意点

modoのCryptomatteやEXRには、レンダリングに関する謎な挙動があります。謎にはまると時間が溶けるので注意点を書いておきます。

 

Cryptomatteの制限

Cryptomatteはオブジェクトマットとマテリアルマットの2種類レンダリングできるレンダラーがあります。modoではマテリアルマットのみをサポートしています。また、modoは恐らくマテリアルの「透明度」に対応していません。

Cryptomatteの「透明度」はaiStandardSurfaceでいう所のGeometryのOpacityのことです。Transmission(屈折)ではないです。下の画像はArnoldのOpacityを使用したものです。

 

LPEラベル

同じ質感のマテリアルだけど、テクスチャを使用する等の理由でマテリアルが別になっている場合があります。「LPEラベル」を使用すると、異なるマテリアルを1つのマットにできて便利です。

 

シェーディングエンジン「NVIDIA CUDA (GPU)」は使用不可

modo 16.1v7の段階では、シェーディングエンジンの「NVIDIA CUDA (GPU)」は使用できません。「NVIDIA CUDA (GPU)」を使用すると空のCryptomatteを出力します。

 

EXR ハーフ 16ビットを使用するとCryptomatteが別になる

modoはファイルの種類が16ビットと32ビットの時で、ファイルの出力構成が違います。
保存形式が「レイヤー画像」の場合、通常は全ての「レンダー出力」が1つのファイルに格納されるのが正しい動作ですが、16ビットでCryptomatteを使用した場合は別ファイルとして保存されます。

16ビット

Cryptomatteが別々のファイルで出力されます。恐らくEXR出力の不具合です。

32ビット

1つのファイルにCryptomatteも保存されます。

 

「アニメーションをレンダー」以外は使用できない?

マニュアルには以下のような記述があります。「アニメーションをレンダー」を使用しなくてもEXRを保存できますが、CryptomatteとFinal Color Outputが別ファイルになります。

「レンダー F9」「現在のビューをレンダー F10」「選択アイテムをレンダー Shift + F9」コマンドも使用できます。これらのコマンドは、Cryptomatte Output Output Filenameプロパティで指定された場所に.exrを生成します。
しかし、Render Animationは、Cryptomatte出力とFinal Color Outputの両方を含む.exrイメージを生成でき、より理想的です。

 

レンダーウィンドウからは保存できない

レンダーウィンドウからはCryptomatteを保存できません。

  • Cryptomatteが保存されない
  • Cryptomatte ID Output、Cryptomatte Coverage Outputのような不要なデータが保存されてしまう

 

レンダリング用のコマンド

毎回ダイアログを表示するのが面倒な場合は、以下のようにレンダリングコマンドでレンダリングできます。

render.animation "C:\フォルダ名\ファイル名_" openexrlayers32

 

Final Color Output が空になる場合がある

原因はわからないのですが、EXRを使用した場合だけ Final Color Output が保存されなくなり、After Effectsに読み込むと何も描画されてない状態になる場合がありました。

この問題が発生した場合はシェーダーツリーで「Final Color Output」を削除して、新規に「Final Color Output」を作成したら問題が解決しました。

 

After EffectsでCryptomatteを使用する方法

After EffectsでCryptomatteを使用するのは簡単です。

1.EXRを読み込んでCryptomatteエフェクトを適用します。画像にCryptomatteが含まれていればカラフルな色が表示されます。

2.Outputを任意に変更します。

3.Cryptomatteエフェクトを選択した状態で、レイヤーをクリックするとマスクを選択できます。Shift + クリック で追加選択、Ctrl + クリック で選択解除できます。

 

オブジェクトやマテリアルにIDを設定することなく、レイヤーをクリックするだけで直感的に画像をマスクできて便利ですね。

modoでAmbient Occlusion、Depth、Reflectionなどの「レンダー出力」を追加した場合は、「レンダー出力」を1つのEXR内に保存できます。EXR内のレイヤーはEXtractoRエフェクトを使用して取り出すことができます。

 

 

mPathの将来性があやしい

ここからは余談です。mPathはいろいろ制限があるのであまり使ってませんでした。Cryptomatteに対応してるしそろそろ使ってみようかと思ったのですが、将来性があやしくなってきました。

modo 14.2で追加されたCPU/GPUのハイブリッド パストレースレンダラー「mPath」ですが、modo 16.1では念願のシェーディング計算がGPUに対応しました。
現在はSSSを使用するとレンダリングアーティファクトが発生したり、Depthが正常にレンダリングできなかったり、プロシージャルテクスチャが使用できないなど問題や制限があります。

しかし、シェーディングのGPU計算は高速です。Arnoldのように「ライトパス出力」に対応していますし、modo 17ではmPathのプレビューに対応した「新しいレンダリングウィンドウ」の搭載が予定されています。今後mPathの改善が進めば使用頻度が上がりそうだと思ってました。

だが急展開。今年2月のライブストリームでmPathの開発者でありLuxology創設者の最後の一人Allen HastingsさんがFoundryを辞めたことがわかりました。
ライブストリーム内でmodoプロダクトマネージャーのGregさんは、mPathの開発は一時保留、Modoが外部のレンダラーとより簡単に接続できるようにする新しいAPIの開発を予定していると説明しました。具体的な方向性はmodo開発チームとのミーティングで話し合うとのことでした。

そのミーティングの結果かわかりませんが、「新しいレンダリングウィンドウ」を開発し、ライブストリームで「新しいレンダリングAPI」やHydraサポートについて語っていたGiorgeさんが6月にFoundryを辞めてしまったようです。

実際のところFoundry内部で何が起きているのかわかりませんが、mPathがもう少しで実用的なGPUレンダラーになりそうなタイミングで開発がストップしてしまいそうで残念です。最低限使えるようにバグ修正されれば限定的に使用できるのですが、今後mPathがどうなるのかだいぶ不安な状態になってます。

Cryptomatte自体は便利な物なので、用途に応じて使っていきたいですね。

 

参考

Tips

modoのコマンド演算子

modoのSlackでコマンドの演算子をWarren Lさんがまとめて投稿してたのでメモしておきます。
コマンドを実行するときに構文や演算子を追加すると、自動化で便利に使えたりします。

https://foundry-modo.slack.com/archives/C6F0GP7FG/p1690397316561629?thread_ts=1690395914.119099&cid=C6F0GP7FG

 

演算子 説明
? クエリー
?+ ブール値の状態を切り替える tool.attr prim.cube uvCompensation ?+
?+2 nを加算 tool.attr prim.cube segmentsX ?+2
?*3 n倍する tool.attr prim.cube segmentsX ?*3
?+> 粗くステップアップ(Shift) tool.attr prim.cube sizeX ?+>
?-> 粗くステップダウン (Shift) tool.attr prim.cube sizeX ?->
?+< ファインステップアップ (Ctrl) tool.attr prim.cube sizeX ?+<
?-< ファインステップダウン (Ctrl) tool.attr prim.cube sizeX ?-<
?min 最小値に設定 mesh.smoothMode ?min
?max 最大値に設定 mesh.smoothMode ?max
?(a|b|c) リストを循環させる view3d.showGrid state:?(no|inactivewp)
! ダイアログを表示しない !vert.join true
!! ダイアログとサブコマンドのダイアログを抑制 !!@pp_strayvert.py

こういう情報、SDKかドキュメントのどこかにまとまってるのかな?

Tips

modoでプロシージャルな鎖を作る方法

modoでプロシージャルな鎖(リンクチェーン)を作る方法について書いてみます。鎖はアクセサリーや駐車場スタンドなど身近でよく使われているので、CGで作る機会の多い定番の題材です。

modoには鎖を表現する方法がいくつかあります。どのような作り方があるのかいくつか作り方を紹介してみたいと思います。基本的にはReplicatorを使用して、鎖の輪をカーブに沿って配置します。

 

輪のペアをカーブに沿って配置する方法

輪2つを1アイテムにした物を、Replicatorを使用してカーブに配置する方法です。どの3Dソフトでも実現できる一番標準的な鎖の作り方です。

■ サンプルファイル

 

スケマティックはこんな感じです。

カーブをCurve Particle Generatorに繋いで、Replicatorで輪を複製する単純な作り方です。

この方法のメリットは作るのが簡単なことです。
デメリットは輪が2つで1アイテムなので、カーブが輪の長さよりも鋭角に曲がった場合に、輪の繋がりが破綻しやすいです。

Foundryフォーラムではdanperkさんが、輪をプロシージャルにしてアセンブリにまとめたファイルを公開しています。自分用に鎖アセンブリの作成を作る場合に参考になると思います。

 

1つの輪をカーブに沿って配置する方法 (Particle Step Modifier篇)

1つの輪をReplicatorを使用してカーブに配置する方法です。Particle Step Modifierを使用して輪を1つおきに90度回転します。

■ サンプルファイル

 

スケマティックはこんな感じです。

輪を回転する処理はParticle Step Modifierの「回転 Z」を使用します。
カーブの長さに応じて自動的に「回転 Z」を設定したいので、Curve Particle Generatorの頂点数をArray Countを使用して数えて、輪が90度回転するように掛けた値を「回転 Z」に入力します。

この方法のメリットは輪が1つなので、カーブが鋭角に曲がっても破綻しにくいことです。
デメリットはParticle Step Modifierの計算誤差が蓄積する影響なのか、カーブの始点から終点にかけて微妙に輪がねじれてしまいます。

 

1つの輪をカーブに沿って配置する方法 (Array篇)

1つの輪をReplicatorを使用してカーブに配置する方法です。Array Operatorを使用して輪をを1つおきに90度回転します。

■ サンプルファイル (modo 15)

 

スケマティックはこんな感じです。

輪を回転する処理にArrayノードを使用します。Curves to ArrayはCurve Particle Generatorのように距離を使用してカーブを細分割できないので、Path Constraintでカーブの長さを輪の長さで割って「ステップ」を自動的に計算するようにします。

Array Operatorは配列を編集して出力するためのノードです。「インデックス」を剰余ノードで2で割り、1つおきに配列を選択し90を掛けて、Matrix From Eulerの「入力Z」に接続します。Matrix Composeに「ワールド回転」と「エレメント(出力)」を接続してマトリクスを構築し「エレメント(入力)」に戻します。これで配列を1つおきに90回転したことになります。

Array Operatorの「出力」をParticle Generatorの「ユーザー配列」に接続して、Replicatorで使用できる頂点情報にします。最後のParticle Modifierはチェーン全体のひねり用で、なくても問題ありませんが、あると少し調整の幅が広がりそうです。

この方法のメリットは輪が1つなので、カーブが鋭角に曲がっても破綻しにくく、Particle Step Modifierを使用したときのようにねじれも発生しません。
デメリットはArrayを使う必要があるので構築するのが大変です。

このArrayの使い方は、Foundryフォーラムではkhellstrさんが公開していたファイルを参考にしています。

 

Arrayを使うとカーブを編集したときに、頂点数が変化して終端の輪の角度が縦横激しく変化してるのに気がつきます(画像右側)。

こういう場合は、Curves to Arrayの「ステップ」を偶数か奇数に固定すると安定ます。

鎖の間隔を計算する部分で、長さを剰余ノードで2で割り、条件式ノードで1より大きい場合は0を、1より小さい場合は1を出力することで、「ステップ」を奇数に固定しています。

 

2種類の輪をカーブに沿って配置する方法

縦横角度の違う2種類の輪を、Replicatorを使用してカーブに配置する方法です。パーティクルアイテムマップを使用して、角度の違う輪を1つおきに配置しています。

■ サンプルファイル

 

スケマティックはこんな感じです。

カーブをCurve Particle Generatorで細分割した後、Merge Meshesでカーブを結合します。Select by PatternとSet Weightで1頂点おきにウェイトを設定します。
設定したウェイトをRemap Weightでパーティクルアイテムマップに変換します。

パーティクルアイテムマップによって、Replicatorで複製されるアイテムが1つおきに切り替わります。

この方法のメリットは輪が1つずつのアイテムなので、カーブが鋭角に曲がっても破綻しにくいです。2つのアイテムを使っているので、デザインの異なる輪を配置したい場合に便利です。
デメリットはMerge Meshesを使用してるので、頂点数が多くなるとパフォーマンスが下がる可能性があります。

 

たまにはよくある題材と言うことで、鎖の作り方をいくつかご紹介しました。用途に応じて試してみてください。

カーブに輪を配置する関係で、輪が1つの場合でもカーブが鋭角に曲がった場合、どうしても輪がずれる場合があります。輪が完全にずれないようにしたい場合は、鋭角な部分にだけベベルを適用するような処理を追加するとうまく行くかもしれません。

 

参考

カーブを再編集できなくてもOKという人向けには、昔ながらのカーブ複製ツールがあります。

 

昔からあるCurve Particle Generatorのみを使用する方法。

 

Dynamic Curveで鎖を物理計算。

Tips

After Effectsのタイムライン ショートカット操作

After Effectsのタイムライン操作に関するショートカットをまとめたページです。

After Effectsのタイムラインには様々な便利機能があるのですが、メニューにコマンドが表示されていないくて、ショートカットからしか使用できない機能がいくつかあります。ここではメニューにない操作や、普段便利に使ってるショートカットを紹介したいと思います。

 

タイムライン操作

カレントフレームの移動

1 フレーム進む / 戻る

  • Ctrl +
  • Ctrl +

10 フレーム進む / 戻る

  • Ctrl + Shift +
  • Ctrl + Shift +

 

インポイント / アウトポイントに移動

  • Ctrl + Alt + Shift +
  • Ctrl + Alt + Shift +

 

キーフレーム / レイヤーマーカー / ワークエリアに移動

  • J
  • K

 

タイムラインをズームイン / ズームアウト

  • =
  • ^

 

1フレーム単位にズームイン / 全体表示にズームアウト

  • ;

 

ワークエリアの開始点 / 終了点を設定

  • B
  • N

 

選択レイヤーに合わせてワークエリアを設定

  • Ctrl + Alt + B

 

レイヤー操作

レイヤーを選択

上下のレイヤーに選択を移動

  • Ctrl +
  • Ctrl +

追加選択

  • Ctrl + Shift +
  • Ctrl + Shift +

 

上下にレイヤーを移動

  • Ctrl + ]
  • Ctrl + [

 

レイヤーを前面/背面に移動

  • Ctrl + Shift + ]
  • Ctrl + Shift + [

 

カレントフレームにレイヤーをペースト

  • Ctrl + Shift + V

 

レイヤーを分割

レイヤーを選択していない場合は、すべてのレイヤーを分割

  • Ctrl + Shift + D

 

インポイント / アウトポイントをカレントフレームに移動

  • [
  • ]

 

選択したレイヤーのインポイント / アウトポイントをトリム

  • Alt + [
  • Alt + ]

 

選択したレイヤーの時間を反転

  • Ctrl + Alt + R

 

タイムリマップを適用 / 削除

  • Ctrl + Alt + T

 

特定のプロパティのみ表示

位置 / 回転 / スケール / 不透明度

  • P
  • R
  • S
  • T

 

マスクパス

  • M

 

タイムリマップ

  • RR(2回押す)

 

エフェクト

  • E

 

キーフレームのあるプロパティを表示

  • U

 

変更されたプロパティのみを表示

  • UU(2 回押す)

 

キーフレーム操作

表示されているキーを選択

  • Ctrl + Alt + A

 

キーフレーム移動

1 フレーム進む/戻る

  • Alt +
  • Alt +

10 フレーム進む/戻る

  • Alt + Shift +
  • Alt + Shift +

 

キーフレームをカレントフレームにスナップ

  • Shift + キードラッグ

 

キーフレームの伸縮

  • Alt + キードラッグ

 

リニア / 自動ベジェ

  • Ctrl + キークリック

 

リニア / 停止

  • Ctrl + Alt + キークリック

 

イージーイーズ

  • F9

 

イージーイーズイン / イージーイーズアウト

  • Shift + F9
  • Ctrl + Shift + F9

 

参考

https://helpx.adobe.com/jp/after-effects/using/keyboard-shortcuts-reference.html

Tips

modoのスペースキーの動作をコンポーネントモード切り替えに戻す方法

modoのスペースキー ショートカットをmodo 15.0以前の動作に戻す方法について書いてみます。

modo 15.1からスペースキーを押した場合の動作が変更になりました。
modo 15.0以前は、スペースキーを押すたびにコンポーネントモードが頂点、エッジ、ポリゴンとトグルで切り替わりました。

modo 15.1以降ではアイテムのよく使うチャンネルをまとめた「ミニプロパティ」が表示されるようになりました。

この設定はmodoを起動した時にビューポートの下に表示されるオプションで変更可能ですが、しばらくすると自動的に表示が消えてしまいます。

 

 

スペースキーを押した場合の動作を「ミニプロパティ」から「コンポーネントモード切り替え」に戻したい場合、以下のコマンドを実行します。

app.spacebarOpensMiniPopover false

逆に「コンポーネントモード切り替え」から「ミニプロパティ」に変更したい場合は、以下のコマンドを実行します。

app.spacebarOpensMiniPopover true

 

 

誤ってスペースキーの動作を「ミニプロパティ」にしてしまい、どうやって元に戻すのか調べたのでメモしておきます。

modo 15.1では押しやすい位置にあるスペースキーが、コンポーネントモード切り替えよりも、アイテムのプロパティ変更のほうが初心者にわかりやすいのでは?ということでショートカットが変わりました。しかし、スペースキーはLightWave時代からコンポーネントモード切り替えとして使ってるので、どうしても慣れている操作に戻してしまいますね。

Tips

modoのNVIDIAコントロールパネル設定

modoを使用する場合の、NVIDIAコントロールパネル設定について書いてみます。

NVIDIA ドライバー 535.98 と、 modo 16.1V6 の組み合わせでAVPのパフォーマンスが20~30%向上するとのことです。

 

NVIDIA コントロール パネルの設定

スタートメニューや、デスクトップ右で NVIDIA コントロール パネルを開きます。

「3D 設定を管理」、「グローバル設定」の「電源管理モード」を「通常」に設定します。これがスロットル動作を許可するものです。
「パフォーマンス最大化を優先」は、皮肉なことに実際には最大限のパフォーマンスではなく、電気代を高くするだけです。

「プログラム設定」で「Foundry Modo Legacy (modo.exe)」を選択します。※modoアイコンは環境によって変わると思われます。

「電源管理モード」を「通常」に設定します。GPU が常にフルスロットルで動作することはなくなり、modoを使用しているときはスロットルを最大にすることができます。

 

参考

この記事はライブストリームの情報を元にしています。先日のライブストリームでAVPについて以下の説明がありました。

NVIDIAカードを使用している人にとっては非常に優れたパフォーマンスの改善がいくつかあります。NVIDIA と協力して新しいドライバーをリリースし、スロットリングや AVP の問題にも対応できるようにしました。AVP でより信頼性の高いエクスペリエンスが得られるます。

新しい NVIDIA ドライバー 535.98 でスロットリングをONにすると、実際に 20 ~ 30 %の大幅なパフォーマンスの向上が見られます。これは、実際にスロットルをONにすると GPU がスロットルできるようになるためです。

「パフォーマンス最大化を優先」をONにすると高いレベルにロックされますが、スロットルをONにすると、実際にはそのレベルを超えるため、「パフォーマンス最大化を優先」よりも高いレベルまで上がります。

 

実際に「電源管理モード」を「通常」にしてみましたが、アイテムの多いシーンで単純にビューポートを回転する程度では大きな違いは感じられませんでした。テクスチャの更新など複雑なシーンで効果があるのかも知れません。

Tips

modoの最大スムージング角度

modoのサブディビジョンの「最大スムージング角度」について書いてみます。

サブディビジョンの「最大スムージング角度」を使用すると、ポリゴンの角度によってスムージングの処理を適用することができます。

サンプルファイル

 

普段「ポリゴンの細分割」Shift + D を使用するとき、「最大スムージング角度」というのがアクティブになるなと思いつつ、今まで使ったことがありませんでした。

 

ダイレクトモデリングの「ポリゴンの細分割」は、実行後に再編集できないのでこれまで試そうと思ったことがありませんでした。プロシージャルモデリングの方であれば、再編集できるので、ハードサーフェス系のモデリングで便利に使えそうな感じがします。

 

アイテム プロパティの「サブディビジョン」にも「最大スムージング角度」が追加されれば便利そうですね。

 

参考

khellstrさんが「最大スムージング角度」を使用して角度に応じて自動的にスムージングを適用するセットアップを紹介していて、「最大スムージング角度」の存在を思い出しました。

Tips

3ds MaxのUIレイアウトをロック

3ds Maxの「UIレイアウトをロック」について書いてみます。

3ds Maxは昔からフローティングウィンドウとドッキング可能なウィンドウが混在するソフトです。Max 2015のレイヤエクスプローラの変更くらいから、これまでフローティング専用のウィンドウがドッキングするように変更され、Max 2024ではスレートマテリアル エディタがドッキングするように変更されました。

しかし、Maxはドッキング判定が広く動作がもっさりしてるので、ウィンドウを移動したつもりがドッキングしてしまい邪魔に感じます。

「UI レイアウトをロック」を使用すると、ドッキングを抑制できるので便利です。

カスタマイズ / UI レイアウトをロック

 

スレートマテリアルエディタ限定でドッキングを無効にすることもできます。

モード / ドッキング可能

 

AfterEffectsのようにウィンドウのドラッグ位置でドッキングするか移動だけか操作をわけられると便利なんですけどね。たぶん改善されないだろうな。

私の記憶だと最初にさわった 3ds Max R3 頃にはウィンドウをドッキングしてレイアウトできました。当時の3Dソフトではウィンドウをドッキングできるのはかなり画期的なことでした。2DソフトではMac発祥のAdobe系がドッキングやウィンドウスナップできましたが、Windowsでは柔軟性の高いUIを持つソフトは多くありませんでした。その後はQtフレームワークを採用するソフトが増えて、最近はよく見かける機能になりましたね。

Tips

OctaneRender for Blenderのインストール方法

OctaneRender for Blenderのインストール方法のメモです。Blenderを少しさわれるようになったので、OctaneRenderがどんな風に公開されてるのかインストールしてみました。

 

OctaneRender  Prime (フリー版)

OctaneRenderはいくつかのプラットホーム向けに無料のPrimeライセンスを公開しています。OctaneRender for Blenderも無料で使用することができます。

  • 個人および商用利用は無料
  • インターネット経由で接続されたオンライン状態でのみ使用可能
  • OctaneRender Standaloneは使用できません
  • OctaneRender Offline USB Dongleはサポートされていません
  • レンダリングに使用できるGPUは最大1台
  • ネットワークレンダリングは利用できません

 

インストーラーのダウンロード

OctaneRender for BlenderをダウンロードするにはOTOYアカウントが必用です。
アカウントにログインした状態で、Free TrialページOctaneRender Prime (Free tier)を選択して、Try Nowをクリックします。

https://home.otoy.com/render/octane-render/demo/#prime

 

Blender OctaneRender Edition、OctaneServer Primeの2つのインストーラーをダウンロードします。

 

インストール方法

ダウンロードしたBlender OctaneRender Edition、OctaneServer Primeのインストーラーを実行してインストールします。

 

インストール先のディレクトリを見ると、OctaneRender用にカスタムビルドされたBlender 3.3.1がインストールされています。

 

OctaneServer。

 

OctaneRenderの使用方法

OctaneRender for Blenderを使用するには、OctaneServerを使用してインターネット経由でライセンスを取得する必要があります。

OctaneServer.exeを起動します。ウィンドウが表示されるので「Activate」をクリックします。

 

NVIDIAのライブラリ cuDNNをダウンロードしろとメッセージが表示されるので、「Download」をクリックします。

 

ログイン画面が表示されるのでOTOYアカウントにログインします。

 

ログインするとPrimeライセンスが使用可能な状態になります。

 

OctaneRender用のBlenderを起動して「プリファレンス」のアドオンでOctaneRenderを有効にします。

 

レンダーエンジンで「Octane」を選択します。

 

OctaneRenderが使用できるようになりまります。Octane Environment に Daylight environmentを設定するとこんな感じになります。

 

ドキュメント

https://docs.otoy.com/BlenderH/BlenderPluginManual.htm

Tips

Mayaで選択したオブジェクトのロケータスケールを一括変更するスクリプト

カメラやライトをMayaインポートしたとき、ビューポートでオブジェクトが小さくて見えないことがあります。そんな場合、選択したオブジェクトの「ロケータのスケール」を一括変更するMELスクリプトです。

{
string $nodes[] = `ls -selection`;

for ($node in $nodes)
{
string $shapes[] = `listRelatives -shapes $node`;
setAttr ($shapes[0] + ".locatorScale") (50);
}

}

 

Mayaは選択したオブジェクトのアトリビュートをまとめて編集するのが面倒ですね。
アトリビュート スプレッドシートやチャンネルボックスを使用すれば複数オブジェクトのアトリビュートをまとめて編集できますが、どちらの方法もシェイプを選択したりやや面倒です。もっとUIから直感的に編集できるようになって欲しい。

 

参考

https://knowledge.autodesk.com/ja/support/maya/learn-explore/caas/CloudHelp/cloudhelp/2016/JPN/Maya/files/GUID-5E79C4FD-4D33-4617-A17B-EA2EF27D2667-htm.html

Tips

Mayaのアウトライナで検索結果をフラット表示する方法

Mayaのアウトライナで、検索結果をフラット表示する方法について書いてみます。

 

Mayaのアウトライナでオブジェクトを検索して、検索したオブジェクトをまとめて選択したい場合があります。しかし、アウトライナの検索は親など階層構造を表示するので、検索したオブジェクトだけ選択するのがやや面倒です。

 

displayMode を使用すると、検索結果に階層を表示しないフラットな表示ができます。

displayMode='List'

 

使用手順

以下のスクリプトを実行してアウトライナを作成します。

import maya.cmds as cmds
cmds.window()
cmds.frameLayout( labelVisible=False )
panel = cmds.outlinerPanel()
outliner = cmds.outlinerPanel(panel, query=True,outlinerEditor=True)
cmds.outlinerEditor( outliner, edit=True, mainListConnection='worldList', selectionConnection='modelList', showShapes=False, showReferenceNodes=False, showReferenceMembers=False, showAttributes=False, showConnected=False, showAnimCurvesOnly=False, autoExpand=False, showDagOnly=True, ignoreDagHierarchy=False, expandConnections=False, showNamespace=True, showCompounds=True, showNumericAttrsOnly=False, highlightActive=True, autoSelectNewObjects=False, doNotSelectNewObjects=False, transmitFilters=False, showSetMembers=True, setFilter='defaultSetFilter', ignoreHiddenAttribute=False, ignoreOutlinerColor=False, displayMode='List' )
cmds.showWindow()

 

MayaはUIからアクセスできないオプションが多くて、何するにもスクリプト使えというのが面倒ですね。恐らく displayMode もUIから変更できないような気がします。
modoみたいにフィルタ用のボタン置いて、簡単に切り替えられるようにしてくれていいのよ。

参考

https://help.autodesk.com/cloudhelp/2022/JPN/Maya-Tech-Docs/CommandsPython/outlinerEditor.html#flagdisplayMode

Tips

modoでポリゴンが消える表現

modoでポリゴンが消える表現について書いてみます。

TwitterでBlenderのジオメトリノードを使った作例が流れてきたので、同じような表現がmodoで作れるか軽くテストしてみました。
ちょっと無理やりな方法なので汎用性は低いのですが、興味がある人向けに公開していきます。

サンプルファイル

 

スケマティックはこんな感じです。

1つの平面のように見えるポリゴンは、グリッド状にパーティクルを発生させた小さな平面の集合体です。
フォールオフプローブを使用して、フォールオフ内に入ったパーティクルを消滅させています。 これで平面が消えてるように見せてます。

同様にフォールオフプローブを使用して、フォールオフ内に入ったパーティクルからパーティクルを発生させ、さらに Source Emitter を使用して黄色い三角のパーティクルを発生させています。これは Particle Sieve Modifier を使用しても似たようなことができる気がします。

 

今回は頭の体操的に作った物で、ポリゴンを消す最初に思いついた方法を試しましたが、プロシージャル頂点マップを使用した方法でも似たような表現ができる気がします。

 

参考

参考にしたBlenderでジオメトリノードでは三角ポリの発生位置がまばらなので、パーティクルではなくポリゴンが剥がれて飛んでるのかも知れません。