画力がないなら立体を作ればいい

「何を作る」より「どう作るか」を考えたい人

Quad Remesherによって見えてきたFusion 360の活用

(約 4,000文字の記事です。)
実は私はかつてFusion 360を学んでみて色々モデリングに使えないか試した時期があった。

f:id:yamato-tsukasa:20180802222046j:plain

3DCGで初めてレンダリングしてみたのもFusion 360だった。

f:id:yamato-tsukasa:20180802072243j:plain


だが造形の不自由さからしばらくお蔵入りしていた。だがQuad RemesherによってCAD的な正確な幾何学造形が簡単にハイポリになってZbrushなどに取り込めることが分かった今、改めてCADであるFusion 360の実力について考えてみた。

CADの本当の得意分野を意識できていなかった

幾何学的に正確で、平面から押し出しベースで形を作れる。それは分かる。

だが、本当のCADの実力は「面一なブーリアン結合」だったのだ。ようやく気が付いた。

面一でオブジェクトを結合する

例えばこれ。

f:id:yamato-tsukasa:20191228012506p:plain

なぁんだ、同じ高さの角柱と円柱をメインのキューブの角に配置してブーリアン結合すればいいだけでしょ?

ところがこれがBlenderやZbrushではできない。そう、同じ高さ=面一=Coplanar面だから、ブーリアン演算ができないのだ。

Fusion 360ならドラッグ+面クリックでOKなのに、BlenderでもZbrushでもできないのである。

もちろん、組み合わせるオブジェクト同士を重ねて置いて、最後に後から面をトリムすれば面一になる。けれど、それは苦し紛れの苦肉の策であって、便利な機能ではない。単なる手間だ。また周りのメッシュ状況によっては、そのトリム用の減算メッシュの形にすら工夫が必要だ。またまた面倒だ。

というわけで本質的ではない。

なので、面一な結合についてはCADの圧勝だと言うことに、ようやく気が付いた。


f:id:yamato-tsukasa:20191228015322p:plain

トイレットペーパーのイメージ。円柱と板のシンプルな組み合わせだが、沢山の面一ポイントがある。これをBlenderで作るためには面を引き出すしかないが、そうなると、厚みを後から自由には変更できない。面の引き出し造形はそのまま造形時点のメッシュのトポロジ依存だから、後からの変更が難しい。自己交差は良くないし、ブーリアンするならば面一部分の処理が必要だ。円周の曲面部分にピタリとエッジを揃えると、面一になるためブーリアン処理できない。

たったこれだけのことができないのか!と驚いたブーリアン結合の強敵、面一、Coplanar面。強敵だった。

f:id:yamato-tsukasa:20191228020155p:plain

一見正しく見えても、

f:id:yamato-tsukasa:20191228020207p:plain

メッシュはおかしな結合結果になる。

もちろん、ポリゴン操作できるのだからおかしくなった頂点群を溶解してしまえばそれでおしまい、という考え方もできる。だがそれも結構手間だったりする。重なってねじれている面が同一平面状に作られているわけだから、色々とねじれて大変なのだ。

均一な角丸化(フィレット)

f:id:yamato-tsukasa:20191225193355j:plain


これについては以前の記事に書いたとおり、CADの圧勝だ。Blenderでも困難な場合がある。Fusion 360は自己交差にうるさいため、無茶な造形はエラーが出て不可能になる安全設計。

f:id:yamato-tsukasa:20191225193449j:plain

そうならないように設定すればこんな複雑な形もきちんとメッシュ化してくれる。

f:id:yamato-tsukasa:20191225193533j:plain

一方でBlenderではメッシュの重なりアリで操作できてしまう場合もあるため、後半でミスに気付くと痛い目にあう。

つまり、角丸化についてはCADがとっても強い。もちろんメッシュ形状によってはBlenderのベベルやWeighted Normalsも使える。だがそれはメッシュのトポロジ依存だから、無理な場合もある。素直にFusion 360で角丸化してからQuad Remesherでハイポリ化したほうがいい。

均一ではない角丸や面一結合もないならBlenderやZbrushでもOK?

