ポリ男からMetaHumanを作る

ポリ男をリファインしたので



ポリ男のMeshからこのチュートリアル動画に従ってMetaHumanを作成してみよう↓



作業に入る前に、作業の全体像と各工程で使うツールの関係を整理して把握しておこう。
チュートリアル動画によると、

  1. 自作の顔Meshを対応付けてMetaHuman Creatorへアップロード
  2. Web上のMetaHuman Creatorで編集
  3. 完成したMetaHumanアセットをUnreal Engineにダウンロード

という流れらしい。



WebツールであるMetaHuman CreatorとUnreal Engine 5をつなぐのがMetaHumanプラグインとQuixel Bridgeプラグイン。

概念を理解しやすいように「アップロード」という言葉を使ったけど、厳密には自作Meshそのものをアップロードするわけではなく、自作Meshの形状に合わせてMetaHumanのベースMeshを変形させる情報がMetaHuman Creatorへ送られるんだと思う。

余談ですが、Unreal Engineで何かする時は全体像を概念図にまとめないと理解しづらいですね。





リファインしたポリ男のMeshは、一応Maya上でスケールなどを調整してキレイなFBXファイルにしておく。


MetaHumanの作成

Mesh to MetaHuman

Unreal Engine 5で空のシーンを作成し、MetaHumanプラグインとQuixel Bridgeプラグインを有効にする。
自作した顔Mesh ポリ男をUnreal Engineのシーンにインポート。



テクスチャもマテリアルも用意していないのでこのまま。

MetaHuman Identityアセットを作成し、ポリ男のMeshとMetaHumanのベースMeshを対応づける。(MetaHuman Identityの解決)
画像認識で言うところの顔器官検出(face alignment)みたいな処理で自動的に対応づけられるけど、ちょっと気に入らなかったので手で少し修正した。おそらくこの処理はテクスチャありの方が精度が上がるだろう。



体格なども設定してMetaHuman Identityアセットを保存。



MetaHuman Creatorへアップロード(MeshをMetaHumanに変換)

MetaHumanの編集

Web上のMetaHuman Creatorで形状の微調整や各種テクスチャを設定していく。



最終的にこんな感じになった↓




MetaHumanアセットのダウンロード

完成したMetaHumanアセットをQuixel Bridgeプラグインを使ってUnreal Engineにダウンロード、シーンにインポートする。



アップロードに使ったシーンとは別のシーンにももちろんインポートできる。

Live Link Faceで顔を動かす

せっかくなので、作成したMetaHumanを動かしてみよう。Unreal Engineが配布しているiPhoneアプリLive Link Faceを使ってみる。
Live Link Faceを使えば、iPhoneのカメラで撮影した自分の顔の表情を認識してUnreal Engine上のキャラクターの顔に反映できる。
https://www.unrealengine.com/ja/blog/new-live-link-face-ios-app-now-available-for-real-time-facial-capture-with-unreal-engine
https://docs.unrealengine.com/5.0/ja/recording-face-animation-on-ios-device-in-unreal-engine/

MetaHumanとの連携方法はこちらの記事を参考にした↓
https://zenn.dev/iwaken71/articles/metahumans-livelink

Unreal Engineを起動しているPCとiPhoneを同一ネットワークに接続し、Live Link FaceアプリからUnreal Engineを起動しているPCのIPアドレスを指定するだけで動かせる。

で、Unreal Engineのシーン上で動かしてみたのがこちら↓



表情を反映する影響度が何故か左右で違い、表情が歪んでしまう。。。

現時点ではまだ自作Meshから作ったMetaHumanでは顔のリグに不具合があるらしい。
対処方法もあるにはあるようだ↓
https://mohumohu-tech.com/2022/07/14/metahuman%e3%81%ae%e3%83%95%e3%82%a7%e3%82%a4%e3%82%b7%e3%83%a3%e3%83%ab%e3%81%8c%e3%81%aa%e3%82%93%e3%81%8b%e5%a4%89%e3%81%ab%e3%81%aa%e3%81%a3%e3%81%a6%e3%81%84%e3%82%8b/

追記:↑この記事で配布してくれているファイルを利用して対処してみた↓



制作記事まとめページ↓
ポリ男
大学生の頃にMayaで制作した人間の顔。ティーンネイジャーぐらいの少年を目指してモデリングした。ポリゴンでできた男の顔なので同級生達に「ポリ男」と名付けられた。もともとは選択授業の課題として選んだモチーフだったが、課題提出の締め切りに間に合...


人間のCGを作るツールはどんどん進化しますね。
MB-Lab:Blenderの人体モデリングアドオン
MakeHumanの流れをくむ(というか開発者の1人であるManuel Bastioni氏による)Blender用の人体モデリングアドオン「ManuelBastioniLAB」は、資金調達の問題で2018年11月に終了してしまった。現在は「...

http://www.makehumancommunity.org/

関連記事

ジュラシック・パークの続編『ジュラシック・ワールド』

ZBrushのお勉強

グローバルイルミネーションに手を出す前に、やり残したことがあるんじゃない?

Point Cloud Utils:Pythonで3D点群・Meshを扱うライブラリ

顔のモデリング

TensorFlowでCGを微分できる『TensorFlow Graphics』

3D映画のポストプロダクション 2D-3D変換

『スター・ウォーズ/スカイウォーカーの夜明け』のVFXブレイクダウン

Maya API Reference

ZBrushでアマビエを作る その2

日立のフルパララックス立体ディスプレイ

Unreal EngineでARKit 3.0

BlenderProc:Blenderで機械学習用の画像データを生成するPythonツール

第1回 3D勉強会@関東『SLAMチュートリアル大会』

この本読むよ

実写と実写の合成時の色の馴染ませテクニック

Open Shading Language (OSL)

Alice Vision:オープンソースのPhotogrammetryフレームワーク

ZBrushのキャンバスにリファレンス画像を配置する

ZBrushでアヴァン・ガメラを作ってみる 頭頂部の作り込み・舌の追加

ZBrushで仮面ライダー3号を造る 仮面編 PolyGroup作成に再挑戦

注文してた本が届いた

素敵なパーティクル

ラクガキの立体化 目標設定

FreeMoCap Project:オープンソースのマーカーレスモーションキャプチャ

無料で使える人体3DCG作成ツール

Unreal Engineの機能を学ぶ優先順位を考える

テスト

2012のメイキングまとめ(途中)

『ローグ・ワン/スター・ウォーズ・ストーリー』"あのキャラクター"のメイキング

ZScript

PyTorch3D:3Dコンピュータービジョンライブラリ

中学3年生が制作した短編映像作品『2045』

ZBrushでアヴァン・ガメラを作ってみる 下アゴと頭部を作り込む

3D Gaussian Splatting:リアルタイム描画できるRadiance Fields

Blender 2.81でIntel Open Image Denoiseを使う

ZBrush 2018での作業環境を整える

MRenderUtil::raytrace

mentalrayのSubsurface Scattering Shader『misss_fast_...

UnityでPoint Cloudを表示する方法

UnityでShaderの入力パラメータとして行列を渡す

ZBrushでゴジラ2001を作ってみる 身体のSubToolを分割

コメント