『鉄拳8』全キャラクターの髪型から衣装、靴まで自由にカスタマイズ!量産のカギは“体格に合わせた変形”をランタイム側で行う独自の多重リグシステム【CEDEC2024】

2024.10.24
CEDEC注目記事ゲームづくりの知識ゲームの舞台裏講演レポートCEDEC2024モデリング
この記事をシェア!
Twitter Facebook LINE B!
Twitter Facebook LINE B!

国内最大規模のゲーム業界カンファレンス「CEDEC2024」が、2024年8月21日(水)から8月23日(金)までの日程で開催されました。8月21日(水)には、アクトエイジのリードキャラクターリグアーティスト 大橋 英樹氏と、バンダイナムコスタジオのテクニカルアニメーター兼リガー 近藤 直樹氏が登壇し、「『鉄拳8』 カスタマイズキャラクターのための多重リグシステム~複雑な筋肉表現と大量生産の両立」と題した講演が行われました。

TEXT / HATA
EDIT / 浜井 智史

目次

個性豊かなキャラクターを自由にコーディネートできる「カスタマイズシステム」

登壇したのは、アクトエイジの大橋 英樹氏とバンダイナムコスタジオの近藤 直樹氏。

大橋氏は『鉄拳5』からシリーズに参加し、『鉄拳8』ではリードキャラクターリギングアーティストとしてキャラクターリグ周りの制作パイプライン設計を担当しています。近藤氏は『鉄拳8』においてリグ開発の追加機能や、Mayaの支援ツールの開発などを行っています。

アクトエイジ 大橋 英樹氏(画像左)と、バンダイナムコスタジオの近藤 直樹氏(画像右)

『鉄拳』シリーズは、全世界で累計5,700万本以上の販売本数を記録する対戦格闘ゲームで、2024年1月には最新作『鉄拳8』がリリースされています。本作を含む『鉄拳』シリーズにおけるキャラクターのカスタマイズシステムは、上半身/下半身/帽子/眼鏡など、部位ごとに衣装を変更できる自由度の高いコーディネートが特徴です。

CEDEC2024の講演時点で、本作には総勢35体のキャラクターが登場しています。各キャラクターは筋肉形状がそれぞれ異なるほか、固有の仕様を備えたケースもあります。キャラクターごとの特徴に対応したカスタマイズアイテムを用意することで、コーディネートの自由度やクオリティを損なわないような工夫が施されています。

傷や入れ墨のほか、ロボットの前腕が伸縮するギミックといった独自の要素も。同じ筋肉形状のキャラクターは存在しない

本作のカスタマイズアイテムは「体」「服」「アクセサリ」と項目分けされているが、各項目においてサブ項目が用意されており、「服」だけでも8つ項目に分かれている

カスタマイズアイテム量産の課題と解決策

コーディネートの質を保つためにアイテム数を増やすと、制作工数が増加するだけでなく、仕様の追加や既存アイテムの動作チェックといった新たな作業も発生します。全キャラクターに対応する共通アイテムであれば、1つ追加するだけで、全キャラクターの修正作業や、実装漏れ・不備のチェックなど膨大な作業が必要です。

また、アップデートでキャラクター数が増えると、新キャラクターを既存仕様に対応させる作業や、既存キャラクターに対するアイテムの追加といった実装コストも高くなります。そのほか、コスト抑制のためにアイテムのレギュレーションを定めるとデザインの幅が狭くなる、修正作業や管理に時間を奪われてアイテム制作にリソースを割けなくなるといった問題がありました。

『鉄拳7』のキャラクター数はアップデートの結果51体まで増加。51体分の作業量や、アイテムの組み合わせチェックなどで作業リソースが圧迫されると、アイテム数の削減やクオリティ低下につながりかねない

これらの問題に対して、開発チームではカスタマイズアイテムの制作数を「男性/女性/特殊キャラ」の3種類に限定。また、デフォルトコスチュームを移植作業なしで他キャラクターに装着できる仕様にしたほか、1つのアセットを全キャラクターで共有する仕組みを作ることで、モデリング・調整工数を大幅に削減しました。

