MRが楽しい

MRやVRについて学習したことを書き残す

3Dモデルの大きな穴をメッシュのクリーンアップや辺選択を使って埋める

本日は Blender の技術調査枠です。
3Dモデルの大きな穴をBlenderのクリーンアップや辺選択を使って埋める方法を記事にします。

Blenderのクリーンアップで穴を埋める

Blenderにはクリーンアップという機能があり、3Dモデルのエラーをある程度自動で修復できます。
その中の一つに「穴を埋める」という機能があり、3Dモデルに空いた穴を検出して自動で埋めることができます。
以下でクリーンアップ利用方法を記事にしています。
bluebirdofoz.hatenablog.com

クリーンアップで穴を埋める

以下のような穴空きのあるUV球を用意しました。
f:id:bluebirdofoz:20190506221249j:plain

左半分には1つの面を削除した穴があります。
右半分には連続する2つ以上の面を削除した大きな穴があります。
f:id:bluebirdofoz:20190506221259j:plain

これをクリーンアップしてみます。
[編集モード]のメニューから メッシュ -> クリーンアップ -> 穴を埋める を実行します。
f:id:bluebirdofoz:20190506221315j:plain

結果、以下のように1つの面を削除した穴のみが埋められます。
連続する2つ以上の面を削除した大きな穴は面が貼られていません。
f:id:bluebirdofoz:20190506221327j:plain

クリーンアップでより大きな穴を埋める

2019/05/07追記。
確認したところ、クリーンアップの[穴を埋める]でも辺数を指定すれば、大きな穴も埋められたので追記します。
頂点を全選択した[編集モード]のメニューから メッシュ -> クリーンアップ -> 穴を埋める を実行します。
f:id:bluebirdofoz:20190507024450j:plain

[穴を埋める]パネルが表示されます。
ここの[辺数]を変更すれば、指定した辺数以下の辺ループの穴が埋められます。
f:id:bluebirdofoz:20190507024505j:plain

辺選択を使って大きな穴を埋める場合

辺選択で連続性のない境界辺を選択し、[面張り]を実行することでも穴を埋めることができます。
[編集モード]で[辺選択]のモードに切り替えます。
f:id:bluebirdofoz:20190506221429j:plain

メニューから 選択 -> 特徴で全選択 -> 非多様体 を実行します。
f:id:bluebirdofoz:20190506221438j:plain

[非多様体を選択]パネルが開きます。
[境界]にチェックを入れると、穴が開いているで境界となっている辺が全て選択されます。
f:id:bluebirdofoz:20190506221449j:plain

この状態でメニューから メッシュ -> 面 -> 面を張る を実行します。
f:id:bluebirdofoz:20190506221506j:plain

これで選択中の全ての辺ループに面が貼られます。
f:id:bluebirdofoz:20190506221518j:plain
意図的に開けているような大きな穴でも埋めてしまうので注意が必要です。
完全に閉じられた想定の3Dモデルに対して利用します。