一方でFusion 360も万能ではない。ポリゴンモデリングみたいにちょっと頂点操作、なんてことは無理。CADで手作業で作れる形には結構限界がある。工程が複雑になりすぎたり、可逆性がなくなったりなど。ポリゴンモデリングならちょっとでOK、の形を作れなかったりする。

で、別に均一な角丸でなくても良いならば、BlenderやZbrushが使える。角ごとにRを変えてもいいならば、厳しいところだけループメッシュを減らしてベベルを入れるなどの手作業にはなるが、最終的に形にはなる。Zbrushに至っては力業でスムーズブラシでもいい。見た目ベースの修正にはなるので職人技になってしまうが、できないわけではない。

また面一でなくてもいいなら素直にブーリアン結合が使える。

シンプルな形にした上でQuad Remesher経由でFusion 360に戻す荒技

Quad Remesherを使えばメッシュを四角化できるので、Fusion 360にメッシュ>Tスプライン>ソリッドボディ化できる。

f:id:yamato-tsukasa:20191226023424j:plain

f:id:yamato-tsukasa:20191226024622j:plain

ただし多少形が変わる。その代償に、CAD上での全体の角丸化が可能だ。自己交差しないようなエッジにする必要はあるけれど。

ん?Fusion 360をある程度覚えるとできることが増える?

ということに気が付いてしまったわけ。もちろんBlender+フルーエントでも押し出し成形はできる。だが複雑な形をブーリアン結合した形状の角に自由にフィレット設定できるのはFusion 360の強みだ。そればかりはフルーエントでもできにない。Blender上で疑似的なエッジには頂点グループを指定できないので、当然モディファイアの角丸ベベルは無理だし、実体としてのエッジになっていないからCTRL+Bも使えない。

ポリゴンモデリングからQuad Remesher経由でFusion 360に渡して加工し、再びQuad RemesherでZbrush戻し

このワークフローならばかなり自由に造形してからFusion 360上で角丸処理をし、再びQuad Remesherでトポロジを整えてZbrushに戻して変形加工するならば、全体的ないいとこ取りをしながら造形できるのではないか?というのが結論です。

形は作りやすいし、Quad Remesherでソリッドボディに戻したらFusion 360の強力なフィレットを自由に設定できる(はずだ)し、そうやって綺麗に整った角丸や面一を保ったまま再びQuad Remesherにかければ、平面もキープされているわけで。いいとこどりのワークフローな気がする。

デメリットは、Fusion 360の使い方もある程度覚えなければならない点。だが、造形の自由度はどんどん上がっている気がする。ハードサーフェースからソフトサーフェス、その中間まで、造形に合わせて得意なソフトを使い分ければ早くて正確。

学習するメリットはある。だいぶ昔に本棚にしまい込んだままのFusion 360の本3冊、捨てないで取っておいて正解だった。(Blender2.79本は売っちゃったけど、順番を間違えないで良かったw)
もちろんインターフェースなんかは変わっている気がするが、できることは本質的には変わっていないはずだ。ざっと復習すると幸せになれそうだ。


というわけで、なぜかFusion 360にカムバックしそうな予感なのです。

ま、私の場合、3DCGの入り口がFusion 360で、そこからMMDをかじってBlender2.79挫折、Zbrush、プラグイン開発、Blender 2.8、Fusion 360?という具合なので、Fusion 360は未知ではない分だけまだマシかも知れない。結局、思った以上にFusion 360でさくっとできそうなことが多いことに気が付いたのでした。

モデリングはZbrush1本でそれを極めて何でも作れるようになってみよう、と思った時期もありましたが、やっぱり効率的ではない。餅は餅屋。ソフトの特性に合わせて使い分けるのが一番効率的だ。再認識したのである。いいとこ取りをすればいい。それだけ。

f:id:yamato-tsukasa:20191225193902j:plain

これはZbrushで頑張るだけ無駄だからねぇ。Fusion 360ならサクサクできるからねぇ。

f:id:yamato-tsukasa:20191225193355j:plain

Fusion 360の限界を思い出しつつモデリング方法を模索しつつ、レンダリングによって見える形、つまりマテリアルによるモデルの見せ方も探っていけたらいいな。なんて欲張りな。

というわけで本日終了です。



今回の創作活動は約2時間15分(累積 約1,303時間)
(464回目のブログ更新)