shaderko氏が開発・公開しているBlender向けの無料オープンソースアドオン「Remi」のご紹介!高密度なメッシュや、穴・亀裂・分離したパーツなどを含む扱いにくいジオメトリを対象に、メッシュ修復、リメッシュ、ポリゴン削減、Quadリトポロジー、UV生成、テクスチャベイクまでをBlender内で行うことができます。
Remi
AIが生成したメッシュを整理し、適切なジオメトリを作成する方法を模索してきました。予想以上にうまくいくワークフローをいくつか見つけました。モデルが十分に溜まり、この解決策が不要になるまでは手作業で行っていましたが、それでもプラグインとして作成しました。このプラグインには、リメッシュ、クリーンアップ、ベイク、穴埋め機能が搭載されています。もし実際にこのプラグインをご利用いただける場合は、星の評価をいただけると幸いです。そうすれば、少なくとも誰かが使っていると分かり、今後も機能追加(20%の確率で動作する機能ですが)を続けていくべきだと判断できます。
- Repair / Remesh: Voxel RemeshやClosing Volumeなどを使用して穴、亀裂、断片化したジオメトリを修復
- Decimation: PyMeshLabを利用したマルチパスのポリゴン削減
- Interactive Instant Meshes: Instant MeshesをBlender内に統合したガイド付きQuadリトポロジー
- AutoRemesher: 外部AutoRemesherを利用した自動Quadリメッシュにオプション対応
- Remi UV: メッシュを解析してUVチャートを生成しxatlasを利用してパッキング
- Texture Baking: Albedo、Roughness、Tangent Space Normal、AOを新しいメッシュへベイク
- Edit Mode Tools: 結合されたパーツや二重化したシェルなどを検出・分離する編集支援機能
処理前のソースメッシュはそのまま保持され、Repair、Remesh、Decimation、Retopologyではそれぞれ別の結果が生成されます。
3Dスキャンや生成AIなどから得られた、そのままでは扱いにくいメッシュを整理する用途でも活用できそうです。
Instant MeshesをBlender内にネイティブ統合
リトポロジーには、Wenzel Jakob氏らによって開発されたオープンソースの自動リメッシュ技術「Instant Meshes」が使用されています。
RemiではInstant Meshesの処理をPythonで再実装したり、従来のスタンドアロンアプリケーションを外部起動したりするのではなく、実際のC++フィールドソルバーとQuad抽出コードをネイティブモジュールとしてBlenderへ統合しています。
Blenderのビューポート上からQuadレイアウトをプレビューできるほか、「Orientation Comb」でポリゴンの流れを誘導したり、「Output Edge」で出力エッジを沿わせたいラインを描いたりしながらインタラクティブに調整できます。
CGAL Alpha Wrappingによる欠損修復
オプションの「Alpha-Guided Patches」では、CGALの「3D Alpha Wrapping」が使用されています。
これはSIGGRAPH 2022で発表された「Alpha Wrapping with an Offset」をベースとする技術で、欠損などを含む入力ジオメトリからWatertightなサーフェスを構築することができます。
RemiではAlpha Wrapを最終的なメッシュとして使用するのではなく、欠損箇所を補うためのドナーパッチを見つけるガイドとして活用。断片化したメッシュや生成AI由来のメッシュなどの修復用途が想定されています。
なお、この機能を使用するにはCGALとCMakeが別途必要です。
自動処理パイプライン
「Run Full Remi」では、Source Mesh → Repair / Remesh → Decimate → AutoRemesher(オプション) → Texture Bake(オプション)という一連の処理を実行できます。
一方、Instant Meshesを使用したガイド付きリトポロジーは独立したインタラクティブワークフローとして提供されています。
Remi UV
UV生成についても専用の「Remi UV」が用意されています。
入力メッシュの連結成分、境界、マテリアル、シャープエッジ、形状などを解析し、Planar、Hard Surface、Organic、Cylindrical、Irregularといったタイプを判定。BlenderのMinimum Stretchなどによる展開と、xatlasを利用したUVパッキングを組み合わせています。
既存UVに問題がある場合の検証や修復にも対応し、テクスチャベイク前にUVの欠損、潰れ、反転、オーバーラップなどがチェックされます。
AutoRemesher
AutoRemesherには、 AutoRemesherリリースページから入手できる別の実行ファイルが必要です
メッシュ修復から軽量化、リトポロジー、UV、ベイクまで一通り出来るのが魅力的ですね
RemiはBlender 5.1以降に対応し、GPL-3.0-or-laterライセンスでGitHubにて無料公開されています
ちょっと私はまだ試せてないのでメモがてらに記事をアップしました
是非チェックしてみてください!










コメント