Flow Production Tracking Toolkitでアセット/ショットのワークフローを自動化!~Autodesk ShotGrid Meetup Tokyo 2024レポート(2)
Autodeskの提供するプロジェクト管理ソフトウェア「Flow Production Tracking(旧ShotGrid)」の魅力や活用事例を紹介するリアルイベント「Autodesk ShotGrid Meetup Tokyo 2024」が2024年1月24日(水)に開催された。
本記事では、デジタル・メディア・ラボ 制作本部 CG制作部部長/テクニカルスーパーバイザー 片山敏春氏と、制作本部 CG制作部テクニカルチームチームマネージャー/テクニカルアーティスト山田貢司氏によるセッション「ShotGrid SGTKでアセット/ショットのワークフローを自動化!」のレポートをお届けする。
関連記事:ShotGridで受託案件の管理を効率化する!~Autodesk ShotGrid Meetup Tokyo 2024レポート(1)
登壇者
片山敏春 氏
2005年に株式会社デジタル・メディア・ラボ入社。10年ほどジェネラリストとして様々なプロジェクトへ従事。現在はTAとして制作支援ツール開発やワークフロー・パイプライン整備を担当。
山田貢司 氏
2020年に株式会社デジタル・メディア・ラボ入社。映像編集から始まり3DCGデザイナーを経てTAへ。現在はTAとしてプロジェクトのパイプライン整備やサポートツールを作成。
Flow Production Tracking Toolkitとは
デジタル・メディア・ラボ 片山敏春氏(以下、片山):デジタル・メディア・ラボは「創れない世界はない」をスローガンに、ゲーム、遊技機、映像など様々な分野でCG制作を行っています。
CG制作においては、良いものを期日までに確実に仕上げることが求められます。仮に、必要なファイルがどこにあるのかわからないような、データ管理が不十分なプロジェクトがあったとしたらどうでしょうか。仕様通りにデータが作成されておらず、データ修正に時間を要してしまう。何故だかわからないけれどレンダリングできない。そんな様々なトラブルが引き起こされ、本来注力すべきことに時間が割けなくなってしまいます。
そうならないためには、ワークフローとパイプラインがとても重要になってきます。このセッションでは、ワークフローとパイプラインの構築にFlow Production Tracking Toolkit(以下、ツールキット)を導入することで、どのような変化がもたらされるのか、導入手順から制作事例を交えてお話しさせていただきます。
ツールキットの特徴は以下の3つです。
①Flow Production Tracking(以下、FPT)と連携したツール群であり、Mayaをはじめとした各アプリケーション内で共通のGUIで利用が可能
②FPTの情報を元に、制作データへのアクセスや保存が可能
③対応DCCツールが豊富である
続いて、Mayaで使用する主要ツールを3つご紹介します。
①ファイルオープンツール:作業データやパブリッシュデータを開くためのツール
②ローダーツール:パブリッシュされたデータをシーンへインポートしたり、リファレンスを作成できるツール
③パブリッシュツール:決められた場所へ決められたファイル名でデータを保存することができるツール。全てのパブリッシュ情報はFPTへ登録されるため、いつ、誰が、どこに、何のためにパブリッシュをしたのか、リファレンスしているアセットはどれなのか、といった情報までFPT上で確認することができる
デジタル・メディア・ラボ 山田貢司氏(以下、山田):ツールキットはFPTのサイトからダウンロードできる「Flow Production Tracking Desktop」の「Advanced Project Setup」という機能を使って簡単に導入することができます。
ワークフローとパイプラインの設計
片山:ここからは、ツールキットを実際に使用するために、ワークフローとパイプラインの設計をどのように行っているのかご紹介しようと思います。
制作工程と各工程の成果物検討
片山:まずは制作工程と各工程の成果物検討から行なっていきます。今回は制作工程を大まかにアセットとショットに分けて検討しました。この制作工程がFPTのパイプラインステップ(以下、ステップ)に相当します。
続いて各ステップごとに作業内容とアプリケーションを検討します。今回は、モデル/リグ/アニメーションはMaya、サーフェイス/ライティングはUnreal Engine、コンポジットはAfter Effectsを使用することとします。
次に、各ステップの成果物、つまりパブリッシュデータを検討します。最後に、パブリッシュデータ内で、どのデータを次の工程に引き継ぐのか、どこを自動化するのかといったことを決めていきます。
フォルダとファイルのルール検討
片山:続いて、フォルダとファイルの扱い方のルールも検討していきます。FPTの情報を元に、一貫したルールを検討する必要があります。
今回は、アセットエンティティからアセット名/タイプ/ステップ名、 パブリッシュファイルエンティティーからはバージョンナンバー、ヒューマンユーザーからはログイン名を使用して、「assets」というフォルダ下にフォルダ構造とファイル名のルールを設定することにしました。
ツールキットの設定変更
片山:設定したルールをもとに、ツールキットの設定変更を行っていきます。ツールキットの設定を行うために必要な、2つの基本的なテンプレートについて簡単に説明します。
1つ目はテンプレートファイルです。テンプレートファイルは、パスを定義するファイルになっています。 ファイルの保存名、保存場所をtemplates.ymlというファイルで定義します。テンプレートファイルを使用することにより、ツールキットがファイルの読み書きを行えるようになります。
2つ目はスキーマ(schema)です。スキーマとは、ツールキットが一連のフォルダを作成する際に使用するフォルダ構造のテンプレートです。スキーマはフォルダ構造と、各階層にある.ymlという拡張子のテキストファイルで定義されています。
MayaとUnreal Engine 5のワークフローと自動化
山田:それでは、弊社で制作した『やさいのようせい』のプロジェクトのデータを使って、 MayaとUnreal Engine 5でのワークフローと自動化について実際の制作事例を基に紹介していきます。
Mayaのワークフロー
山田:まずは、Mayaでの各ステップのワークフローについて紹介します。
モデルステップでは、メッシュとジョイントとウェイトを作成します。リグステップでは、モデルステップでパブリッシュしたデータをリファレンスし、コントローラーを作成します。アニメーションステップでは、リグステップでパブリッシュしたリグデータを背景データとともにリファレンスし、キャラクターアニメーションとカメラを作成します。各工程の最後でパブリッシュを行い、次の工程のためのデータ出力をします。
ここからは、ステップごとのワークフローについて見ていきます。
まずはモデルステップのワークフローを解説します。ツールキットのファイルオープンツールを使って、モデルタスクを選択します。このモデルタスクは、FPTに事前にアセットとして登録をしています。ファイルセーブツールを使って、シーンの最初のバージョンを保存すると、ツールキットで設定した場所にフォルダーの作成とシーンが保存されます。
スナップショットツールを使って、シーンの履歴を保存しておきます。モデリングとジョイントとウェイトを作成したら、パブリッシュツールを起動します。ここでパブリッシュの前にバリデートを行い、シーンの問題点を表示します。
ここで表示されているバリデートのエラーの原因は、ツールキット側でプロジェクトの設定を20fpsで設定しているのに対し、実際のシーンのフレームレートが30fpsになっていることです。
ここではフィックスボタンを押すことで、シーンのフレームレートを24fpsに修正をするカスタムを行っています。
再度バリデートを行い、問題がなければパブリッシュを実行します。パブリッシュの前に、コメントとシーンのサムネイルをキャプチャしておきます。この情報はFPTにアップされるため、アーティストがこのシーンでどのような作業を行なったのか、FPTのサイトで確認することができます。
パブリッシュが実行されると、Mayaシーンの保存とモデルのFBXの出力に加えて、FPTにパブリッシュの情報が記録されます。
次に、リグステップのワークフローを解説します。ファイルオープンツールからタスクを選択し、ファイルセーブ、スナップショットツールを使うまではモデルステップと同じ流れのため、省略します。
その後ローダーツールを起動し、先ほどモデルステップでパブリッシュしたMayaシーンのリファレンスを行います。そしてmGearを使用してコントローラーを作成します。作業が完了したら、前工程同様パブリッシュツールを起動してパリデートを行い、問題がなければコメント分とシーンのサムネイルをキャプチャしパブリッシュを実行します。
パブリッシュが実行されると、MayaシーンとFPTにパブリッシュ情報が記録されます。
最後に、アニメーションステップのワークフローについて解説します。こちらも、スナップショットツールを使うまではモデルステップと同じ流れのため、省略します。ローダーツールを起動し、必要なリグアセットとモデルアセットをリファレンスします。
続いて、カメラとキャラクターアニメーションを作成します。パブリッシュツールを起動し、パブリッシュの前にバリデートを行います。アニメーションのパブリッシュ時には、Mayaシーンの他に、キャラクターアニメーション、カメラのFBXと、アレンビックキャッシュの合計15ファイルを出力しています。
アレンビックキャッシュは別のソフトウェアでエフェクトの作業をする場合などのために、パブリッシュ時に同時に出力をしています。
ツールキットでは、パブリッシュ時にどのようなデータを出すかをカスタマイズすることができます。
Unreal Engine 5のワークフロー
山田:続いて、Unreal Engine 5のワークフローを紹介します。
MayaのモデルタスクでパブリッシュしたFBXデータのインポートと、アニメーションステップでパブリッシュしたFBXなどのデータを使い、シーケンサの自動構築を行っています。
また、Unreal Engine 5にツールキットを組み込むために、Epic GamesがGitHubで公開している「tk-config-unreal」をベースに、コンフィグをカスタマイズしています。このツールキットを組み込むことで、ローダーツールを使った自動化のワークフローを構築しています。
ツールキットを組み込んだ後は、プラグインで「ShotGrid Plugin」にチェックを入れて有効にしておいてください。
ここからはローダーツールを使ったモデルのインポートのワークフローを紹介します。
まずUnreal EngineのUIにFPTのアイコンが表示されているので、ローダーツールを選択して起動します。モデルステップでパブリッシュしたFBXファイルを選択してインポートを行います。インポート後、ファイル名にカスタムで設定しておいたプレフィックス名が付けられ、またアセットのフォルダー分けを自動で行っています。
次はシーケンサー構築のワークフローです。シーケンサーの自動構築はMayaのアニメーションステップから出力したカメラや、キャラクターアニメーションFBXを使用してシーケンサーにトラックを追加します。
手順としては、まずFPTのアイコンからローダーツールを起動します。次にシーケンサーを構築したいパブリッシュデータを選択して、シーケンサーの構築を行います。ローダーで自動構築をした場合と手動でシーケンサーを構築した場合とを比較検証をすると、約9倍の時間が短縮できるという結果になりました。
また、スケルタルメッシュのインポートでは約6倍の時間短縮ができました。このように自動化を行うことで、何倍も効率を上げることができます。
ローダーを使用することで、ファイルのリネームをする際のミスや、フォルダー階層の作成の手間を削減することもできます。
ツールキットは、FPTを契約していれば誰でも利用することができます。ルールに基づいたデータ管理も行えますし、柔軟なカスタマイズが可能です。そしてカスタム次第で様々な自動化を実現することができます。その結果トラブルが減り、作業効率が上がり、品質向上のための時間捻出が可能になります。テンプレートのカスタマイズは少しハードルが高いですが、それ以上にたくさんの恩恵を受けることができます。
ツールキットに関しては、まだまだあまり情報が出回っていませんので、私たちも最初は手探りの状態でした。ぜひ、このセッションの内容を参考にしてもらえたら嬉しく思います。
TEXT_オムライス駆
EDIT_Mana Okubo(CGWORLD)、山田桃子 / Momoko Yamada