Siggraph Asia 2009 「FF13 リアルタイム カットシーン・ワークフローについて」(前半)

本日、Siggraph Asia初日に参加してきましたが、CEDECなどとは全く雰囲気が違い、大変面白かったです。日本で開催しているので、日本人が大半を占めるのかなぁ?と思っていたら、思いのほか海外からの参加者が多くてビックリ、微妙に異国の雰囲気になっていました。

さて、本日参加したセッションの雑感をまとめようと思うのですが、Autodeskさんが開催された「Autodesk Day at SIGGRAPH ASIA 2009」の「FFXIII リアルタイム カットシーン・ワークフロー」のセッションが素晴らしかったので、まずはそれから書こうかと思います。

FFXIII リアルタイム カットシーン・ワークフロー〜FFXIII のカットシーンができるまで〜

  • Wednesday, 16 December | 3:30 PM - 5:00 PM | 303 + 304

このセッションでは、大人数で大量のデータを、効率的かつ並列して扱うための工夫が随所に読み取れ、非常に充実した内容でした。SquareEnixさんには感謝するばかりです。良いセッション、ありがとうございます。

また、このセッションの最後で語られていたのですが、今回発表された内容は、後日Autodeskさんのユーザー事例に掲載されるという事なので、詳細についてはそちらでご覧いただけるようになると思います。

ではノートに書き留めた内容を書き出してみます。

FF13 リアルタイム カットシーン・ワークフローについて(前半)

今回のセッションは、FF13におけるリアルタイムカットシーンのワークフローを、6つの項目に分け解説されました。

  • イントロダクション
  • 絵コンテからシーン構築
  • モーション
  • VFX
  • シミュレーション
  • ライティング&ポストエフェクト

イントロダクション

まずはリアルタイムカットシーン全般のワークフローの概要説明。

FF13では、イベントシーンの中でも特に、モーションキャプチャデータを使用して、カットシーン班がレイアウトを行うものを「カットシーン」と呼んでいるようです。(他に、汎用モーションを使用して企画班で組み上げるものや、ヴィジュアルワークス製作のムービーによるイベントシーンなどもあるとの事です)

今回のセッションはこの「カットシーン」のワークフローを中心に解説が行われました。

ちなみに今回のゲームには、ここで説明された「カットシーン」だけでも、6時間程度収録されており、そのデータの製作期間は16ヵ月だったとの事です。

総尺 6時間
製作期間 16ヶ月

これだけのカットシーンを短期間で製作するために、チーム内では下記の目標を立てられたようです。

⇒フローの後戻りをしない
⇒各パートが並列して作業を行える体制(フロー)・徹底した作業の効率化
⇒ただし、妥協しない映像クオリティ

絵コンテからシーン構築

ここでは、シナリオから絵コンテ、シーンを構築するまでの流れをご説明いただきました。

作成するもの
  • 絵コンテ
    • シナリオを元にストーリーボードセクションで作成される
  • プレビズ
    • MotionBuilderのストーリー機能で作成
今回、カットシーンの編集で、MotionBuilderを採用した理由

MotionBuilderをメインツールとして採用したのは、FF13が初めて。今回何故使用したのか?

  • MBのストーリー機能がカットシーンを製作するのに、標準で必要な機能を備えていた
    • 足りない部分は、カスタムプラグインを製作した(特にカメラツールが弱い)
  • Mocapデータは元々MotionBuilderで編集していたので、ツールの行き来が減り効率的
  • 64bitOSに本格的に対応された
    • ストーリー機能の欠点として、たくさんのキャラクターを読み込むとパフォーマンスが落ちていたものが改善
    • 大量のアセットを扱うのに向いていた
Previsの製作
  • 他セクションの見積りにも使われる重要な映像
  • まずは汎用モーションを継ぎはぎして、映像の流れを作る
    • 特殊な動きなどは手付け
モーションキャプチャーの収録
最終的なシーン構築
  • 収録したモーションキャプチャーを使用して、最終的なシーン構築を行っていく
  • 人間ができないダメージ表現などは、Natural Mootion社のEndorphinも使用
カメラ制御の工夫
    • カメラのレンジや、スタート位置を意識せずに編集できるように、カメラの動きを全てクリップ化
    • Edit機能とタイムディスコンティニティを利用して、ノンリニア状態でカメラの編集ができる

⇒これにより、Adobe Premiereと、3Dツールを合わせたような、3Dのノンリニア編集が可能になる

最後にエクスポート
  • 実機ツール(CrystalTools)への中間フォーマットに吐き出し次の工程へ

モーション

上記の映像が一通りできれば、次に3つの作業を並列で行っていく。

  • キャプチャーデータの修正
  • フェイシャル
  • シミュレーション


このワークフローに対応するため、モーション班を4つに分けて対応。

モーションキャプチャ 2人
ボディモーション班 16名(4人 x 4チーム)
フェイシャル 7名
シミュレーション 3名
合計 28名

⇒基本上記の人数だが、時期によってお互いがヘルプするなど、流動的に動く。

並列作業をする工夫
  • バイナリデータになる前の中間ファイル(アスキー)のレイヤー的な使い方で、並列作業を可能にした
    • 選択したノードのみのアニメーションが吐き出せるので、ボディモーション・フェイシャル・シミュレーションと分割して吐き出す。
    • 各データを作っているメンバーはバラバラで、最後に合成

⇒これにより平行作業が可能となったが、ファイル数の増大を招いた
サウンドのタイミング、それらを包括するファイルを加えていくと、一つのモーションについて、15ファイル

1つのカットシーンのバイナリファイル数(例)
キャラ数 30
中間ファイル 889
設定ファイル 194
包括ファイル 366
その他*1 2196
合計 3675
アセット管理ツール「Neji」+カットシーン用GUI
  • 増大したファイルを効率的に管理するために、インハウスのアセット管理ツール「Neji」を製作
    • 少ない操作で必要な情報のみにアクセスできる
    • バージョン管理もやっている模様
    • ボディモーション、キャラごとなど、データのフィルタリングが可能

⇒バイナリデータのバージョン管理を高速化するというより、大量のアセットを管理する際のヒューマンエラーをなくすという側面を強調されていました。

とここまで書きだしたところで、ものすごく時間がかかることに気づきました…。
CEDECと違って1時間半あった上に、皆さん説明が高速だったので、内容がミッチリだったのが原因でしょうか。

うぅん、続きを書くのは大阪に帰ってからですかね。気長にまとめてみます〜。
あと、推敲も明日・・・。


後半はコチラ →→→

*1:この項目は、ノートの文字が読みにくかったので、もしかしたら違う可能性があります・・・。