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

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

Zbrush=ハイポリ至上主義からの脱却(Zbrush2018以前とZbrush2019以降との大きな違い)

(約 6,100文字の記事です。)
f:id:yamato-tsukasa:20190501205129j:plain

Zbrushは他の3DCGソフトと大いに違ってハイポリでも普通に動く。ゆえにZbrushを使う=ハイポリでモリモリ造形する、という構図ができやすいが、これは落とし穴でもある。今回は、ハイポリをなるべく避ける方向で造形することのメリットについての回想録。有益な情報はほぼない、と思う(笑)

要約

  1. Zbrushの特徴部分であるブラッシングこそが実は最高難易度の技術。だからZbrushは難しいのである。
  2. 造形においてブラッシングは可能な限り避ける。それなしで思い通りの形が表現できるのならそれが一番
  3. IMブラシ、VDMブラシ、マスク+ギズモ操作で表現できる可能性が常にあることを考えるべき
  4. 「如何にブラッシングしないで完成させるか」を考えることが重要

それ、本当にハイポリじゃなきゃだめ?

実は、ハイポリでないと実現できない造形ももちろんある。だが、そこに明確な答えがあるならいいが、本当にそうか?惰性や、教科書でそうなっていたから、という理由で何となく機械的にハイポリにしていない?

そもそも、なんでハイポリじゃなきゃだめなのか?考えてみよう。

ハイポリでないと実現できない場合

  1. きついRが一体となったメッシュである造形
  2. ポリペイントで高解像度が必要

実はこれだけである。これに当てはまらない場合は、例外なくローポリ化が可能である。
きついRとは、耳、指先や指の付け根、割れた腹筋や胸の谷間などだ。狭い範囲ながらいずれもきついR表現が必要な部分である。ここをローポリで表現することは不可能だ。なので、フィギュア造形で、素肌についてはハイポリ化するのは必然と言える。また、ウェーブのきつい衣類もハイポリ化せざるを得ない。
だが、それ以外では基本的にローポリベースでいけるし、その方が効率がいい。

ハイポリよりローポリがいい理由

以下では、シンプルに造形のみの話だ。リグ入れしてゲームで使う、などという前提はなしだ。リグ入れになると関節の曲げを意識したトポロジなどの話が入ってくるのでややこしくなる。単純に形を作る、という1点に絞った話になので、その点だけご了承ください。

ハイポリは面が荒れやすい。そりゃそうだ、そういう微妙な凹凸が表現できる分けだから。ローポリは正反対で、面が荒れない、すぱっとした造形が可能だが、微妙な凹凸を表現できない。互いに正反対の性質だ。

だが、Zbrushではダイナミックサブディビジョンと言って、制御がローポリなのに曲面はRがきつい表現ができるという技がある。ローポリなのにハイポリ表現ができる。だからローポリが有利だ。

一方、一度ハイポリになるとローポリのようなつるんとした表現は難しい。メッシュの操作の技術が必要だし、誤操作で面が荒れると整えるのがとても大変だ。
例外は平面化のみだが、それ以外で緩いカーブで全てのハイポリ頂点を整えるのは相当に難しい。ダイナミックサブディビジョンで滑らかカーブなのに、ディバイドを確定させた後にちょっとでもブラシで触ろうものなら荒れまくりである。

筋彫り、それ本当にハイポリでないと実現できない?

ハイポリは、制御すべき頂点数が多くなるため繊細さが必要だ。繊細な作業は疲れる。そればかりか、再現性が低い。つまり、全滅してやり直しのリスクが大きい。ハイポリの真のリスクは、やり直し=全滅なのだ。だがこの点に触れている記事はWeb上ではほとんどない。Web上でよくあるのは己の技術の高さアピール記事だが、そんなのはどうだっていいと思う。本人にしか役に立たないからだ。

で、筋彫り、それ、本当にハイポリ+ブラシですべきことですか?筋彫りを何のためにするのですか?

鋭いエッジ+滑らかな曲線=ローポリの得意分野

どう考えても、筋彫りで作られる形状って、ローポリの得意分野でしょ?鋭いエッジ、滑らかなカーブ、あるいはきっちりとした直線。ハイポリが不得意とする分野でしかない。なのになぜハイポリでわざわざ彫るの?ローポリ+ダイナミックサブディブ+ブーリアン減算でよくね?

Zbrush2019以降はブーリアン結合+Zremesherが有効

Zbrush2019のZremesherはエッジ検出機能がとても優秀になった。だからブーリアン結合と組み合わせることで、鋭いエッジを保ちつつもローポリ化が簡単になった。つまり、エッジを作るためにハイポリ+彫り込みの必要がない。しかもリアルタイムの表現であるライブブーリアンという便利機能があるのだから。加算も減算もリアルタイムで見られるのだ。ブーリアン演算ならば、互いのトポロジは無関係だ。つまり、ハイポリである必要がない。

