夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

Blenderでリアルなアバターを作る モデルの作成

本日はモデリング枠です。

新型コロナウィルスが流行している2020年現在、IT関連だけではなくイベントがオンライン上で行われることが多くなりました。

イベントにはZoomなどが使われることが多いですが、xR系のイベントではClusterやVRChatなどのアバターとして参加できる機会も多くなってきました。

そこで今回は現実よりなリアルなアバターを作ります。

今回以下の2つのアドオンを組み合わせていきます。

・FaceBuilder

・MB-Lab

〇FaceBuilder

以前本ブログではFaceBuilderを用いて写真からリアルな顔の3Dモデルを作成しました。

redhologerbera.hatenablog.com

今回はここで作成したけん玉チャンピオン久保田悟さんの顔をベースに体を作っていきます。

〇MB-Lab

MB-LabはBlenderでリアルなキャラクターを作成できるアドオンです。

MB-Labを用いれば体格から筋肉の付き方まで細かく作成できます。

今回は体の作成に使用します。

Blenderでリアルなアバターを作る

〇顔の作成

①FaceBuildrで顔を作ります。

 ここでは以前作成した顔をそのまま流用します。

 顔の作成に関しては以前の記事を参考にしてください。

redhologerbera.hatenablog.com

redhologerbera.hatenablog.com  

〇必要のないメッシュを削除する

①FaceBuilderのタブから[Model]を選択

f:id:Holomoto-Sumire:20200926153616j:plain

②[Jaw]、[面]、[Nose]以外のチェックボックスを外します。

 f:id:Holomoto-Sumire:20200926153908j:plain

 この設定を行うと下画像のようになります。 お祭りなどで売っているお面のようにフェイス面以外の耳や後頭部、首、目のメッシュが消えました。

f:id:Holomoto-Sumire:20200926154037j:plain

f:id:Holomoto-Sumire:20200926154317j:plain

③[Ctrl]キー+[D]キーでメッシュをコピーしてシーンコレクション直下へドラッグ&ドロップします。

f:id:Holomoto-Sumire:20200926154753j:plain

④頂点のクリーンアップ

実は余計なメッシュを消しているのですが、頂点は存在し続けています。

f:id:Holomoto-Sumire:20200928083616j:plain

これは後々作業するうえで邪魔になるので削除します。

上部タブから[メッシュ]→[クリーンアップ]→[孤立を削減]を選択します。

f:id:Holomoto-Sumire:20200928083935j:plain

[孤立を削減]は単独で存在する頂点、辺、面を削除する機能でモデリング作業中に削除できていなかったノイズなどを削除するときに非常に有用です。

以上で顔が完成しました。

〇体の作成

①[MB-Lab]のタグから[Asian male]でキャラクターを作成します。

 f:id:Holomoto-Sumire:20200928084554j:plain

②[MB-Lab]で作成したキャラクターの体格を調整します。

 f:id:Holomoto-Sumire:20200928085108j:plain

redhologerbera.hatenablog.com

redhologerbera.hatenablog.com

redhologerbera.hatenablog.com

redhologerbera.hatenablog.com

③FaceBuilderで作成した顔を体の元の顔に合わせて移動します。

 デフォルトではFaceBuilderで作成した[S]キーを使用してサイズを調整し[MB-Lab]のキャラクターの顔に合うように配置します。[FaceBuilder]で作成した顔が被らないようにY座標向きに少し出します。

 f:id:Holomoto-Sumire:20200928085247j:plain

④正面からのビューに切り替えます。

 f:id:Holomoto-Sumire:20200928085425j:plain

 この時FaceBuilderのキャラクターとMB-Labのキャラクターで目の位置がずれています。

⑤[MB-Lab]のタブから目の位置を[FaceBuilder]の顔に合うように調整します。

今回の場合目がx軸外に開いていたため[Eyes]のプロパティから[EyesPosX]の値を小さくしました。

 f:id:Holomoto-Sumire:20200928085841j:plain

⑥[FaceBuilder]の顔を[MB-Lab]のキャラクターの目に合わせてきれいに並べます。

 f:id:Holomoto-Sumire:20200928090033j:plain