キャラクター固有の体格を生み出す独自の「多重リグシステム」

全キャラクター共通のアイテム制作を実現するにあたって、本作では独自に「多重リグシステム」が開発されました。これは、体格調整用のリグ「Propotion Rig(プロポーションリグ)」とインゲーム用のリグ「Muscle Rig(マッスルリグ)」という2種類のリグによって構成された仕組みの総称です。

Proportion Rig」では、人型キャラクターの基準値となる全キャラクター共通のサイズ「標準体格」(素体)で作成したモデルや衣装に対し、「プロポーションジョイント」にウェイトを振り、スケールや移動をかけることで体格を変更できます。一方、アニメーション再生に用いられるリグが「Muscle Rig」と総称されます。

Muscle Rigは、モーション再生に用いる「ゲームモーション」リグ、再生されたゲームモーションと連動して「筋肉シミュレーション」を行う骨を動作させるリグ、プライマリ骨から独立して専用コントロールリグにより制御される「パンプアップ」の3種類に分かれています。そのほかにも武器やエフェクトを制御する専用の骨も存在します。これらの中でもスキニングに使用されるものは「マッスルジョイント」と呼ばれます。

「Propotion Rig」の概要を表した画像

講演で紹介された、主要な3種類の「Muscle Rig」

カスタマイズアイテムは「標準体格」に合わせて作成します。これに、骨の移動・回転・スケール情報をリスト化した「キャラ体格情報」を適用させることで、1つのアセットをキャラクターの体格に合わせた形状に変更できます。この処理は、ゲームプレイ時にキャラクターを読み込む際、ランタイムで行われます。

「キャラクター読み込み時」はプレイアブルキャラだけでなく、CPUキャラも該当する

標準体格から各キャラクター固有の筋肉形状に変形するフロー

体格変更を行う際は、標準体格のキャラクターを用意した後、Proportion Rigの設定値を適用させてキャラクター固有の体格を生成します。生成されたメッシュをMuscle Rigへ形状転送して、アニメーションを適用します。

多重リグシステムでは、骨構造だけでなくメッシュもリグごとに管理しています。Proportion Rigでスキニングした「Proportion Mesh」の頂点情報をMuscle Rigでスキニングした「Muscle Mesh」に上書きすることで、強制的にメッシュの形状を変形しています。

体格調整の作業をデザイナーが個別に行うのは煩雑だったため、システムの管理や制作効率向上をサポートする「多重リグ管理ツール」が用意されました。

体格情報ファイル(JSONファイル)をツールで読み込み、Proportion Rig内にあるパラメータノードを通じてProportion Jointを動かすことで、Proportion Meshをキャラクター固有の体系に変形。続いて「P2M(※)」という中間リグ構造を介して、Proportion JointからMuscle Jointの位置を確定させた後、Muscle Meshの頂点情報がProportion Meshから上書きされます。
※「P2M」の詳細は後述

カスタマイズアイテムの形状調整をランタイムで処理する理由

キャラクターカスタマイズの処理をランタイムで実行する理由は3つ挙げられました。最初の理由は、キャラクター人数分のアセットを用意する必要がないこと。これにより作業工数が削減され、人為的ミスも抑制できます。

ランタイム処理を行わない場合は、個々のキャラクター用アセットをMayaからFBX形式で出力し、UE5へインポートする必要があった

ランタイム処理を行うことで、UE5内にキャラクターごとのアセットを用意する必要がなくなり、アセット数は2つで済む。体格情報はキャラクターごとに所持しているため、出力工数が掛からない

次に、アセットに不具合が見つかった場合、2つのデータを修正するだけで全キャラクター分の修正が行えるため、作業工数や動作チェックの手間が削減できます。

また、シャツの裾のタックイン/タックアウトといった、衣装の組み合わせにより発生する無数の調整作業がUE5上で完結できるため、モデリング修正が不要になることも理由として挙げられました。

なお、Muscle Rigでは骨全体が変形してしまうため、アセット単位の修正はProportion Rigでのみ可能

Proportion Rig/Muscle Rigの2種類を用意した理由

