2025/07/03
第13回リグナイト『リグシステム座談会2』~開催レポート【KaraQri】~

こんにちは。
BACKBONEの福本です。
2025年5月23日に開催した、第13回リグナイト『リグシステム座談会2(KaraQri,miRA,GRIS,XXX)』の当日の様子を4回に分けてお伝えします。今回は【KaraQri(白砂氏)】のレポートになります。
リグナイトに関してはこちら。
◆『KaraQri』ご紹介&ディスカッション(白砂氏)
<概要>
- 主にボディ、フェイシャルに対応。
- 補助骨の機能については、KineDriverを使用。
- KaraQriの導入前はモデル更新への対応が属人化していた。
- 作業者に依存するリグの構築を避けたかった。
- 導入後は、KaraQriの仕様に沿ってデータの管理を統一しやすくなった。
- 他の人に作業の引継ぎや追加対応の依頼をしやすくなり助かっている。
- 各モジュールに対してはスライドのもの以外にも、ベイクやアニメーション関係のユーティリティツールも提供している。
<ビルド実演>
- GUから任意のモジュールを呼び出して骨を作成する。
- 任意のノードを接続した後、ビルドを実行する。
- ビルドはスケルトンの作成、コントローラを作成、それらを接続、という手順で実行される。
- ノード接続も自前のUI(NodeEditorに似たインターフェイス)を用いて接続する。
- 過去にeSTを使用したことがあり思想や仕組みの影響を受けている。そのため、eSTに似た仕組みになっている。
- 標準搭載されたモジュールでコントローラを作成すると、自動的にピッカーが作成される。
- スライドの画像は、パーツごとに個別でモジュールを使用してコントローラを作成したため、ピッカーも個別に作成されている。
- 人型(Biped)などの定型的なものに対しては、腕や足などがセットになったコンパウンド型のモジュールが用意されている。これらも、自動的にコンパウンド型のピッカーが作成される。
- ピッカー作成ツールでピッカーを編集することが可能。
- モジュールのカスタマイズについても、JSONファイルの書き換えで対応することが可能。そのため、リグやPythonの知識がなくてもリグの構築が可能。
- スケールは全体、3軸スケールのみ解放しているため、shearがかかることがない。ゲーム用のアセットにも対応。
<ピッカーの紹介>
- ブロックモデルやレンダーモデルの切り替えが可能。
- IKFKの切り替えやローカルワールド、ミラーリング、左右同時選択、なども可能。
- ピッカーの背景に画像を貼り付けることも可能。
- 外部のコントローラをピッカーに登録、追加することも可能。
- 背景を透明化することもできる。
- この機能は、アニメーターさんからの評判がとてもよい。
- シーン内に複数のキャラクターがある場合、選択したキャラクターでピッカーの切り替えが可能。
- 重い部位を軽いモデルに切り替えることも可能。
- 例えば、フェイシャルのアニメーションをつける場合、体はブロックモデルで顔をハイモデルに切り替えるなど。
- ピッカーのレイアウトやデザインは自由に作れる。
- 統一感がでるように、ある程度のルールは設けている。
<リターゲット機能>
- モーションキャプチャーのリターゲット機能も搭載。
<カスタムデフォーマー>
- Maya標準のWrapよりも高速に動く。
- メッシュが意図していない方向に引っ張られた際に解消することが可能。
- 軽量なコリジョンでボリュームを保持することが可能。
<他のシステムとの違い>
- 他工程の方から、シーン内にノードやコネクションがあると重くなるので避けてほしいという意見があり、メタ情報を残さないというシステムを採用した。
- モーションビルダーなどの他のツールに出力した際に、メタノードや接続の情報が欠落して再度Mayaで読み込んだ際に動かないといった懸念もあった。メタ情報をシーン内に残さない事で、こういった問題を解消している。
- 新規モジュールの作成をJSONで記述することで、新人やリガー以外でも使用できるシステムになっている。※ここでの新規モジュールの作成とは、既存モジュールをJSONで指定しビルドできる形にもっていけるという意味。
- 分解、再構築をシステム化した。ユニークなリグも分解時に必要な情報を検出、記録して再構築が可能。
<Q&A>
- 〘 ビルドするにはどういった手順になりますか? 〙
ビルドの前には、骨の位置情報やコントローラの形状、ウェイトなどの情報を書き出すことが必要。出力場所に制限はなく、スクリプトを使用してそれぞれのデータを呼び出す仕様。セカンダリやユニークなリグについては、ユーザーモジュールという空のモジュールが用意されており、それをシーンファイルとして分離、インポートして再構築する。
- 〘 新規モジュールの作成や追加する際に使用するJSONに関して、専用の編集ツールなどはあるのでしょうか? 〙
一応ツールは用意しているが、直接編集してしまう方が楽な場合が多い。
- 〘 既存モジュールにない特殊な機能が必要な場合でも、JSONの編集で対応可能でしょうか? 〙
汎用的に使えそうな処理の場合はコネクターと呼ばれる接続方法を別途作成し、JSONでそれを使用して構築します。そこからも外れるような特殊なものについては、ビルド中のセクション間に別途スクリプトを走らせることも可能。Pythonについても大掛かりなものではなく、ビルド中に使用されるスクリプトの変数に対して手を加えるという仕組み。
◆『XXX』ご紹介&ディスカッション(久保氏)
次回に続く。
※免責事項※
本記事内で公開している全ての情報について、その完全性、正確性、適用性、有用性等いかなる保証も行っておりません。
これらの情報のご利用により、何らかの不都合や損害が発生したとしても、当社は何らの責任を負うものではありません。
自己責任でご使用ください。
本記事内で公開している全ての情報について、その完全性、正確性、適用性、有用性等いかなる保証も行っておりません。
これらの情報のご利用により、何らかの不都合や損害が発生したとしても、当社は何らの責任を負うものではありません。
自己責任でご使用ください。