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

3DCGでワンシーンメイキング(オリジナル小説の挿絵作り)

Zbrushのみでだいたい均一な肉厚でメッシュを中空にする方法

(約 2,200文字の記事です。)
f:id:yamato-tsukasa:20190816173743j:plain

ひょんなことから試すことになった記事。結果としては「だいたい同じ肉厚」で、「だいたい中空部分を作れる」という結果。なぜならば表面状態の凹凸の細かさによって中空の空間までの肉厚が変化するから。とは言っても、3Dプリンタでフィラメントをけちりたい人にはそういう細かい所ではなく、全体的な中空に意味がある。なので有効な方法かも。特にZbrushのみで完結させられる点がポイント。詳細な手順は有料記事です。

はじめに

筆者は実は、ZModelerのExtrudeやQMesh、Inflate等を使ってポリゴン面の法線方向に面を押し込む方法を試したり、サブツールウィンドウの下の抽出(Extract)を使って肉厚化するなど一通り試した。だが、問題が発生した。それは耳の裏などのような複雑な凸凹部分。単に面の法線方向へ移動すると下の画像のように内面が外面に突き出るという謎の自己交差が発生する。これは使えない。

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

なので、結論から言うと、Zbrushでは表面の凹凸の全てに対して正確な均一の厚みを「内側に押し出して作ることはできない」という事だ。(もちろん凹凸が少なければ作れるが。。。)肉厚の内側の軽い自己交差ならダイナメッシュやブーリアン結合で解消できるが、内面同士の複雑な自己交差や、内面が外面に飛び出す交差は致命的で解決に手間がかかる。

それを回避するためだとしても、それだけのために表面のトポロジは一切いじりたくない!これ重要。完成したトポロジはいじりたくないのだ。なので当手法では表面側のトポロジは変更しない。肉抜きされた穴=内皮にのみ新たな面を作成する。

なお、内面ポリグループのみを可視表示させてスムーズストロングブラシで潰すという力業も試したが、下の図のように表面の凹凸によっては肉厚が危険なほど薄くなるリスクがあり、それに気付かないことも有り得る。なのでそのやり方はあまり効率的ではないし、本質的でもないと思ったのでボツにした。

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

結局スタンダードな手法に落ち着いた

ま、多くの人が予想するように、最終的にはブーリアン減算です。

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

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

後は各自工夫すればだいたい作れるはず。せっかくなので筆者が試した一通りの手順を知りたい方は以下の記事をご覧下さい。

Zbrushのメッシュの厚さをほぼ一定にして中空にする方法|大和 司|note

ネット上やTwitterには、もっと「肉厚が一定であることにこだわった手法」が存在するが、上手くいく例もあれば、デモヘッドの耳裏のような形状ではNGだったりと、結果が不安定なのだ。毎回確実にいける手法でないと紹介できない。そして筆者が色々試行錯誤して、どんな形でもほぼ肉厚が一定かつ細部がきちんと残せる中空化の手法がこれです。
一定の肉厚にする事と、細部を肉抜きしないで残すこととは矛盾するため、機械的な手法では耳の裏などの複雑な形状が破綻します。だから当手法では肉厚の一定さよりも細部が潰されないことを優先しているため、「ほぼ」一定の肉厚と言っています。ほぼ、だいたい、およそ一定の肉厚な理由はそれです。あとは調整のしやすさ。これが最も重要だったりします。

顔表面に内皮を追従させようとする手法だと、そこが良くても今度は耳の裏が破綻して予期せぬ穴ができたりする。当手法では外皮と連動しない部分も出てくるが、予期せぬ開口ができるよりは部分的に肉厚になった方がまだ被害が少ない。当手法の特徴は、外皮を見ながらブラシで簡単に内皮を調整できる点。ライブブーリアンの特徴をフル活用。なので、気になったらブラシで部分的な肉厚調整も簡単にできる。抜かりはない。

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

有益な情報なので、リンク先は有料記事です。 
約 2,400 文字、画像 10枚での解説です。

有料マガジンには複数の記事が含まれており、1つ購入頂くと全ての記事が読めます。記事の内容はこちらの目次をご覧下さい。

ZbrushユーザーのためのTips集3「目次」 - 画力がないなら立体を作ればいい


今回の創作活動は約30分(累積 約927時間)
(318回目のブログ更新)