【Blender】フォトグラメトリモデルの指先を作る

フォトグラメトリモデルの手は、指がくっついている状態であることが多く、そのままでは動かせません。この記事では、フォトグラメトリモデルの指先を動かせるように調整する方法をご紹介します。

はじめに

リトポロジー前のモデルの手(フォトグラメトリ後未加工の状態)は、以下のようなものです。人差し指〜薬指はくっついてしまっています。

指がくっついている

指がくっついている

このまま全身に自動リトポロジーをかけると、手は原型を留めない形になってしまいました。

手の形を留めていない

手の形を留めていない

そこで今回は、リトポロジー前のモデルの手を元に、人差し指〜薬指を分離して動かせるようにした手を作っていきます。

作業手順

リトポロジー前のモデルから手を切り出す

リトポロジー前のモデルの手を大まかに選択し、[P]キーからSelectionを選ぶことで手の部分を別のオブジェクトに分離します。

手にあたる部分を選択

手にあたる部分を選択

作業しやすいように、切り離した部分以外を非表示にします。

手以外を非表示に

手以外を非表示に

自動リトポロジー

リトポロジー前のモデルはメッシュが細かいため、そのままではくっついた指を切り離すのが困難です。
そのため、手の部分のみをもう一度自動リトポロジーします。

まず、Instant Meshesにモデルを流し込むために.obj形式でエクスポートします。

手を選択した状態で、「File」の「Export」から「Wavefront(.obj)」を選択します。

obj形式でエクスポート

obj形式でエクスポート

出てきたダイアログの「Include」の項目から、「Selection Only」を選択します。

選択部分のみをエクスポート

選択部分のみをエクスポート

出力します。出力された.objファイルを、Instant Meshesにインポートします。

Instant Meshesへ読み込む

Instant Meshesへ読み込む

自動リトポロジーの詳しいやり方については、以下の記事をご参照ください。

リトポロジー結果

リトポロジーの結果

リトポロジーした手を再びBlenderにImportします。

obj形式でインポート

obj形式でインポート

リトポロジー前のモデルと同じ位置に読み込まれます。

リトポロジー前と後のモデルが重なって表示される

リトポロジー前と後のモデルが重なって表示される

確認のために移動させると、ポリゴン数が少なくなっているのがわかります。後の手順のため、確認したら元の位置に戻しておきましょう。

リトポロジーできた

リトポロジーできた

テクスチャをベイク

リトポロジー後のモデルは、テクスチャがない状態です。この状態では、どこが本来の指の切れ目なのかがわからないため、一度テクスチャをベイクします。

テクスチャベイクのやり方については以下の記事をご参照ください。

テクスチャがベイクされた

テクスチャがベイクされた

指先のメッシュを分離する

いよいよ指先のメッシュを分離する作業に入ります。
指の境目にあたる頂点を複数選択します。

人差し指と中指の境目の頂点を選択

人差し指と中指の境目の頂点を選択

選択した状態で[V]キーを押すと、頂点の切り裂きができます。
以下のように、人差し指と中指の境目が切り裂かれたのがわかります(わかりやすいように見る方向を反転しています)。

頂点が切り裂かれた

頂点が切り裂かれた

この状態では指の側面に面が貼られていないので、面を貼りたい頂点を選択して、画面上部のEdgeからBridge Edge Loopsを選び、一列に面を貼ります。

辺ループのブリッジ

辺ループのブリッジ


側面に面が張られた

側面に面が張られた

指の頂点を動かし、人差し指と中指をはっきりと分けます。

人差し指を離す

人差し指を離す

これを他の指でも繰り返します。
なお、メッシュの境界とテクスチャの境界が合っていない場合もあります。

メッシュとテクスチャがずれている

メッシュとテクスチャがずれている

この部分のテクスチャを確認すると、以下のようになっています。

UV Editingタブから確認

UV Editingタブから確認

このような時は、UVエディタ上でテクスチャを移動させます。

頂点をテクスチャの境目に移動

頂点をテクスチャの境目に移動

また、メッシュを新たに作成するとテクスチャに黒の模様などが出てしまうことがあります。

テクスチャに変な模様が入っている

テクスチャに変な模様が入っている

これはメッシュを新たに生成した時、自動生成されたUVがベイクされていない場所を跨ぐと発生します。

UVがテクスチャのない部分を跨いでいる

UVがテクスチャのない部分を跨いでいる

この対処方法にはさまざまな方法がありますが、今回は肌色の部分に移動させることで解決しました。

UVを移動させる

UVを移動させる

この方法ではUV配置が崩れてしまいますので、後ほど複製し再ベイクを行い、正しいUV配置に直します。

全て修正が終わったら再ベイク

全て修正が終わったら再ベイク

手首につながる部分を補完し、以下のように完成しました。

修正完了

修正完了

全身に結合

手を全身から分離して作業していたので、全身のモデルに統合していきます。

しかし、全身のモデルにおける手への連結部分と、手のモデルの全身への連結部分の頂点数が一致していないと、直接つなげることができません。今回は手のモデルの頂点数が明らかに上回っています。

連結部の頂点数が合わない

連結部の頂点数が合わない

全身のモデルと手のモデルを両方選択した状態で[Ctrl+J]キーを押し、オブジェクトを統合します。
結合部の頂点数を比較しやすくするためです。

不要な頂点を溶解する

不要な頂点を溶解する

頂点数を減らすため、減らしたい辺を選択した状態で[X]キーを押し、Dissolve Edgesを選択します。すると面は削除されずに、辺だけが削除されます。

これを繰り返し、手首がつながるように頂点数を減らしていきます。

頂点数が一致したら、全身側の頂点と手側の頂点を1つずつ選択し、[Alt+M]で頂点を結合し、以下のように繋げていきます。

手を結合できた

手を結合できた

同様に右手も作っていきます。
左手をミラーモディファイアで反転させます。

ミラーモディファイア

ミラーモディファイア

フォトグラメトリモデルは左右が対称ではないので、ここでも調整が必要です。

ミラーモディファイアを適用

ミラーモディファイアを適用

左手と同様のステップで、手の頂点をつなげます。
左手で頂点数をある程度減らした状態で行うので、左手よりは作業量が少なく済みます。

頂点を繋げる作業

頂点を繋げる作業

違和感なく手を繋げることができました。

完成

完成

STYLYに関する質問、バグ報告、改善してほしい要望はSTYLY FORUMまで
https://jp.forum.styly.cc/support/discussions

Certified (QA) by Shota Shawn Yoshizawa
Edited by SASAnishiki