もともと、Proportion RigとMuscle Rigは同一のリグで、補助骨が体格の変形を兼ねていたそうです。ところが、『鉄拳8』の開発において表現力を追求するにあたり、管理する骨が増えて作業が複雑化し、体格変更用の骨と補助骨の両立が困難になりました。そこで、骨構造を2つに分けることで、スキニング作業を明確にしました。

一部分だけを動かす筋肉シミュレーションに対して、人体プロモーションでは肩から腕の筋肉全体を肥大させる。一つの骨構造で異なる複数の動作を実現しようとすると、ウェイトの分布が入り乱れ、スキニング作業が複雑化する

ブレンドシェイプやテクスチャ情報を利用した頂点編集など、さまざまデフォームの方法がある中で、骨による変形を採用した理由は、基本的なCGの仕組みである骨とウェイト情報が汎用的で扱いやすいからだと述べられました。

体格情報が変更された際の関連アセット対応が不要で、アイテムを作り始めてからであっても、キャラクターのプロポーションの変更に対応できます。また、データの転送手段がUV空間・距離・頂点番号・レイキャストなど多岐にわたることも採用理由の1つだといいます。

そのほか、ラップターゲットなどを用いる際はアイテムごとにキャラクター差分のターゲットを持つことに対して、ウェイトはターゲットを持たないためデータが軽量である点や、ラップなどのデフォームに比べて頂点単位のウェイトで細かく調整できることもメリットとして言及されました。

2種類のリグ「Proportion Rig」「Muscle Rig」を用いた具体的な体格変形の仕組みを解説

Proportion Rigの構造

Proportion Rigは、3種類のパラメータ「Base」「Deform」「Advance」により体格を定義します。また、「Skin ID」によりメッシュを切り替えることで、男性/女性いずれの体格も作成できます。ただし、大型キャラクターの場合はこの仕組みから外れます。

前作からデータを継承する都合や、性別を超えたコスチュームの着回しを可能にするといった理由により、各種パラメータは男性の標準体格を基準にしている

Base Parameterは、キャラクターの動きやヒット判定に影響する8つのパラメータで構成されています。

Deform Parameterは、各部位の太さや筋肉の形状などを設定する24のパラメータで構成されています。

Advanced Parameterは、Deform Parameterで設定した形状を、42のパラメータでさらに細かく調整できます。上腕を「上腕二頭筋」と「上腕三頭筋」に分けて個別に編集するなどの操作が可能です。

体格情報の管理手法やデータ移送

体格を定義する全てのパラメータは、キャラクターごとにJSONファイルで保存されます。これを再利用することで、体格変更のたびにパラメータを入力せずに済みます。

JSONファイルに記述された体格情報は、パラメータノードに渡されてシーンに保持され、体格を変更する約80の骨を動かしている

パラメータノードの情報をもとに、上限値・下限値・値の変化に伴う増減量といった有効値がドリブンキーにより設定され、骨の移動・回転・スケールなどの計算に用いられます。

体格変更の仕組みのうち、全体の7割程はドリブンキーを用いた処理が行われている

パラメータノードが持つ体格情報は、Proportion RigからMuscle Rigに転送されます。この処理には、骨同士で情報を受け渡す「P2M」と、メッシュ同士で受け渡す「Sync Mesh Group」が用いられます。

P2M(Proportion to Muscle)

Proportion Rigの体格変更に追従する、Muscle Rigの骨を模した構造が「P2M」です。P2Mの各骨から位置を計算して、Muscle Rigの各骨の位置を確定します。Muscle Rig側の補助骨の位置が変更されると、補助骨の仕組みが持っている移動量も変更する必要があります。

Sync Mesh Group

Proportion MeshとMuscle Meshの対応関係を決める仕組みが「Sync Mesh Group」です。対応関係を手作業で何十組も作るのは困難であるため、Proportion RigとMuscle Rigでバインドされたメッシュ同士を比較し、階層と形状が一致する組み合わせを自動で探し出してシーン内に記録する仕組みを採用。

