1. はじめに
Metashape演習の続きとして、3Dスキャンしたデータの不要な面(face)を削除して、穴を塞ぐ方法を紹介する。今回の方法はあくまで応急処置的な方法であり、映像制作の素材としても用いるモデルにする場合はリトポロジー等の処理が必要になる。
ここでは、Metashape上でトリミングしていない状態のShiisaaモデルを利用する。
以下のデータを準備する。
・OBJ(モデル)
・MTL(マテリアル)
・JPG(テクスチャ)
2. Blenderへ3Dモデルの読み込み
2.1 Blenderの起動
最初のBoxは削除しておく。
2.2 OBJファイルの読み込み
File > Import > Wavefront(.obj)でOBJファイルを読み込む。.mtlや.pngはOBJファイルに紐付いて読み込まれる。
3. 原点の調整、回転と移動
Viewport ShadingはSolidのままで進める。
Metashapeから出力したメッシュはそのままではオブジェクトの原点(Object Origin)がずれている。
オブジェクトを選択した状態で、Objectメニュー > Set Origin > Geometry to Origin。
視点をFront(Numpad 1)やRight View(Numpad 3)に切り替える。もしくは、Quad Viewに切り替える(下図)。回転(Rキー)や移動(Gキー)を利用して、シーサーの造形部分を原点に合わせていく。
4. 不要な面の削除
Front(Numpad 1)視点、Edit Mode(TABキー)に切り替える。
X-RayモードをONにする。
土台部分を領域選択する。
Deleteキーを押して表示されるメニューのFacesをクリックする。
一度だけでうまく削除できない場合は、上記手順を何度か繰り返して、不要な部分を取り除く。
5. 穴埋め
EditModeでEdge選択(Key 2)に切り替える。
X-RayモードはOFFにする。
1つ目の穴のEdgeをループ選択(Option+左ダブルクリック)する。
Faceメニュー > Fillをクリックする。
2つ目の穴も同様に塞ぐ。
穴埋めがうまくいかない場合は、穴埋めしたい縁周りをカットして、もう一度Fillを試す。
テクスチャを確認するため、Viewport ShadingはMaterial Previewに切り替える。
今回、底面のテクスチャに関しては処理しない。
6. Originの位置調整
FrontやRight Viewに切り替えて、GeometryをXY平面上に移動させる。すでに調整させている場合は不要。
Originは不要な面を削除する前のGeometryの中心のままとなっている。Originの位置をどこにするかは用途によって異なる。3DソフトウェアではOriginを中心に読み込まれるので、読み込んだときに中心となってほしい場所にOriginを調整する。
今回はshiisaaの底面中心付近の設定する。
Objectメニュー > Set Origin > Origin to 3D Cusor(World Originの位置の場合)をクリックすることで、OriginがGeometryの底面中心付近=原点(World Origin)にフィットする。
7. OBJ、MTL、JPGデータの書き出し
Fileメニュー > Export > Wavefront (.obj)をクリックする。
テクスチャを含む場合は、初期状態では読み込み元の画像の場所を参照するようにMTLにパスが保存される。
今回は、書き出し先にテクスチャ画像をコピーしたいので、書き出しダイヤログ右側のObject PropertiesのPath ModeをCopyに切り替える必要がある(下図)。
8. 底面とエッジの処理の検討(参考)
今回の方法だと強引にメッシュを削除してから底面を作成しているので、底面のエッジがギザギザになる。手動でSubdivideや頂点を調整していくこともできるが効率的ではない。SculptのSmooth Toolである程度調整できる。ただし底面のテクスチャは他の部分から投影されるので崩れた表示となる。Dyntopoを利用した場合はテクスチャが外れる。メッシュ全体をRemeshすれば自動的に大きな穴は塞がれ、底面のメッシュ分割も綺麗になるが、テクスチャは外れる(下図)。
3Dスキャンしたデータはそのまま3Dプリントすることを除いて、アニメーション等の映像作品に用いるにはポリゴン数が多すぎる。メッシュ分割し直しすか、リトポロジーを行ってから、テクスチャを貼り直すためのリファレンスモデルとして利用されることが多い。
9. Sketchfabへのアップロード(課題)
生成した3DデータをSketchfabへアップロードする。Sketchfab記事で解説する。
Back to Top