EpicMegagrants を受賞した オープンソース3Dモデリングソフトウェア Dust3D のデベロッパーである Jeremy HU 氏が開発している新しいオープンソースのオートリメッシュツール「Auto Remesher 」の紹介です。
Auto Remesher は、6月ごろから公開されており、8月になってアルファ版としてアップデートがされています。
Dust3Dに統合するためのリメッシュツール
Jeremy HU 氏によると、自動クアッドリメッシュツールは許容できる性能が出てきたらDust3Dに統合されるということです。
Dust3Dについては以下の記事をご覧ください
6月に投稿されたDust3DブログやTwitterでは、Quad RemesherとオープンソースのInstant meshesやQuadriflowなどについての現状が述べられており、現在Dust3Dに統合されている Instant meshes やその他のオープンソースリメッシャーへ不満から、代替になるより優れたリメッシュ機能を求めて開発をはじめたようです。
Dust3Dでは、メッシュはプロシージャルに生成されるため、リメッシュ機能は緊急に必要ありませんが、ボクセルベースのスカルプト機能が導入された後に優れたリメッシュ機能が必要になるということです。
Auto Remesher について
Auto Remesher には、2つのオープンソースプロジェクトCoMIso(Constrained Mixed-Integer Solver)とクワッドメッシュ抽出ライブラリ libQEx が使用されています。この2つは新しいものではないですが、合わせたツールは今までありませんでした。
CoMIsoで生成された四角形は美しいが、遅すぎるという欠点があるようです。Jeremy HU 氏は、tbbなどの並列最適化を導入して解決したいと述べています。
現時点での最新版はalpha4となっており、twitterでも日々改善されている様子がつぶやかれています。
— Jeremy HU (@jeremyhu2016) August 8, 2020
Auto Remesher と Instant Meshes との比較
Peel 3dによってsketchfabで公開されている以下の手を使用して、リメッシュの結果を比較してみました。
Instant meshesの結果ははところどころ3角ポリゴンになっているのがわかります。設定やガイドなどもいじってみましたが、私が得られた結果は上のようになりました。対して、AutoRemesherの結果は、すべて4角ポリゴンでリメッシュされています。手のひらや手の甲はきれいですが、指の付け根などはメッシュが荒くなっていところが見られます。
以上はあくまでも上の手の3Dモデルで試した結果であり、他の例ではどうなるかわかりませんが、期待のもてる結果ではないかと思います。
Jeremy HU 氏は、Dust3Dに統合するためのリメッシュツールとして開発していますが、オープンソースなのでBlenderや他のDCCツールのプラグインが作成される可能性があります。
[9/15更新]最初のベータ版がリリース
Auto Remesher のアルファ期間が終わり、
最初のベータ版がリリースされました。
Auto Remesherは主にDust3D用に開発されたもので、三角形モデルを四角メッシュにリメッシュするための自動四角メッシュ化ツールとライブラリを目指しており、現在はスタンドアロンツールとして使用できます。境界の有無に関わらず、三角形のメッシュをOpenVDBとCGALで一様にリメッシュします。
最初のアルファリリースでは、MIQ法 が使用されていましたが、複雑なメッシュでは計算時間が長くなるため 最新のベータ版ではQuadCover法 に変更されたようです。このメソッドは、すべての三角形をグリッドシステムに投影した後、アイソラインの交点と三角形の辺をトレースすることで、すべての接続を抽出することができるということです。
また、Auto Remesherの開発中に、Relative Height(相対的な高さ)という新しいメソッドが作られました。最新リポジトリではもう使われていませんが、他のことにも使えるかもしれません。興味がある方は確認してみてください。
詳しい情報はこちらから
AutoRemesher のダウンロードはこちらから(github)
コメント