C4DからUE4へキャラクターを書き出すツール

CINEMA 4DからUnreal Engine 4へキャラクターモデルを簡単に書き出せるツールを公開します。

ツールはキャラクターオブジェクトのテンプレートで、ファイルはここからダウンロードできます:HK_Biped_2019.zip

使い方の説明動画はこちらです。

そもそも何のためのツール?

UE4で使うキャラクターモデルは「スケルタルメッシュ」という形式で、それ自体はFBXで普通にやりとりできる汎用性の高い設計です。ただし複数のスケルタルメッシュでアニメーションなどのデータを相互に共有するためには、ボーンの階層構造などの仕様が統一されている必要があります。人型のキャラクターについては公式に提示されている「Epic Skeleton」という仕様があり、共有を前提に作るならこれに合わせることになっています。

つまりC4DでUE4用のキャラクターモデルを作る場合にも、汎用性を優先するならEpic Skeleton準拠にすべき、ということになります。

ところがこのEpic Skeleton、C4Dで扱おうとすると少々面倒な仕様になっていて、そのままの構造だとミラーツールやIKが使えません。

じゃあどうするかというと、「C4Dで扱えるジョイント階層」と「UE4に渡すためのジョイント階層」の二重構造を持たせればいいことになるのですが、これをいちいち手作業でやるとすごく面倒です。いっぺん普通に作ったジョイント階層を複製し、個々のジョイントの軸の向きをEpic Skeletonに合わせて入れ替えたうえで、コンストレイントで元の階層とリンクしなくてはいけません。以前ピンクのクマのモデルを作ったときそれをやったのですが、毎回これはやっとれんと思いました。

そこで、その面倒な作業をやらずに済むよう、あらかじめC4DとUE4の二重構造を内包したキャラクターのひな形を用意することにしました。

キャラクターオブジェクトのUE4用テンプレート

C4Dには「キャラクターオブジェクト」とか「キャラクタービルダー」と呼ばれる、キャラクターモデルに半自動でジョイント階層とコントロールリグを入れることができる機能があります。その機能でひな形として使うために用意されているのが各種の「テンプレート」で、人型のものは「Biped」や「Advanced Biped」などが標準で用意されています。以前「はじめてのCinema 4D 改訂第2版」という本でキャラクター制作の章を執筆させていただいたのですが、そちらでも「Biped」を使ってキャラクターをセットアップする手順を紹介しています。

実はこのテンプレート、ユーザーが独自に作ることができます。僕も以前から自作したテンプレートを使っていたので、これにEpic Skeleton互換機能を追加すれば、もう面倒な手作業をやらずに済むわけです。それが今回公開するツールということになります。

このツールで何ができる?

このテンプレートでは、キャラクターのメッシュにジョイントとスキンを設定し、それをFBXで書き出してUE4に持って行く、というワークフローを想定しています。UE4に持って行った後は「Epic Skeleton互換」のスケルタルメッシュになるので、UE4のグレイマンとスポッと差し替えたり、Epic Skeleton互換のアニメーションアセットを読み込ませたりできます。

キャラクターを動かすための機能は最小限しかありません。アニメーションにも使えますが、どちらかというとスキンウェイトをチェックするときにキャラクターを動かすためのものです。アニメーション用の機能がたくさんあるとセットアップ作業のほうがややこしくなってしまうので、あえてそうしてあります。リガーやアニメーター向けではなく、モデラー向けのツールということになります。

僕が自分で使っているテンプレートにはアニメーション用の機能もいろいろついていて、こちらもいずれ公開するつもりでいるのですが、まだあちこち改良中なのでもうしばらくお待ちください。ただ、アニメーションの機能や使い方を詳しく説明するとものすごく長くなりますし実際にやってみる人はごくわずかだと思うので、こちらは玄人向けにデータだけぶん投げる感じになるような予感がします……。

C4D R21推奨です

上記の説明動画では案外と簡単にスキニングを終わらせているのですが、これはC4D R21を使っているからです。R21ではスキンの自動ウェイト設定機能が大幅に改善されていて、手作業でウェイトを塗らなくてもそれなりの状態まで持ってくことができます。新しいモードの「Heatmap」と「Volumetric」が加わったこと、ポーズをつけたままの状態で自動ウェイトを実行できるようになったところが非常に大きいですね。従来はウェイト設定がけっこう大変だったのでテンプレートがあってもその後の作業が長かったのですが、R21からはだいぶ楽になっています。