>   >  痴山紘史の日本CG見聞録:第5回:Gafferによるルックデヴ&ライティング
第5回:Gafferによるルックデヴ&ライティング

第5回:Gafferによるルックデヴ&ライティング

みなさんこんにちは。ちょっと前になりますが、8/22~24にかけてCEDECが開催されました。毎年のことながらすごい熱気で私も意識の高まりをメキメキと感じることができたり、いろいろとヒントを得ることもできてとても楽しい3日間でした。意外と見落としている方も多いかもしれませんが、CEDECのYouTubeチャンネルでも過去のセッションを含め、結構公開されているものがあります。秋の夜長、これを肴に楽しんでみてはいかがでしょうか。

余談ですが、CEDEC終了後のArtists Meets Technicals 2018に参加したところ、過去に行なったセガ(現、セガゲームス)の麓 一博さんと私の対談を読んで進路を決めたという方にお会いできました。こういうことは初めてだったので感動すると共に、自分がものすごく齢を取ったような気分になる機会でした。笑。

TEXT_痴山紘史 / Hiroshi Chiyama(日本CGサービス
EDIT_尾形美幸 / Miyuki Ogata(CGWORLD)

今回は、GafferとArnoldを使用

前回、Maya でレイアウトしたシーンを.usdファイルとして出力するところまで行いました。しかし、折角シーンデータをつくってもそれをレンダリングする方法がないと意味がありません。現状、USDのドキュメントを見てもとにかくKATANA推しで、それこそ「みんなMy KATANAあるよねッ!?」という勢いでKATANA前提の話になっています。ところがKATANAの1年あたりの保守契約費は$8,568(※)です。この記事のためにKATANAを買ったら原稿料がゲフゲフ......ということで涙を飲んで諦めます。

※ 永久ライセンスやレンタルライセンスも有り。詳しくはボーンデジタルほか、リセラー各社にお問い合わせください。

さてどうするか......ということで、今回はGafferを試してみることにしました。GafferはImage Engineが開発・使用しているツールで、CGWORLD.jpの『キングスグレイブ ファイナルファンタジーXV』の記事でも取り上げられています。

Gafferはルックデベロップメント(以下、ルックデヴ)&ライティングツールという点ではKATANAにとても近いです。しかしGafferがカバーしているのはもっと広い範囲で、Image Engine内ではプロダクションワークフローの定義や管理にまで使用しているようです。そのあたりの内容は以下の動画で発表されています。

▲DigiPro 2016 - Gaffer | An Open-Source Application Framework for VFX


Gaffer は現在、

appleseed
3Delight
Arnold

上記の3種類のレンダラに対応していて、Image Engineでは3Delightを使用しています。

大きな注意点として、appleseedはOpenSubdivを含むSubdivision surfaceに対応していないことが挙げられます。また、Displacementにも未対応です。これは最近のレンダラとしてはかなり辛いところです。Arnoldとの組み合わせではSubdivision surfaceに対応していますが、ArnoldはOpenSubdivを使用しているわけではないようです(使用しているアルゴリズムは同じはずなので、結果はほぼ同じはず?)。そのため、メッシュ分割のチューニングはArnold用に設定してやる必要があります(Subdivision surfaceとして扱うかどうかの設定は、前回の解説をご覧ください)。また、3Delightは最初のライセンスは無料なので試してみるのも良いかもしれません。 とても残念なのが、以前はRenderManも対応していたのですが、RIS化のタイミングで対応を打ち切ってしまったようです。これがあれば文句なしなのですが。USD対応のながれに乗って復活することを期待しましょう。

この3種類のレンダラから選ぶ場合、現時点で最も現実的なのはArnoldではないかと思います。そのため、今回はArnoldを使用します。

ショットシーンの構築方法を決める

ルックデヴを行なったり、ショット作業をするためにはショットシーンの構築方法を決める必要があります。ただし「絶対にこうしなければいけない」という決まりがあるわけではないため、プロダクションやプロジェクトごとに適切だと思われるルールを決めて運用していくことになります。

今回は下記のようなルールを設けました。

・Mayaでレイアウトしたシーンは.usdファイルでGafferに渡す
・ルックデヴファイルはGafferで作成し、ショットシーンでリファレンスして使用する
・ショットシーンでは読み込んだシーンをアセットごとに分解し、それぞれにルックデヴ情報を割り当てる
・シェーダのアサイン情報は階層のパスで指定する

では、これに沿って作業を進めていきましょう。

Gaffer+Arnoldの環境設定

GafferはLinux版とOSX版のバイナリが用意されています。Windows版も自前でビルドすれば使えるのでしょうが、動かす前に四苦八苦するのと、即座に試せる環境が整うのとでは雲泥の差です。こういうところで標準環境を使っているか否かの差が出てきますね。

環境設定はドキュメントを参考にすれば簡単にできます。本当に、簡単すぎて拍子抜けしてしまうくらいです。

Gafferの使い方は以下の動画を見るのが良いです。

▲Introduction to Gaffer - GafferBot Lighting and LookDev


動画の制作時期が少し古いので今のものと完全に同じではないですが、20分の動画で基本的な使い方を知ることができます。現在のバージョンと一番異なる点は、プレビューにDisplayノードではなくCatalogueノードを使用するようになっていることです。

次ページ:
Gafferで.usdファイルを読み込む

その他の連載