Unityを学ぶことにした 2(今後のZbrushとの付き合い方)
(約 6,900文字の記事です。)
前回の日記の続き。単なる日記。
やりたいことは何だったのかという原点回帰
気が付けばZbrushプラグイン開発者だったが、それはやりたいことだったかと言われるとNoだ。流れ着いた先でしかない。
ではやりたいことは?
振り返ってみれば、一次創作の絵作りだった。ここに回帰すべきときが来たと思っている。
3DCGを始めて、モデリング、トポロジ、UV展開とテクスチャ、マテリアル、シェーダー、リグやボーン、ウェイト設定とポージング、アニメーション(時間変化のある動画)、光源設定、カメラ設定、色んな物を学ぶ必要があった。そしてその実現方法=どのソフトで行なうか、これがとても重かった。一度決めたソフトについてはその後の時間とエネルギーをたくさん要するからだ。
そういうものに翻弄されて4年少々、大体ざっくりと全体像を把握した。
Zbrushは良くも悪くも「特別」
Zbrushから3DCGをスタートしたのでどうしてもモデリング、特にハイポリによるスカルプトに流された。だが今振り返ってみればハイポリ+スカルプトは、極わずかな表現手法の領域に過ぎない。本当に、ごく一部でしか通用しないスキルなのだ。
そこからBlender 2.8系が登場し、ようやく普通の3DCGの学習を開始できたように思う。モデリングについてもトポロジの理解、リトポの重要性、頂点法線や面法線の制御とシェーダーへの影響など、Zbrushのみでは知り得なかったことをたくさん学んだ。そして同時にZbrushオンリーの世界の狭さと限界をすぐに知った。
***
現状に辿り着くためには、もちろん気合いを入れて腹をくくって学んでいればもっと早く辿り着いた場所だろう。だがそれには時代の流れ(ソフトウェアの機能向上や登場のタイミング)もあった。
ハイポリと変形と、スカルプト
実はこれについては結構悩んでいて、最近になって答えが出てきた部分だ。これについては長くなりすぎるので気が向いたときにブログに書くと思う。本当に深くて長い内容になってしまうのです。。。
ま、簡単に言うと、ペンタブを使って感圧入力をしたときに「それはスカルプトなのか、トランスフォーム(変形)なのか」ということね。Zbrushで作れば何でもスカルプトかというと、違うということに気が付いた。簡単に言うとBlenderの編集モードでプロポーショナル変形で何とかなる操作は、スカルプトじゃなくて変形なのだ。
これに気が付いたとき、自分にとって必要なものは、スカルプトなのか変形なのか?というものに、あっさりと変形だと気が付いてしまったのだ。変形であれば、別にハイポリの必要がない。むしろミドルポリ以下のほうが制御がしやすい。ディビジョンレベルUPで後からいくらでもハイポリ化できるし、ローポリ側を維持していればそこからノーマルマップなどに転換できるわけで。そういう作業もBlenderでできるわけで、もちろんZbrush上でもできるが、Zbrushじゃないとできないということもない。
表面のポリゴン密度、ディティールとメッシュ形状と陰影表現
これも書けば長くなるし、簡単に複数の記事が書ける(笑)けど簡単に言うと、メッシュによる凹凸で繊細な表面形状を表現するべきか、ノーマルマップやテクスチャによる陰影表現によって凹凸を表現するべきか(実体は平らだったり滑らかな表面)、この違いだ。
フィギュア造型やZbrushでは前者が前提となる。そうなるとどうしてもハイポリ化が避けられない。だが実はハイポリ=スカルプトとはならない。例えばギズモのデフォーマ変形を使えば、それはハッキリ言ってローポリによる変形だからだ。自動ウェイト+キューブ変形と言える。キューブはローポリでしょ?
逆に表面が真っ平らな板ポリ1枚でも、ノーマルマップやテクスチャによる陰影があれば、人の目には「凸凹だ」と認識させられる。陰影や色による凹凸の表現だ。
つまり、表現したい物が1つでもその実現手法が2つはあることになる。ハイポリ+実際の凸凹にするのか、あるいはある程度平らなローポリ+陰影表現テクスチャか、ということだ。
そして自分に必要なのは後者だ、と思っていた。思い込んでいた。(まぁ、ノーマルマップなどを作るためにはハイポリから生成することも普通にある手法なので、あながちハイポリスカルプトが悪いとは思わない。)
トゥーン表現、線画表面にテクスチャは必要か?
紙媒体のコミックス、白黒印刷、そしてそういう表現のほとんどは、よほどのメインカットを除いては「物質の質感表現がバッサリとカット」されている。白黒印刷で物体の質感を表現するのはとても大変だからだ。トーンを何枚も重ねて薄い陰影を作り出し、かつそれに対応する印刷機が必要だ。なのでよほどのメインカットでない限り、たいていは省略される。
だが物語を楽しむ上で、その質感はあまり重要ではなかったりする。
そして白黒印刷の漫画には、当然ながら色情報がない。読者が想像で勝手に色を考えていい。色がないから作品がつまらない、とはならない。
そして、例え白黒2値の落書きでも、いい絵はいい。ここに絵の持つ魅力がある。そしてそれはずっと感じていた。だから一番最初にやりたかったこととして「絵を描く」ことからスタートしたわけだ。
これが本当の私のクリエイト活動の原点だったのだ。
だから、3DCGを学んで一周して返ってきた結果、本当に自分に必要な物は、リッチな表現ではなくて、逆に線画と影によるシンプルな表現だったのだ。
3DCGでトゥーン表現は結構面倒
これは学んでみて分かったことだが、うん、結構面倒臭い。私たちが普段見慣れたアニメ調の絵は、物理ベースで見ればかなり「変な絵」なのだ。物理計算の結果とは異なる、認識ベースでの色々な理不尽な補正の賜物なのだ。だから簡単にはできないことを知った。
その上でもUnityのトゥーンシェーダー表現は秀逸だ。分かっていてもすぐには手を出せなかった。Unityはゲームエンジン。私はゲームを作るつもりがない。だからどこか「別のツール」として考えていた。
だがBlenderでリグ入れ、ウェイト調整、テクスチャリング、そういうことを学んでくると、それらを駆使した上でトゥーンシェーダーで表現できる環境が必要になった。
それに加えてMMDライクに、リアルタイムに色々と処理出来れば文句なし。というのも、もちろんやりたいことは「まずは」1枚絵の静止画だが、将来的には「微妙にモーションを加えた」アニメーション表現にも興味があったからだ。バリバリ動くシーンは難しくても、ちょっとしたアニメーション表現ならば、ありだろう。表現については「大きく動くことが全てではなく、ちょっとした仕草や動き」こそが重要な場合もある。そういうシーンを表現できれば、もっと楽しいだろう。
だから絶対に1枚絵のイラスト似こだわるつもりはなくて、もし可能ならばアニメーションもさせたいと思っていた。つまりセルルック+アニメーション表現に将来的に移行できること。
これを考えると、Blenderは結構不利な表現環境だと思った。キャラのセットアップまではそれでいいが、撮影環境としてはBlenderは違う気がしていた。
私にとってのZbrushの変化
ここまで考えて、はい、Zbrushはどこ行った?となった。うん、個人的な創作活動においてはZbrushは卒業すべき時かも知れないと感じ始めていた。
私にとってのスカルプトの必要性がないことに気が付いた。テクスチャレベルで不要な凹凸表現は、もうポリゴンレベルで不要なことは明らかだ。
そしてミドルポリまででいいならばBlenderのスカルプトモードによる簡易スカルプトで十分ということになる。またリグ入れ&ウェイト塗り、ベタ塗りテクスチャを基本としつつも場合によっては多少はお絵描きも必要になるかも知れないので、そうなるとUV展開+サブスタンス3Dペインターの登場となる。凝ったマテリアルでなくていいので、汚し程度ならば何とかなるだろう。
うん、Aポーズを捨ててまでメッシュ確定させてまでGoBでZbrushと往復するメリットが全く見当たらない。むしろポーズライブラリが使えなくなるのでデメリットしかない。
そしてメッシュのポリゴン密度が最大でもミドルポリ程度ならば、最初のほうのテーマ「ハイポリと変形と、スカルプト」についてはどう考えても「単なる変形」に過ぎないので、8割が変形、残り2割が細かい変形であって、それならばスカルプト機能を活用できる(が、スカルプトとは呼べないほどのポリゴン密度)。それはBlenderのスカルプトモードで対応できる。
もちろんZbrushでないとできないことならばZbrushを使えばいい。だがその頻度が減るか0にできるならば、Zbrushは使わないことになる。
IMMブラシ、カーブブラシからの脱却
最近これが検証によって上手く行き、Blenderのカーブブラシを主体とした可逆的な変更を可能としたまま、IMMカーブブラシ相当のことができることが分かった。また厚みを保ったままメッシュ表面に貼り付けもできるようになったので、もうZbrushのIMMブラシの出番がなくなった。等間隔でカーブ上に任意のメッシュも配置できるようになった。
簡単に言うと、髪の毛束を、扱いにくいIMMブラシで不可逆で作り込む必要がなくなったということ。Blender上では同様のことを可逆でできるようになったので、Zbrushでやる必要がない。メッシュ化した状態をZbrushに送ることもできるので、私は多分IMMブラシは使わないので、そのうち使い方すら忘れることだろう。
ポージングはリグ変形で
Blender でリグ入れとウェイト調整ができるようになれば、ミドルポリの人物造型はもうマウス操作でポージング可能だ。そしてBlender上ならばポージング状態でもスカルプトできる。ポリ割り変更しても均等にウェイトが乗ってくれるので、そこから変なメッシュ形状を整えればいい。そうやってたたき台の8割が完成したら、リグポージングを捨ててメッシュ化した物をハイポリに寄せながら微調整したりスカルプトしてもいい。
だが線画やセルルックの場合、最終的な1枚絵に影響がなければ乱れたメッシュを調整する必要すらない。(アニメーションならばそれは必須だが)
そうなると、やはりZbrushの出番はない。簡単な修正ならばミドルポリならばスカルプトと言うよりも変形でしかないので。Blenderのスカルプトモードで「変形させる」ことでメッシュ表面を整えるだけ。決してスカルプトじゃない。そんなにデリケートな作業ではない。場合によってはマウスでもできそうだ。
それ以外にも背景セットアップなど
ここまではキャラクターの話だったが、1枚絵を作ろうとすれば背景も必要な場合もある。不要なら白一色でいいだろう。
で、Blenderで背景セットアップしてもいいが、ここでもまたレンダリングの話になる。背景もセルルック調にするか否か。そうしないと背景だけがフォトリアリスティックであって、そうするとキャラクターと合わない。となると背景でもセルルック調、最低でも絵画調が必要になる。
またオブジェクトが増えるにつれ当然ながら処理量が増えるのでBlenderが重くなると思う。対してUnityはゲームエンジンなので、そこは何とかなるだろう(だがもしかしたらまたプリレンダーの待ち時間があるのだろうか……。)
ここで重要となるのが、背景セットアップのノウハウ。Blenderで鍛えてもそれはBlender以外では通用しない。またBlenderはゲームエンジンではないのでリアルタイムな制御ができない。
対してUnityはリアルタイム処理が自由だ。だからVTuberやVR環境でUnityが使われている。実はこれが重要。ならばUnity上でアセットの配置のノウハウは、そのままゲームやアニメなどの背景セットアップのノウハウにつながる。将来的な応用の幅を広げられる。Blenderのそれとはやっていることが同じでも将来的なポテンシャルの価値が結構違う。
MMDのようなリアルタイムアニメーション
実はこれも結構重要。もし1枚絵からアニメーションも試したくなった場合、例えば1fpsのようなパラパラ漫画表現でもいい。そうなったときに物理演算をサクッと使えることが重要。例えばロン毛のなびき方などは物理演算が使えるとかなり手付けアニメーションを削減できるので、「アニメーション=手間がかかる=個人制作ではできない」という構図を少しだけ壊せるのだ。1fpsならば30秒程度は作れそうかな?くらいにハードルは下がる。
そうなるとBlenderではこれまた腰が重い。あまりにも物理演算が重いからだ。ここはUnityはゲームエンジンの本領発揮だ。
そしてそれをUnityでできれば、それはつまり、あとは背景とのコリジョン設定をすればゲームキャラのセットアップがほぼ終わった(=ゲームキャラのセットアップができる)ことにつながる。またもや応用の幅が広がる。
そうなると、色々とやる気が出てくる。
モーションのためのリグ入れとウェイト調整、剛体設定やコリジョン設定などの物理設定に意味が出てくる。これ、Blenderでやるとかなりの苦行。なので、目的意識がないとただのマゾ修行になる。モチベーションの発生は重要だ。
皮肉なことにBlenderオンリーではこのモチベーションが湧きにくい。物理演算のリアルタイム速度が低すぎるからだ。多分どんな高性能PCを使っても無理な気がしている。仮にそれがクリアできても問題のトゥーンシェーダーの問題が立ちはだかる。
対してUnityならば色々と未来を感じる。
自分の創作活動の中からZbrushが外れた
自分にとってのパラダイムシフトが起ころうとしている。ここまで書いて、どう考えても自分の創作活動にとってZbrushが不要となってしまった。
もちろんこれまで開発してきたZbrushプラグインなどはメンテするし、今まで懇意にして下さったユーザー様へのサポートは続ける。
だが自分の創作活動のワークフローにZbrushはない。なので今後もZbrushに関して情報発信し続けられるかは、分からない。自信はない。もしかしたらそのエネルギーをUnityによるトゥーンシェーディングを欲する人のための記事執筆に充てる可能性すらある。自分の時間は有限だ。
ただしこれまでの蓄積やZbrushに関するノウハウでマネタイズできているという強みを捨てるのももったいない。だからマネタイズの手段として維持したいとは思うが、そこに込める情熱は、多分今までとはまた違った、冷静な、クレバーなアプローチによる戦略的な施策になると思う。パッションは減ると思う。
誰のための、何のための?を明らかにしないと、情報発信の価値がゼロになってしまうのだ。ここは重要。情報は決して無料じゃない。執筆者にコストが発生しているのだから。
なので今後の自分とZbrushとの関わり方については、再考すべき時期が来た。
禁酒してUnityを学ぶつもり
実は自分はかなりお酒が好きだが、同時に晩酌の弊害も最近よく感じる。一番感じるのは時間が無駄に過ぎていく点(酩酊時間=無駄時間)。この時間をUnityの学習に充てようと思っている。
とはいえ、酒が飲める人間がピタッと止めるのは難しい(言い訳w)なので1日1本の缶ビール350mLまではOKとしようと思う。これならば適量だろう?言い訳2w
じゃあ禁酒じゃねえじゃんというのもそうかも知れないが、節酒?かもね。まぁ面倒臭いので禁酒ということにしておこう。学び終わりのブログ執筆時にちょいのみまでは1日の楽しみに取っておこうと思う。
これで酒代も多少は減る上に健康にもなって知恵も身に付くならばお得でしかない。なので家の在庫酒を現在消費中Now(あ、もう朝ですが……。夜が明けたわけだが……w)
なので今後はUnity関連の駄文がアウトプットに続きそうです。
まずは先に確定申告を終わらせなきゃw
今回の創作活動は約2時間30分(累積 約2,719時間)
(737回目のnote更新)
(カテゴリ:Unity)
読んでくれてありがとう。気長にマイペースに書いてます。この出会いに感謝😊