形状が複雑に重なり合う場合でも高精度の比較を行うため、任意の組み合わせを選んでSync Mesh Groupをオリジナルで作成する手段も用意されています。

作成した体格情報をMuscle Rigの骨とメッシュに転送する仕組み

Muscle Meshは骨でバインドされているため、Skin Clusterで正しく変形を行うためには、メッシュの形状を転送するだけでなく、バインド情報を上書きする必要があります。骨の位置がP2Mにより変更された後、Skin ClusterのbindPreMatrixをインフルエンスの数だけ骨の姿勢で上書きし、バイント時に作成されるBase Shape(※)をProportion Meshの形状で上書きします。
※シェープノード名の末尾が「orig」で、Intermediate Objectがオンに設定された非表示のシェープノードを「Base Shape」と呼称している

この際、上書きするBase ShapeのCV値が0以外の数値を持つと正しく変形が行われないため、注意が必要です。最後に、頂点移動の差分情報がTweakノードに残っていればリセットします。

キャラクターモデル作成の仕組み、ワークフローについて

素体の構造や作成基準

キャラクター素体のメッシュは男性用/女性用が用意されており、さらにそれぞれProportion Rig用とMuscle Rig用の素体に分かれています。

これらのメッシュは共通の頂点番号と頂点位置を持っており、それぞれの素体に対してProportion Rig/Muscle Rigでスキニングされている

人体パーツには厳密なレギュレーションが存在しています。UV頂点番号・首境界の頂点座標は全キャラクター共通の数値が使われており、コスチュームを切り替えた際に接合面の位置を合わせるため、首の境界だけウェイトが共通となっています。

「身体」については、トポロジーとUVを全キャラクターで共通化しています。皮膚が露出するコスチュームを作成する際は、素体から必要なメッシュを取り出して使用しています。

首の鎖骨部分やうなじ部分まで「顔」の範囲に含まれる。ゲームの内部処理においては、顔もアイテムのアセットとして扱われている

素体の筋肉形状は、登場キャラクター全員の中央値をもとに作成しています。平均値より筋肉形状がやや太めになる中央値を採用することで、最大サイズのキャラクターとの差異が開きすぎないようにしています。

また、Proportion Rigによる体格変更だけでなく、ノーマルマップなどのテクスチャを切り替えることによってもキャラクターごとの筋肉表現を行っています。

キャラクターアセットの実装ワークフロー

アイテムのメッシュはProportion Rig用/Muscle Rig用のそれぞれで作成し、FBX形式でUE5に出力したのち、Item管理情報にまとめます。あらかじめ多重リグから出力した体格情報をキャラクターブループリントでアサインし、ゲーム内に反映します。

DCCツールとゲームエンジンの実装フローについておおまかにまとめた表

キャラクターは複数名により同時進行で制作されているため、各キャラクターの顔や骨は直接メッシュとしてではなく、リファレンスシーンとして運用することで、骨構造の変化を防止しています。

リファレンスシーンのフローは非常に複雑なため、シーンの作成・管理はバッチ処理で行っています。出力用途、制作用途などさまざまな種類があるリファレンスシーンを簡単に呼び出せるように管理ツールが導入されています。

キャラクターの体格とフェイシャルリグが確定したら、アイテム量産フローで使用されるリファレンスシーンの作成を行う

一部キャラクター固有の揺れ骨の運用手法

本作における揺れ物の表現はクロスクロシミュレーションで行うことが多いといいますが、尻尾などの一部アイテムには揺れ骨が備わっています。

Skeletonは全キャラクター共通で用いられており、一部のキャラクター固有の揺れ骨も含めて、すべての骨情報が共通のSkeletonにマージされています。揺れ骨があるアイテムは、キャラクター固有の体系に変形した後、Muscle Rigに揺れ骨としてアサインして出力しています。

自社独自のクロスシミュレーションシステム

クロスシミュレーションには自社開発システムを採用。こちらも多重リグシステムで運用されていますが、コリジョンに関しては全キャラクター分のデータをMayaのシーン内で作成し、個別に参照して読み込んでいます。

