ウォーターフォール型パイプラインの問題点と、
コンカレント型パイプラインの将来性
[JCGS+コロッサス]
JCGS 痴山 紘史
JCGS代表。
放送局向けリアルタイムCGシステムの構築・運用に携わった後、映画・ゲームなど
の映像制作に携わる。2010年独立、現職。映像制作プロダクション向けのパイプ
ラインの開発と提供を行なっている。新人パパ。娘かわいい。
自己紹介
http://digdoc.jcgs.co.jp
1. 機材調達の関係で、本講演では一部体験版ソフ
トウェアを使用します。ご了承ください。
2. 今回はUSDの詳細についてのお話はしません。
USDは要素技術の一つとして、実際に使うとど
んな感じ?ということをメインにお伝えしてい
きます。
おしらせ
•概要
–何故ルックデブとライティングを別ツールにするのか
–Maya(max, etc.) じゃダメなの?
–要素技術
–Gaffer 概要
•デモ
•まとめ
目次
概要
• 作業フェーズ毎のデータの整理
–"呪い"を後ろに持ち込まない
–その場しのぎの対応ができるようにする
• 必要な機能に絞る
–軽量、シンプル
–専用ソフトウェアによる効率化
–レンダリングに必要な情報に絞ることでエラーを減らす
何故ルックデブとライティングを別ツールにするのか
• "並行世界"を作ることができない
–レンダリング設定がシーン全体に効いてしまう
–マテリアル差し替えにくい
–バリエーションを作りにくい
Maya(max, etc.) じゃダメなの?
• 辛い
–壊れる Render Layer
–謎の unknown node
–読むだけで死ぬシーンデータ
–お祓い(データのエクスポート、インポート)をするとなおったり
Maya(max, etc.) じゃダメなの?
• できなくはない
–今まではそれで頑張っていた
–TDがツールをゴリゴリ作ったり
–謎のノウハウの蓄積
–熟練のアーティストの経験と勘
–祈る
Maya(max, etc.) じゃダメなの?
• 要所要所でデータを整理する
• 共通のデータフォーマットを用いる
• “レンダリング”という作業をフローから切り出す
– CGを作る=レンダリングして成果物を作る
– レンダラーには極力シンプルなデータを渡す
• 最近は、ゲームエンジンを使う時に同じようなことをし
ていますよね
どうやって解決する?
• Alembic
• OpenVDB
• OSL
• MaterialX
• USD
要素技術
• メッシュデータを格納
• Alembic 以前は様々なフォーマットが乱立
–FBX
–Maya Hair
–nCache
–OBJ
• ソフトウェア毎に変換が必要だった
–検証がものすごく大変
–細かいバージョンによって違ったり
要素技術:Alembic
• ボリュームデータ
• OpenVDB 以前は様々なフォーマットが乱立
• 大抵が特定のソフトウェア依存
–FumeFX
–Maya
–RenderMan
–etc…
要素技術:OpenVDB
• シェーダ言語
–かつてはレンダラ毎に異なる言語でシェーダを書いていた
• 昔は、RSLとか憧れたんですよよよ
要素技術:OSL
• マテリアルやルック情報などを記述
–かつては(以下略
–この辺りはもうちょっと先な感じ
要素技術:MaterialX
• ピクサー USD 入門 新たなコンテンツパイプラインを構築する
(https://www.slideshare.net/takahitotejima/usd-79288174)
–DCC ツール間でシーンをやりとりするファイルフォーマット
–リグは持てない(持てなくはないけどメリットが少ない)
• あんどうめぐみ(@fereria)さんが最近詳細記事を書かれています
(https://fereria.github.io/reincarnation_tech/11_Pipeline/99_li
nk/)
要素技術:USD
• Alembic, OpenVDB : データフォーマット
• OSL, Materialx : シェーダ、マテリアル
• これだけでは “シーン” を作れない
• USD を使うことで、データを束ねてシーンが作れる
–リファレンスにも対応
• FBX もあったけど。。。。
–仕様が複雑
–リファレンスが無い
ピースが揃った!
例
Modeling
Layout
Effects
Lighting/Rendering
リファレンス
例
Modeling
Layout
Effects
Lighting/Rendering
データを積み重ねていくお祓い
何かよくわからない
ものすごく複雑な処理
お祓い
お祓い
リファレンス
• コンカレントパイプラインとか難しいことは必要になっ
たら考える
–やってみると、いずれやりたくなる
• 便利な共通ファイルフォーマットと考える
• リファレンスも(うまく使えば)ソフトウェア間でやり取
りできるよ!
• レンダリング処理を切り分けるだけでもHAPPY!
–ブッ壊れる RenderLayer とおさらば!!
まずは簡単なところからやってみましょう
• ImageEngine が開発したオープンソースソフトウェア
• レンダリング用シーンの作成
• ルックデブ
• ワークフローのデザイン
Gaffer 概要
• マテリアルの作成
• マテリアルのアサイン
Gaffer 概要:ルックデブ
http://www.gafferhq.org/
• アセットの読み込み
• マテリアルのアサイン
• ライティング
Gaffer 概要:レンダリング用シーンの作成
• レンダラを呼び出してレンダリング
–Appleseed
–Arnold
–3Delight
Gaffer 概要:レンダリング
• 単体ではデータを作成できない
–モデリング、アニメーションはできない
• レンダラに渡すデータを作る
• 3Dデータのコンポジットソフトだと思えば大体OK
Gaffer 概要
Gaffer デモ
Gaffer+USDのパイプラインの例
記事での流れ
Modeling
(Animator Starter
Pack(For Short Films or
Animations)Final 6.0.0 for
Maya)
Layout
Lighting/Rendering
lookdev
Look file
自作エクスポータ
lookdev template
• 元々Animal Logic が開発したMaya 用 USD プラグイン
• Autodesk が取り込み、maya-usd として整備中
–https://github.com/Autodesk/maya-usd
• AL_USDMaya のデモムービー
–https://www.youtube.com/watch?v=RluuvOAXvnk
maya-usd
まとめ
• ソフトウェアをまたぐことによるメリット、デメリット
• みんな、コンポジットソフトは使いますよね
–素材をかき集めて出力する
–最終調整に集中できる
–Gaffer で 3D シーンのコンポジットをおこなう
• 似たようなソフトウェア
–KATANA, Houdini, Clarisse
まとめ
• ソフトウェアをまたぐことによるメリット、デメリット
• みんな、コンポジットソフトは使いますよね
–素材をかき集めて出力する
–最終調整に集中できる
–Gaffer で 3D シーンのコンポジットをおこなう
• 似たようなソフトウェア
–KATANA, Houdini, Clarisse
Q&A?
まとめ

CGWCC2019 ウォーターフォール型パイプラインの問題点と、コンカレント型パイプラインの将来性[JCGS+コロッサス]