バンナムさんの「ABCシステム」について

明後日(9日)、とある集まりに参加するため、DCCツール関係の情報を集めていたのですが、そういえば以前からバンダイナムコさんのABCシステムの事が気になってたけど、全く調査していなかったので、幾つかのWEBや書籍を引っ張ってきて、整理してみました。

参考にした資料はこれら。

参考にした資料

今までキッチリ調査した事がなかったんですが、このシステムはMayaで扱うデータをメインにバージョン管理を行い、それらをWEBで情報一覧するツール群の集まりで、ゲームで使うデータを全て管理しているわけではなかったんですね。普通に勘違いしていました…。

というわけで、簡単に情報を整理してみました。

ABCシステムについて

ABCシステムは、「Alienbrainによるバージョン管理の機能」と、「膨大な物量のリソースをMayaのBrowserで管理するデータベース機能」を組み合わせたもの。

次世代機開発でネックとなりがちな膨大なリソース管理の上での、ファイルネームや更新作業などで発生するヒューマンエラーを可能な限りなくし、より効率的に高品質な制作活動を行うのをコンセプトとして、生み出された。

ABC システムの歴史
  • 2003年 PS2DEATH BY DEGREES」で「リソースセンター」と言うものが作られる。
    • プロジェクト内で、データを共有化するのが目的
      • 再コンバートのパッチ処理
      • 担当者同士でテクスチャを共有したりできた
    • PHPMySQLXMLなどを使用して構築
  • ソウルキャリバー3」で、「コンバートセントラル」が作られる
    • これは上記「リソースセンター」をベースに、対応ファイルの増加、GUIの改善、高速化などを図ったもの
    • ただし、バージョン管理機能が無い
  • 2009年「ABCシステム」は、主要プロジェクトだけでも10以上で採用がされていている。

ABC で管理したデータ

ソウルキャリバー4を実例とすると、下記のデータを管理されていたようです。

  • ゲームモデル用 Mayaシーン
    • キャラクタークリエイション 2500
    • 武器 50
    • ステージ60
  • モーション
    • 格闘モーション 35000
    • フェイシャルモーション 1200
    • カメラモーション 100
  • 共有ライブラリ
    • のマールマップやモデルのライブラリ 300
  • 2Dデータ
    • レイアウト情報 30
    • 画像 30000
  • デモ用Mayaシーン
    • デモ・キャラ・ステージ・カメラ・ライト等 1000
なぜバージョン管理ソフトは、Alienbrainなのか?
  • Alien brainを採用したのはチェックインが速いため
  • このほかに、Alienbrainは、他人の作業(品質・進捗)を把握できるメリットがある
ABCシステムは、Maya専用?

ここは、調査不足なのですが、手元にある資料だと、MAYAでの管理としか記載されていませんでした。また、CGワールドに掲載されていた図を簡略化して下記に載せてみましたが、「Motion Builder」からのラインがABCに繋がっていないので、特定のツールからでしかアクセス出来ない可能性もあります。

ただ、上記ソウルキャリバー4の実例で"モーションデータ"の管理について書かれているのですが、この作品はSoftimage(当時XSI)で作成されていたはずなので、何かしら別のフローで管理を行っていたのか、そもそもSoftimageからABCシステムにアクセスできる仕組みがあったのか、どちらかの手法を取られていたのかもしれません。

この辺り、現在は消滅してしまった、Avidのユーザー事例で掲載されていた、アイドルマスターの記事にその辺りが書かれてていたような気がしなくも無い…。SoftimageのNetViewを使っていたような、いなかったような。うぅん。

追記:2010/02/09(01:15)
コメント欄にモチオさんから情報いただきました。やはりSoftimageでは、NetViewを利用してAlienBrainと連携されていたようです。Maya以外でも使えるようになってるんですね。なるほど。

まとめ

上記、あくまで2008年〜2009年にかけての資料に掲載されているデータから引っ張り出してきたものなので、現状ではもっと進化していると思います。また、ABCシステム自体もフレームワーク化しているようなので、複数のプロジェクトで利用可能だったり、従来想定されていなかったような、仕様書の管理なども行われており、利用の幅も広がっていっているようで、データ管理の中心的なツールになっていっているようです。

これはうちの会社も(”べき”って言葉は使いたくないけど)見習うべきだと思う。なんかプロジェクト毎に毎回管理ツールを作っているみたいだけど、はっきり言ってそれは無駄すぎると思った。ゲームエンジンを共通化する前に、こういう部分を共通化した方がいいんじゃないの?

また、タムタムさんのブログでの感想はまさにその通り、プロジェクト毎に新規でアセット管理ツール群を作るのも馬鹿らしいし、データの管理の仕組みを共通化する方が先ですよね。まぁ、そうなりにくい事情も分かりますが・・・。

てな感じで、ABCシステムを調査してみましたが、考え方として学べる所ありますね。また自分なりの考えまとめて、社内でも話してみましょうか。