UE5 で MetaHuman さんを被写体にしてアクセサリーの撮影環境を作ろうとしてみた

動機

妻がハンドメイドのアクセサリーを作って某サイトで販売していたりするのですが、実際に装着した状態での写真を撮影するのに難儀していました。

大人向けと子供向けの商品があるため、大人向けは妻自身、子供向けは娘をモデルにして撮影していましたが、子供はじっとしてくれなかったり、家での撮影になると光の加減がうまくいかなかったりという感じです。

もちろん撮影技術を向上させればいいという話もあるとは思いますが、MetaHuman に興味があったので撮影に使えるかどうか試してみました。

ちなみにアクセサリーというのは、イヤリングやブレスレットといった小物が中心です。

MetaHuman の作成

ここに関しては記事はいくらでもあるので飛ばします。

MetaHuman Creator

個人的にも工夫はほとんどなく、適当にサンプルの肌の色を調整したくらいです。

UE5 への出力

Bridge も統合されているので楽ですね。

Exporting MetaHumans to Unreal Engine 5 | MetaHuman Creator Documentation

以下のようにサクッと出力されます。(今回使ったテンプレートが Amelia でしたのでフォルダ名もそうなっています)

MetaHuman さんにポーズをとってもらう

さすがに A ポーズでは困るので、少しポーズをとってもらうことにしました。

といっても、以下のように左手を少し下ろして、手を軽く握ってもらう程度です。
レベルシーケンスを作成して、レベル上の PB_Amelia (MetaHuman が自動で作ったBP) をシーケンスにドロップすると Control Rig も出てきますので簡単にポーズを変更できます。

ポーズが決まったら、0 秒のところにキーを打って Body に対して Animation Sequence を作成します。(MetaHuman は複数の Skeletal Mesh で構成されており、Body はその一つ)

続いて、レベルシーケンスを閉じて、BP_AmeliaBody の Animation の設定で先程作成した Animation Sequence を設定します。動作しないアニメーションなので静止した感じになります。(他にもっといい方法がありそうな気がするのですが、分からなかったので一旦これで。。)

これで PIE で実行してもポーズをとってくれるようになりました。肌の感じとかいいですね 😆

アクセサリーの準備

最初はフォトグラメトリのアプリを試していたのですが、さすがにサイズが小さすぎてまともにスキャンができませんでした。。

ということで、今回は妻が作っている中でもシンプルな構造のものを Blender で作成することにしました。今回はブレスレットです。

マテリアルは超雑ですが、、、なので実際の質感とはだいぶ違うのですが一旦これで試すことにしました。

アクセサリーにもポーズを付ける

アクセサリーも Blender 上で円を描くように作ったまま Export したのでは MetaHuman に装着したときに浮いてしまいます。

よって、アクセサリー側にもボーンを入れて、Control Rig を設定しシーケンサーで調整できるようにしました。今思えばこの程度の調整ならば Control Rig まで入れずにボーンをいじるだけで十分だったのではと思います。。

以下のように雑にボーンを入れて、ブレスレットに対して Waight を設定し、UE5 に持っていきます。(Blender to UE の設定は記事が他にいくらでもあるので省きます)

Skeletal Mesh もコンテクストメニューから Control Rig を作成します。

今回はチェーン上の物体でしたので以下の記事を参考に Control Rig を組みました。 docs.unrealengine.com

ボーンの数も多くなかったので、今回は全てのボーンに対してコントローラを設定しました。(この辺りは全然分かってないのでかなり適当です。。)

するとこんな感じでできあがります。正直伸び伸びになったりするしで、全然駄目な Rig な感じです 😅 が微調整ぐらいにしか使わないのでよしとしました。

MetaHuman さんに装着

まずは レベル上に配置したブレスレットを、装着する腕の場所にできるだけ正確に配置します。Control Rig 側では微調整ぐらいしか想定していないので。

続いて、再びレベルシーケンスを開きブレスレットの Skeletal Mesh Actor をシーケンスに追加します。おそらく Control Rig が無いのでブレスレットの Track から追加します。

見ての通りでコントローラが密集しすぎてすごく編集しにくいです。。いろいろ駄目ですね。。が、これで進めます。腕に近づけるなどの微調整ができたら、ブレスレット側も Animation Sequence を書き出します。

それぞれのポーズを入れた状態で PIE 実行する

レベルシーケンスを閉じると BP_Amelia 側もまた Animation 設定が戻ってしまっているので先程の Animation Sequence を設定、ブレスレットも同様に設定します。

実行時に肌のテクスチャが飛んでツルツルになってしまうことがあるのですが、メモリが原因かもしれません。(ログメッセージがなんらかでていると思います)

私の場合は以下が出ていました。 テクスチャストリーミングのプールがバジェット xx MiBを越えています - ばしりのブログ

結果

ハンドメイドサイトのパーツ写真ぽく撮ってみました。(これは PIE でのただのスクショです)

いちおう CineCameraActor も置いてそっちの設定を少し変えて撮ったのがこちら。

うーーん、なんかいろいろいまいちですね 😅

今後の展望

妻に見せた感じは結構感触はよく、子供用の被写体を用意できるのであれば使えるかもという感じでした。

実際、ハンドメイドだと人のモデルの代わりに人の写真の上にアクセサリーを置いて撮っている人もいるらしいですし、Amazon 眺めていると腕だけのマネキンとかも売っているのでいろいろ皆さん工夫されているようです。

アクセサリー自体をどうするか

フォトグラメトリできないとなると、今回のように自分で作るしかないのですがそこに手間をかけるだけの価値があるのかというのが出てきます。(簡単には売上に寄与するのかと)
仮にできるようになったとしても手直しはいるので、まあ同じ話かもしれません。

逆に、アクセサリーは写真として切り抜けるように撮影し、そのテクスチャを付けた Plane を MetaHuman と一緒に置いて撮影するとかもあるのかもしれません。

感想

Control Rig もカメラも撮影方法もいろいろわからん!