IMブラシ化でメッシュを柔らかくできる

今までは固い/変形不能だと思い込んでいたローポリメッシュも、一度IMブラシ化してしまえばコンニャク化可能だ。オブジェクトの表面に沿って柔らかく変形可能だ。滑らかな曲線は、これまたローポリの得意とするところだ。

凸部の根元の鋭いエッジは別メッシュの重ね合わせ+Zremesherで作れる

一番楽なエッジの作り方は、別メッシュを重ね合わせることだ。交差部分にきっちりとエッジが立つ。1つのメッシュに結合した状態でエッジを立てようとするから無駄に苦しむし、結果、汚いエッジしか残らない。メッシュを分けてしまえばいいのだ。どうしても1つに結合したいなら、ブーリアン結合+Zremesherでエッジに沿ったエッジループを作らせてしまえばいい。それだけだ。ハイポリである必要がない。

また仕上げ段階に関して言えば、そもそも仕上げ直前にブーリアン結合&デシメーションマスターという事も有り得るわけだし。ますます「作業の途中過程がハイポリ」である必要がない。

つまり、鋭いエッジを作るためだけにハイポリにする必要はない。Zbrush2019のZremesherの優秀なエッジ検出機能を使えばいいのだ。こういう技を使えないのと、使わないのとは意味が全く異なる。そして、使えるようになってしまえば何の問題もない。知識は技術。

ダイナメッシュは避ける

Zbrush2019のZremesherのエッジ検出機能が優秀になったため、2019でダイナメッシュを使う意味がほぼない。ダイナメッシュは、左右対称を保証しないリメッシュ手段だし、トポロジも全く無視される。また、ダイナメッシュではエッジがキープされないのが何よりも痛い。だからエッジを綺麗にするために無駄にハイポリ化を強いられる。

一方ブーリアン結合+Zremesherではもとのトポロジが維持されるので、メッシュの交差部分にできるループエッジなどが維持されやすい。ポリグループをキープさせるオプションも役に立つ。必要なら、Zremesher Guideやポリペイントカラー別でポリゴン密度を指定してZremesherをかければいいだけのことだ。そしてその後、ハイポリ化もそこからディバイドさせれば高密度化も可能だ。

ここまでで、既存の手法に含まれる無駄が明らかになってきたと思う。Zbrush2019の新機能は、これまでのやり方を見直すべきだと思うほど向上しているのだ。Zbrushを「1つのZbrush」として考えていてはいけない。Zbrush2018以前とZbrush2019以降ではできることの幅が結構異なる。思い込みが一番危険。

別メッシュの重ね合わせ+仕上げにブーリアン結合を積極的に使おう

これのメリットは、作業中にどんなに変更しても一方が他方に影響を与えないというメリットがある。特にサブツールが別なら完璧だ。同一サブツール内ならマスクや非表示化の一手間がかかるが、不可能ではない。エッジの制御とトポロジ制御が独立しているので修正も容易だ。ローポリならばPCが軽いままでもある。

Zbrushといえばハイポリ+ブラッシングという先入観がいろいろとワークフローを乱す。最初に書いたように、

  1. きついRが一体となったメッシュである造形
  2. ポリペイントで高解像度が必要

この2点に該当しない場合には、ローポリで表現できるのである。現存する教科書などで色々技が駆使されているが、プロジェクトオールなどで別サブツール同士を滑らかにつなぐ技法をを見ても、根本は(1)に基づいているので、この原則から外れない。

Zbrushではブラッシングが最も高度&手間がかかる

Zbrushの特徴はブラシで造形だが、そのブラシでの造形が最も時間がかかり、最も技術が必要である。要するに最高に非効率な最終手段なのだ。だからZbrushは難しいのだ。
Zbrushの特徴部分が最高難易度の技術なのだから、Zbrushは難しいのである。

だから、造形においてブラッシングは可能な限り避ける。それなしで思い通りの形が表現できるのならそれが一番なのである。どうしてもブラッシングでしか表現できない部分にだけブラシをかける。だが、その表現自体も、IMブラシ、VDMブラシ、マスク+ギズモ操作で表現できる可能性が常にあることを考えるべきだ。特にVDMブラシはブラッシング版スタンプだから。一瞬で造形が終わる。マスク+ギズモも滑らか造形には有効だ。また、鋭いエッジが必要な造形ならIMブラシで一発スタンプで終わることもあるだろう。

なので、Zbrushを使ってのモデリングで効率を考えるならば、真っ先に「如何にブラッシングしないで完成させるか」を考えることが重要なのだ。
もちろんブラッシング技術が重要なことは間違いない。だが、それを常に駆使するのは時間とエネルギーのロスを自ら受け入れるようなものなのだ。悦に入るために苦難の道を選びたければ止めはしないが……。

