コードジンのヘッダーが入ります
ゲームソフトは年々高速化・複雑化しており、マーケットのニーズに応えるべく、より高い品質および短期間での製品リリースが要求されている。このような状況下でゲームソフト開発者が直面する課題を表すキーワードとして、Perforce SoftwareのTim O'Mahony(ティム・オマホニー)氏は、「分散型開発」、「拡張性」、「デジタル資産の処理」、「巨大な複数のバイナリファイル」、「サードパーティ・ツールとの統合」の5つを挙げた。
ゲームソフトの開発は、複数のプロダクション・スタジオにおいて分散型の並行開発を行うケースが多い。たとえば、2つのサイトで開発を行う場合、サイトAではサイトBのファイル・リポジトリにアクセスして、変更を行うファイルのレプリカをローカルに作成し、変更作業を行った後にサイトBのリポジトリにファイルを渡す。同時に開発を進めているサイトBでは、作業中のファイルにその変更を追加するという作業が必要となる。こうした環境では、適切なリビジョン管理が行われていないとエラーが発生しやすく、ネットワークのパフォーマンスによっても開発効率が大きく左右される。
また、扱うデータはソースコードだけではなく、ピクチャ、グラフィックス、ワイヤーフレームなど多岐にわたる。これらのデジタル資産、膨大なバイナリファイルを効率的に管理しなければならない。そこで、SCMツールが不可欠となるのだが、ゲーム開発の現場ではさまざまなツールが使用されており、それらサードパーティ製のツールにSCMを統合することが求められる。開発チームにはプログラマだけでなく、アーティストも多数存在するため、非プログラマにとっても分かりやすいインターフェースで、彼らが使用するグラフィックソフトなどからスムーズにSCMの機能を利用できる環境が必要だ。
このような多くのゲームメーカーに共通する課題は、すべてPERFORCEによって解決できるとティム・オマホニー氏は語る。「SCMシステムの中心となるPERFORCEサーバは、『ディポ』と呼ばれる強固なファイル・リポジトリを持ち、あらゆるデジタル資産を一元管理することができます。さまざまなプラットフォームに対応し、複数のOSが混在するマルチプラットフォームのネットワーク環境での相互運用性をサポートします。また、クライアント/サーバアーキテクチャを採用しているため、ネットワーク・ファイルシステムのアクセスに依存せず、分散ネットワーク環境でも高速なパフォーマンスを発揮できるのです」。
さらに、リモートサイトのパフォーマンス改善に有効な「PERFORCEプロキシ・サーバ(P4P)」も備えている。これは、PERFORCEサーバから取得したファイル・リビジョンをキャッシュし、同一のファイルに対して変更を行う場合にはプロキシからクライアントに転送することで、ネットワークおよびPERFORCEサーバへのリクエスト負荷を軽減するというものだ。
グラフィカルツール用プラグインとしては「P4GT」を提供。Photoshop、3ds Max、Maya、Softimage XSIといった主要ソフトをサポートし、完全なリビジョン履歴の参照や資産の状態表示、資産の排他的ロックなども可能となる。アーティストはグラフィカルツールのメニューに追加されたメニューから、これらの機能を容易に利用できるという。
セッションでは、ゲーム業界における代表的なPERFORCEユーザであるUbisoft社の事例も紹介された。同社では、2000ユーザ以上、複数の開発サイト、データ量5TB(24070195ファイル)の環境でPERFORCEを利用。これだけ大規模な環境おいても、専任のPERFORCE管理者は2名で運用できるそうだ。PERFORCEの管理機能や拡張性の高さがうかがえた。