さて,愚痴も程々に。
7月一杯関わっていた20分の劇場版CGアニメ制作が無事一段落したので、そこで得られたこと、考えたことなどをまとめておくことにした。「記録のない活動に意味はない」とは誰の名言だったか。備忘録備忘録… φ(・ω・ )
自分の担当する「撮影(コンポジット)」というセクションは、映像制作に絡むほぼ全ての素材が集まるところなので、「実際にどのような絵作りをするか」というだけでなく「その大量の素材をどのように捌くか」が最終的な絵の完成度にも大きく影響する。
それ故、このセクションの先人たちは(そのメインツールであるAdobe After Effects使用者の中でも特筆して)スクリプトの使用などによる作業の自動化、効率化を追求してきた。自分もその流れに与してきた一人なので、ここでは今回の劇場版制作に於ける「如何に大量の素材を効率よく管理するか」という点に絞ってまとめてみる。
===
◆如何に効率良く撮影素材を管理するか
■1:カット表による管理(Excel,VBAマクロの使用による半自動化)
■2:AEscript によるコンポジションの自動セットアップ&各種補助ツール
■3:まとめ
===
■1:カット表による管理(Excel,VBA使用による半自動化)
アニメ撮影、コンポジットの現場ではどこでもカット表を自作しているかと思うが、ウチも制作さんから貰うカット表をベースにオリジナルの「撮影仕様」カット表を作成している。
カット表イメージ |
「今回の作品は全部で何カットあるのか」
「カット毎に必要な素材は何か」「その素材はいつ届いたのか」
「そのカットで必要な処理は何か」「そのカットは現在どのような状態か」
といったことが一覧できるようになっている。(今回の作品は20分強で350カット程だったので,劇場作品としてはかなり小規模)
各カット、各項目に対する入力も半自動化され、任意のタイミングでボタンクリックすることで指定フォルダ以下の該当素材を検索、チェックできる。と同時に、最上段の全体集計セルも更新されその時々の全体像把握をサポートする。
別のシートには全素材のファイルパス(VBAによる自動取得)も格納されていて、後のコンポ自動作成に使用するつもりだったが…素材の揃いが悪く結局使用せず。一番苦労してVBA書いたのに…(´・ω・`)
このカット表の最大の目標は、
"現在の「リアルタイムな」全体像を把握、共有する"
ことにある。
その意味ではそこそこ役割は果たしているのだが、「柔軟性」という点にまだ不満が残った。
■2:AEscriptによるコンポジションの自動セットアップ
&各種補助ツール
★"baseCompSetUp.jsx":カット毎のAEPファイルを半自動構築。
素材読み込みと配置、レンダー設定、シーン毎のプリセット適用
★"shadowSetUp.jsx":キャラ毎に追加される影処理の自動化。
★"BgImport.jsx":遅れて上がってきた素材を差し替える作業を自動化。
★"watchReduceSave.jsx":作業の終わったカットを整理してレンダーサーバに送る
一連の処理を自動化。
★"retakeSetUp.jsx":リテイク用の素材読み込み、出力設定の修正などの自動化。
★"openNextComp.jsx":規定のフォルダでプロジェクト選択ダイアログを開く。
ファイルの読み込み後など、内部パスが変更された場合の対処用。
スクリプト(ランチャ)イメージ |
主に使ったスクリプトは上記6つ、その他細かいものも合わせれば計10個程、作業の進展に合わせて同時進行で書き上げたものも幾つかある。
汎用スクリプト"LaunchPad"にボタンとして登録し、クリックで起動する仕組み。
スクリプトで自動化する処理の基準は、「同様の作業の繰り返し」である。頭を使わず絵を見なくても「処理」出来る作業はどんどん自動化対象とした。その方が圧倒的に速く、ミスも少なく、また作業者毎の差が減少するので修正作業が簡便化する。それで浮いた時間を作業者の「絵作り」の時間に充てたいのである。
また、撮影監督として各カット毎の作業内容をチェックする際,少なくともスクリプトで担当した処理に関してはある程度流して見ることが出来るというのは意外と大きい。
結果として上記目的に関しては十分に達成できたと考えている。少なくともこれら自作スクリプト群が無ければ専属スタッフ2名での作業完了は不可能だった。
作業開始当初は仕様通りに上がってこない素材に由来するバグも頻発したが、自分で作ったツールというものはこうした場面で柔軟に対応できるのが売りである。バグは無いに越したことはないのだが。
一方で、今回明らかになった問題点は撮影作業に自動化を組み込めば組み込むほど、作業者が無思考に陥りやすいということである。(より正確には、「自動化して時間を空けても頭を使おうとしない人は変わらない」ということか。)
当初の目的は、単純作業の自動化、省略により「絵」に向き合える時間を捻出し、完成映像のクオリティを底上げすることにあったのだが、「スクリプトを次々と適応していくという単純作業」に終始してしまうケースが散見された。
ここに関しては自動化云々とは別次元、「どんな映像制作チームを作るか」、というマネジメントの問題であるのだが。
■3:まとめ
今回の制作システムではExcelを基幹として、これにスクリプトによる各種ツールを組み合わせることで「大量の素材の効率的管理」、「リアルタイムな全体像把握」を目指したが、現時点で自分がやれそうなところへはある程度手をつけきった感がある。勿論、細部に手を加えるべき余地は沢山残っているのだが、少なくとも、連日のように更新される素材を見失うこともなく、全体像が把握できずにパニックになることもなかった。
しかし一方で、粗も見えてきている。
まずはカット表の「柔軟性」。短期決戦の場合、素材の更新は非常に激しくなるのでその形態がこちらの想像を超えることがままある(上がってくる素材の一部だけ使って、とか)。
現状のカット表は自動化を進めるトレードオフとして、ローンチの段階でかなり枠組みを固定してしまっているため、その変化球に全て答えるのは難しい。
今回の劇場版では、プレーンなエクセルの表と手書き(!)の表でまかなった。図など自由な記号を書き込める手描きの表はなかなかどうして侮れないが、アーカイブの問題などもある。そして何より、僕の金釘流のメモを渡されたスタッフはさぞ閉口したことだろう。
もう一つ、こうした表は見たい時に見たい情報がすぐに見られることが最低条件だが、同時に余計な情報はフィルタリングして目に入れないようにすることも大切である。
となると、イメージとしてPhotoshopのように多重レイヤーを保持し、そこから平常時は管理者の見せたい情報を表示、各ユーザがより詳しい情報を必要とする時は(その人のアクセスレベルに従って)そのレイヤーの中から必要な情報をソートして表示する、という仕組みが便利ではないだろうか。
そうした、「立体構造を持ったデータベース(DB)」を構築したいと考えている。表面には現在リアルタイムの必要な情報(管理者にとっては全体像の把握、作業者にとっては各カットの作業に必要な全ての情報)を、その裏に時系列的奥行きを持ったDBはどうだろう。その作成にExcelが最適なのか、まだ検討段階であるのだが。
更に、自動化を進める上で見えてきた問題点として「自動化がかえって目的意識の共有を阻害し、作業者の思考停止が進む」ということもあるのだが、それはまた別立てで考えたい。
という訳で、「如何に大量の素材を効率よく管理するか」という点に着目した感想はここで終了。
未来の自分に、そして同業の誰かの役に立ち得ただろうか。
0 件のコメント:
コメントを投稿