⑦ビューを横顔からの向きに切り替えワイヤフレーム表示に切り替えます。   f:id:Holomoto-Sumire:20200928090251j:plain

⑧[FaceBuilder]のメッシュとかぶっている[MB-Lab]のメッシュを選択します。

f:id:Holomoto-Sumire:20200928090415j:plain

⑨眼球は必要なパーツなのでワイヤフレーム状態のまま眼球部のメッシュを解除します。

f:id:Holomoto-Sumire:20200928090524j:plain

⑩選択されているメッシュを削除します。

 f:id:Holomoto-Sumire:20200928090611j:plain

⑪[FaceBuilder]のメッシュを非表示にして残されている余計なメッシュを削除します。

 f:id:Holomoto-Sumire:20200928090734j:plain

⑫眉毛のメッシュをFaceBuilderのメッシュに合わせます。

 f:id:Holomoto-Sumire:20200928091809j:plain

⑬[FaceBuilder]のメッシュを選択し[デメシート]のモディファイアを追加します。

 [FaceBuilder]のメッシュはポリゴン数が多いので削減してメッシュの統合を行います。

 f:id:Holomoto-Sumire:20200928091950j:plain

f:id:Holomoto-Sumire:20200928092057j:plain

 今回は0.4(ポリゴン数40%)に設定しました。

 f:id:Holomoto-Sumire:20200928092251j:plain

⑭[オブジェクトモード]から[Shift]キーを押しながら[MB-Lab]のメッシュ→[FaceBuilder]の順に選択し[Ctrl]キー+[J]キーを選択します。

 f:id:Holomoto-Sumire:20200928092517j:plain

 これで2つのオブジェクトが融合しました。

⑮顔の間のメッシュを[F]キーで埋めます。

f:id:Holomoto-Sumire:20200928093507j:plain

⑯新しく埋めたメッシュとその周囲の頂点を選択しBlenderタブの[頂点]→[頂点をスムーズに]を選択します。

 f:id:Holomoto-Sumire:20200928093727j:plain

 スムーズにする前はもともとのオブジェクトの間で段差ができてしまっています。

f:id:Holomoto-Sumire:20200928094036j:plain

 スムーズの作業を行うことで滑らかになります。

 f:id:Holomoto-Sumire:20200928094220j:plain

以上でモデルが完成しました。

肌の違いなどでまだなじんでいませんがメッシュとしてはリアルなモデルが完成しました。

 f:id:Holomoto-Sumire:20200928094519j:plain

[MB-Lab]のモデルにはもともとボーンが入っているので動かすことができますが、新しく作成した顔に関して動くための設定をしていないので次回以降作成していきます。

髪とマテリアルと服を作成すればかなりリアルなアバターになるのではないでしょうか?

〇今回協力していただいた久保田さんについて

以前の記事でも紹介させていただきましたが、久保田さんはけん玉とジャグリングなどを組み合わせた凄腕パフォーマーという一面だけではなくVRでの物理挙動などを得意とするエンジニアとしての一面も持っています。

けん玉には世界大会もあるようで久保田さんは上位ランクプレイヤーとしても活躍されているようです。

また、NHKで放送された番組では人類代表としてけん玉ロボットと対戦したりけん玉の魅力をいろいろな場で筆者を含めいろいろな人に伝える活動をされています

www.youtube.com

 けん玉と言ったら皿に乗っけたり玉の穴にけんを入れたりして遊ぶもの…と思っていましたが、彼の場合けんの二刀流なんてその、糸なしけん玉で玉を自在に操っています。

 指の上でけんをぐるりと回して放り上げ、空中回転の上もう一つのけんのけん先で受け止める技は世界でもできる人が限りなくいないそうです。   twitter.com

 けん玉とxRの融合、ぜひHoloLensでもやりたいですね!  

〇失敗例

次の画像は失敗例です。

保存しBlenderを終了し開きなおすとメッシュが崩れてしまっています。

f:id:Holomoto-Sumire:20200926155121j:plain

この現象を回避するためにはBlenderを終了する前に[MB-Lab]のメッシュからモディファイアと頂点グループをすべて外します。

おそらく[MB-Lab]ではパーツごとにパラメータでメッシュを編集できるためMB-Labのメッシュに編集が加わると誤作動を起こしてしまうようです。