Blender2.81を使用してフォトグラメトリモデルの目を動かす

フォトグラメトリで人の身体をスキャンしても、通常の状態では目を動かせません。この記事では、Blenderを使って目玉のパーツを別で作成することで、目を動かせるようにする方法をご説明します。

はじめに

フォトグラメトリのモデルは、目も顔も身体もすべてメッシュが繋がっている状態です。腕や脚はボーンを入れるだけで動かせますが、目を動かすためには目のパーツを顔から分離して動かす必要があります。

この記事では、体全体をInstant Meshes、顔のみをBSurfacesでリトポロジーし、結合後テクスチャをベイクした以下のフォトグラメトリモデルを利用して説明します。

目と口にあたる部分はあらかじめ穴を開けておきます。

リトポロジ済のモデル

リトポロジ済のモデル

 

  • リトポロジーとは:頂点数が多い3Dモデルをローポリゴンに置き換える手法
  • ベイクとは:リトポロジー後の3Dモデルに、元の3Dモデルからテクスチャを作成する手法

それぞれの工程については以下をご参照ください。

リトポロジーを自動で行うフリーソフト「Instant Meshes」の使い方解説

リトポロジーを手動で行うBlenderの標準アドオン「BSurfaces」の使い方解説

リトポロジー後の3Dモデルにテクスチャをベイクするやり方解説

作業手順

目の縁を内側に伸ばす

目玉のパーツを作る前に、目の淵を内側に伸ばします。これは目玉と顔の間に隙間ができないようにするための処理です。

目の周囲の頂点を選択します。

目の頂点を選択する

目の頂点を選択する

[E]キーを押して奥に押し出します。

奥に押し出し

奥に押し出し

目玉を配置する

キャラクターモデルなどでは目玉の形も少し変形する必要がありますが、フォトグラメトリモデルは人間の目玉と同じ球の形を利用します。

[Shift]+[A]キーからMesh→UV Sphereを追加し、目のサイズに合うように大きさを調整します。

UV球を追加

UV球を追加

両目とも、正しい位置に配置します。

両目にあたる位置に移動させる

両目にあたる位置に移動させる

Editモードに移動し、目玉の一番外側の円周を一周選択します。

シームをつける

シームをつける

UVを綺麗に展開するために、「Edge」から「Mark Seem」を選択します。シームをつけた辺はUV展開時に切り開かれることになります。

シームがついた

シームがついた

「UV Editing」タブに移動し、目玉の頂点を全選択後、[U]キーから「Wrap」もしくは「Smart UV Project」を選択すると、画面左側にUVが展開されます。

UVを展開する

UVを展開する

展開したら、新しくテクスチャ画像を作成しましょう。

目玉のテクスチャをペイントする

「Texure Paint」タブに移動し、テクスチャを描いていきます。境目が不自然に見えないように陰も塗っています。

テクスチャを塗る

テクスチャを塗る

目の輪郭のメッシュや輪郭周りのテクスチャも適宜調整しながら、顔と目玉を合わせていきます。

顔側のテクスチャも少し調整

顔側のテクスチャも少し調整

目を動かす

[Shift]+[A]キーから「Armature」を選択し、目を動かすためのボーンを追加します。目玉の位置に合うようにそれぞれ配置しました。

ボーンを追加

ボーンを追加

オブジェクト→ボーンの順に選択した状態で[Ctrl]+[P]キーを押し、「With Automatic Weights」からオブジェクトとボーンをペアリングします。

ペアリングする

ペアリングする

ポーズモードに切り替えてボーンを回転させると、目が動くことを確認できます。

目が動いた

目が動いた