だからブラシの練習と、実践のモデリングとは分けて考える

練習と実践を混ぜるとろくな事がない。練習ならば、結果を観察することに意味がある。だが実践なら仕上げることにのみ意味がある。途中経過は少ないほうがいいくらいだ。だから、どうしても練習と実践では、「その後に自分のみに残せる考察の深さ」が異なる。だから混ぜてアプローチしてはいけない。

Zbrushでのモデリング力の向上には、学習と実践の両輪が必要

Zbrushでのモデリング力の向上には、学習と実践の両輪が必要だ。その学習とは、単にチュートリアルからの学びだけではなく、練習という試行錯誤の結果を分析して導き出した結論から、次の自分の作業ワークフローを向上させることも含まれる。そういう学習なしに実践を繰り返しても、無駄な手順が無駄なまま延々と繰り返されるだけだ。時間の無駄だ。問題はその無駄に気付かずに過ごしてしまうことだ。向上しない。それが限界だと思い込む&そんなもんだと思う。そこに隙がある。

Zbrushでのモデリング力の向上には、学習と実践の両輪が必要

くどいようだが敢えて繰り返す。Zbrushでのモデリング力の向上には、学習と実践の両輪が必要だ。ハイポリ至上主義からの脱却を進める理由もこれだ。○○でないと実現不可能、というならばその手段は正しいが、別に○○でなくてもできるならば、そして別のやり方が効率的ならば、さっさとワークフローを変えるべきだろう。別に造形にルールがあるわけじゃない。バカみたいに球やサイコロやZsphereマネキンやテンプレのマネキンから作り出す必要はない。ゴールに最も近い造形からスタートしたほうが早い。もちろん、造形力を鍛えるためにそこからスタートするのは意味があると思うが、既に完成型に近いモデルが溢れている現状から、あえてそこに持っていくまでの造形力が本当に必要なのか?特に人体構造。とっくに完成しているのに。骨盤隆起ブラシや上腕二頭筋ブラシを作ってスタンプすれば数秒だと思うのだが……。ま、ご自由に。ブラッシングなしでも形にするための工夫の余地は沢山あると思う。

造形力は重要だけれど

もちろん、ゼロからの造形力を鍛えることはとてもいいことだと思う。賛成である。アーティストとしての底力だと思うから。でも、「私はその底力のあるアーティストを目指しているのか?」というと、私はそうでもない(笑)だいたい人間の形になっていればOKだ。手足の長さのバランスが左右で破綻するみたいな変な絵になっていなければ、だいたいOKだし。むしろ、その底力を鍛える時間よりも別の表現力(例えばテクスチャ、ライティングなど)を向上させられるなら、そっちに時間を投資したいかも知れない。私の場合、モデリングが目的ではなく、絵作りが目的だからだ。

手段と目的を入れ替えないこと

あなた(私)は、何のためにモデリングをしているの?これを忘れてはいけない。枝葉末節にとらわれて、どうでもいいところのモデリングに何時間も費やしてはいけない。キャラの下着の造形にこだわる人はいるかも知れないが、まさか内蔵のモデリングにこだわる人はいないだろ?だって100%見えない部分だから。これ、色んなことに当てはまるはずなのに、なぜか見えない所の造形にこだわることにハマる。3DCGは絵と違って後から直せるんだから、とにかくざっくり作って前に進む。全体像を見てから、気になるところを直す。それができるのがデジタルの強みだ。

だが、これをハイポリ造形にしていまうと、そうとも限らない。やり直し=全滅も有り得るのだ。だからハイポリ造形は避けたい。可逆性が担保されないと、「とりあえずこれでいいや、次。」という気分になれない。だから拘泥して作業が進まない割には仕上がりがぱっとしない。

結論 今後の方針

というわけで、私のモデリングでは、今後、そうせざるを得ない明確な理由がある場合を除いては、極力ローポリメインで造形していきます。
特に前回の記事で書いたIMブラシによるコンニャク化のメリットはとても大きく、それによってこの方針を固めることができたのです。

長々と書いたが、これはつまり、Zbrushなのにあえてハイポリを避けてモデリングすることのメリットを今後の活動を通じて体現していく、ということの決意表明みたいなものです。ハイポリ至上主義のやり方とは異なるアプローチでもきちんと表現したい物を表現できるはずだ、ということを試すことでもあります。

めちゃんこ長い駄文になってしまいました(笑)
最後までお読み頂きありがとうございました。何かのお役に立てば嬉しいです。

大和 司

今回の創作活動は約1時間(累積 約854時間)
(251回目のブログ更新)