揺れの計算処理用とゲーム中に表示する用で分かれており、それぞれのメッシュに対してProportion Rig/Muscle Rigが制作され、多重リグシステムにより体格変更が行われる

キャラクター1人1人の個性を際立たせる「多重リグシステム」

講演の最後に、多重リグシステムを採用するメリット/デメリットがまとめられました。

メリットはランタイム処理で効率的に管理運用できること、細かな体格調整やアイテム共有の容易化、体格情報を数値として他アイテムに転送できる点、仕様変更や新キャラクターの追加に柔軟に対応できること。

一方デメリットは、1人しか着用しない固有コスチュームに2回のスキニング作業が発生することが挙げられました。ただし、こういった場合、無駄な作業を省くためProportion Rigを使用しなかったとも言及されました。また、多重リグではProportion RigとMuscle MeshをSyncさせて運用しています。数多くのメッシュに対してSync状態を管理する場合、メッシュの複製や編集の際にSyncの接続が切れてしまいます。それを探し出す手間がかかることもデメリットだといいます。

これに加えて、頂点情報の取り扱いがデリケートである点もデメリットとして挙げられました。体格変形はProportion MeshとMuscle Meshの頂点情報が同一でないと実施できませんが、Maya上では同一に見えてもUE5上ではエラーが発生するケースがあったといい、このエラー回避に苦戦したそうです。

そのほか、メッシュを全キャラクターで共有する都合上、1つの修正が全キャラクターに影響を及ぼしてしまう点や、システムの運用に複雑なプロセスを要するため、キャラクター1体のみに単品で衣装を作る場合にコストがかかりすぎる点などがデメリットだと述べられました。結論として、大橋氏は「MMORPGでいう種族の違いなど、各キャラクターの個性が強いコンテンツでは、多重リグを導入するメリットがあるのではないか」と語りました。

『 鉄拳8』公式サイト『鉄拳8』 カスタマイズキャラクターのための多重リグシステム ~ 複雑な筋肉表現と大量生産の両立 - CEDEC2024
HATA

5歳の頃、実家喫茶店のテーブル筐体に触れてゲームライフが始まる。2000年代にノベルゲーム開発を行い、異業種からゲーム業界に。ゲームメディアで記事執筆を行いながらゲーム開発にも従事する。

関連記事

3Dモデリングツール「MODO」開発終了。Foundry社の“中核となる製品”に集中し、新たなソリューションに投資するため
2024.11.08
UE5&Houdiniを用いた効率的なプロップ制作や“TAが教えるUE5 お役立ちテクニック”を一挙紹介。第4回「Unreal Engine Meetup Connect」講演資料が公開
2024.10.24
よく使うレベルデザイン用語を押さえて英語圏の情報もキャッチ!Intensity Graph、Blockout、POIsなど13用語を現役ゲームデザイナーが解説【CEDEC2024】
2024.10.18
『塊魂』サウンドから見る「愛のあるモノづくり」。音で『塊魂』を想起させるために企画・実行したこと【CEDEC2024】
2024.10.09
サウンド担当者が開発中タイトルの最新仕様を知るには?『ゼルダの伝説 ティアーズ オブ ザ キングダム』の“フラットなモノ作り”を実現した開発環境【CEDEC2024】
2024.10.04
『ストリートファイター6』CPUが人間のように戦う。プレイ状況によって失敗もする、各キャラらしい戦術で動くAIの作り方【CEDEC2024】
2024.09.25

注目記事ランキング

2024.11.14 - 2024.11.21
VIEW MORE

連載・特集ピックアップ

イベントカレンダー

VIEW MORE

今日の用語

フォワードシェーディング(Forward Shading)
フォワードシェーディング オブジェクト毎にライティングの計算を行い、その計算結果を描画するレンダリング手法。フォワードレンダリングともいう。ディファードシェーディング(Deferred Shading)に比べてポストプロセスの自由度は低いが、(何も物を配置しなかった際にかかる)最低限の描画コストが低く、アンチエイリアス処理などにおいてフォワードシェーディングの方が有効な分野も存在する。
VIEW MORE

Xで最新情報をチェック!