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

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

私がBlender 2.8系を勧める理由

(約 7,200文字の記事です。)
f:id:yamato-tsukasa:20191026234702p:plain

Blender 2.79系ではだめだ。2.8系だからいいのだ。Blender2.8系をオススメする理由です。無料だからというのも大きな要素ですがそれは分かり易すぎるので割愛。それ以外の要素についてお話しします。

熟成されたレイトレーシングレンダラーCyclesでPBRレンダリングの基礎を理解できる

世間的にはUE4よろしくリアルタイムレンダリングに注目が集まっているが、PBRの本質的な表現はレイトレーシングだと思う。Cyclesは歴史がある。熟成されている。GPUの支援をONにすればそこそこ早いし、デノイザーも優秀だ。2.81からのIntel AI Denoiserは更に優秀になる模様。

一方、リアルタイムレンダリングは、それらしく見えるフェイク表現なのだ。だからEeveeでPBRをリアルに表現しようとすると、それなりのテクニックを駆使することになる。EeveeもUE4も、こういう部分に色んな打ち切り技術を駆使して実現しているので、どこかで嘘表現が入ってくる。リアル性とのトレードオフ。

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

ピンクの球が映り込んでいない?(Eeveeデフォルト設定、ただし背景透過のテスト画像を流用してます。)
f:id:yamato-tsukasa:20191024143922p:plain


で、やはり基本はレイトレーシングによる正しい表現だと思ったのだ。何の基本かと言われれば、3DCG表現の基本ね。Cycles並の表現をリアルタイムに、という要求のためにEeveeやUE4があるとも言える。マシンパワーが無限ならCyclesでいいのだ。だが、有限だから、しょうがない。

レンダラーは有料/無料でたくさんの種類がある。ご自身で調べてみて下さい。私も当時調べてみたが、パッとしたのがなかった。Autodesk系はそもそも手が出ない。レンダラーのためだけのソフト購入も躊躇する。Blender2.79系は(当時の感想では)パッとしない。だが今ならBlender 2.8とGPUを使えるCyclesがある。

Cyclesが分かってくると、Eeveeの嘘といいところが分かる

GPU(グラフィックカード)を積んでいれば、Cyclesも結構早い。なのでCyclesとEeveeとを気軽に比較できる。そしてEeveeの嘘表現と、リアルタイムなのにそこそこリアルな表現の良さとが、両方分かる。これが重要なのだ。Cyclesが基準となって、リアルタイムレンダラーのいいところ、悪いところが分かるようになる。Cycles無しには難しい。基準がないからだ。UE4が初心者に難しい理由もこれだと思う。レイトレーシングのレンダリング結果の基準が自分の中にないままリアルタイムレンダラーと向き合っても、価値がよく分からないのだ。そしてその嘘表現も見抜けない

レンダリング結果と向き合ってようやくマップの価値・意味に気が付く

Cyclesのレンダリング結果はかなりリアルなシミュレーション結果なので、シンプルな物はシンプルに表現される。そして気が付く。凸凹を作るためには超絶ハイポリにするか、テクスチャの疑似表現を使うしかない、と。で、凸凹表現である、ノーマル、バンプ、ディスプレースメント、などなどのマップの知識を手に入れることになる。そしてそれの「色」版としてテクスチャマップが必要になる。

で、両方とも、牛乳パックを切り開くようにUV展開の話になる。自然な流れである。そしてBlenderではUV展開も、各種マップ作りもできる。統合環境ソフトだから当たり前だ。必要になったときに必要な部分を自分の手で調整できるのが統合ソフトのいいところだ。UV展開とマップ作りならZbrushでもできるけれど。

また、色に関してはマテリアルの概念も出てくる。Zbrushでは残念ながらマテリアルはZbrush専用の内部的処理だ。だがBlenderならばPBRレンダリングの基本となる処理を学べる。それは別のソフトにも応用できる。

マテリアルについては私自身もまだこれから学習予定なのでよく分からないですが、マテリアルも頂点ペイントみたいにBlenderで塗れるみたいです。Substanceペインターと同じ動作かもね。使いやすさや編集のしやすさが両者の違いみたいだ。

そもそも3DCGでできることは大抵Blenderでできる

だから、安心感はある。モデリング、リグ入れ、ウェイト塗り、テクスチャ、マテリアル、静止画、動画、なんでもできる環境だ(効率の問題はさておき)。「これをするためにはあれのソフトでないとできない」という制約がかなり少ないのがBlenderだ。だから3DCGの基礎を固めるためには最良のソフトだ。2.8系から文句なしでオススメできる。

もう「Maya, Maxでないとできない」という時代ではなくなる。Blenderへの資本の流れがあることからも、Blenderは統合環境ソフトとして大きな地位を築くことになる。この流れに乗って3DCGの基礎を固めれば、誰も何も損しない。Blenderを極めればMayaなしでも何とかなる。そしてその需要も確実にあると思っている。「値段の差が機能の差」ではなくなっている現状で、Blender 2.8系は相当有利だ。

Blenderを基準として、不便な機能を他のソフトで代替する

とにかくBlenderでできることを基準として考えると、色々と分かりやすいのだ。ローポリモデリングなら実はBlenderは相当にいいソフトだと思う。下手にFusion 360なんかにいってCAD特有のデメリットに捕まるくらいなら、コツコツとポリゴンモデリングをBlenderで鍛えた方がいい。CADははっきり言って3DCGの中でも特殊な立体造形方法だ。

スカルプトも、Blenderがどんどん使えるようになってきている。まずはBlenderのスカルプトモードで試していくのもいい。どうしてもというならZbrushもある。将来的にBlenderのリトポ機能やアドオンの実力が高まれば、スカルプトでもBlenderオンリーでもいける時が来ると思う。今はまだ、ハイポリの扱いとリトポ具合がZbrushのほうが有利だが、Zbrushはローポリまでリトポできない弱点がある。Zbrushはミドルポリ専用なのだ。意外と知られていない事実。

マテリアル塗りなら、Substanceペインターかもしれない。けどまずはBlenderでできるマテリアル塗りの限界・非効率さを確認するまで試す価値はある。Blenderで十分かも知れないしね。

結局、ここまででBlenderでまずは何とかなるし、効率を求めて別のソフトを利用するという流れになると思う。効率以前の学習段階ならば、Blenderで全部学べる。だからオススメなのだ。下手に私のようにモデリング専用のZbrushから入ると、3DCGの基礎をつかむまで結構遠回りする。(だがモデリングについての経験値はすでにBlenderでのそれを思い切り超えているが。)

Zbrush特有なのか、3DCGの常識なのか、がわかりにくいのだ。だがBlenderから入れば間違いなく3DCGの常識から身に付けることになる。だからオススメ。

物理演算とかはソフト特有の機能なので後回し

これはUE4でもUnityでも、そのソフト内の独自の機能なので、実はそういう機能は後回しでいい。所詮はそのソフト専用の機能だ。応用はできない。だからその機能を極めても、そのソフトの一機能を詳しく知っただけであって、別のソフトの場合の設定ノウハウとは別ものだ。ゼロスタートに戻る。パーティクル制御だとか、ベンディーボーンだとか、Blender専用だ。他のソフトではまた別のパラメータ名、操作法だったりする。Nゴンの使用可否も、結局はソフトウェア専用設定。だが四角ポリゴンまでなら共通だ。そういう風に、どれが共通なのかの判断を得るためにもBlenderはとても便利。無料でフル機能なので言うこと無し。

じつはマテリアルノードの組み方は勉強になる

これも厳密にはBlender専用の話なのだが、PBRベースのマテリアルノードの組み方は、共通部分が多い(らしい)。特にマップ周りは一方のソフトで理解していれば、他のソフトでもちょっとの違いさえ理解すれば普通に組めるようになるらしい。らしいばかりでごめんなさい。私はBlenderのレンダラーで学習を進めたいので、Blenderでマテリアル表現方法を学ぶ予定で、現在進行中なので。他のことは厳密には分かりません。小耳に挟んだ程度。

で、ここで、TwinmotionやFusion 360のレンダラーにはマテリアルノードがない。だから気楽にD&Dでしか設定できない。反面、こういう風に、詰めた表現を探ることができない。つまり、自分の表現力の天井が結構低いのだ。突き詰めることができないのが弱点。

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

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

その点Blenderにはマテリアルノードがあるので、最初は面倒だと思ったが、色々と突き詰めた表現を作れる。設定をいじれる。細かく調整できる。情報も英語ベースならたくさんある。
これこそが、最初に、きちんとしたレンダラーを決めることの重要性。今の話だと、BlenderのCyclesを選ぶ重要性。

もし私がUE4を先にやっていたら、この透過部分の話、鏡面反射の光沢の存在、影の存在、に気が付けなかったと思う。Eeveeしかなければこれに気づけなかったのと同じような感じ。CyclesとEeveeを見比べて初めて、基本はレイトレーシング表現だと分かった。UE4のレンダリング結果もきっとEeveeみたいになっていたと思うが、それを直す方法は多分見つけられない。BlenderですらEeveeをCyclesに近づけるためにたくさんのノウハウがあるのに、ゲームエンジンとして存在するUE4がそこをサポートする必要はないし、そんな情報があるとも限らない。BlenderでCyclesとEeveeだったから、気づけた基本中の基本。だからBlenderをオススメしています。

ちなみにEeveeには、光源を調整せずに、影の調整ができます。これが分かったときに、あれ?リアルタイムレンダラーって、変だぞ?って思いました。光源の制御無しで影が変わるなんてあり得ない。Cyclesではもちろん光源を制御することで影を調整することになります。

結論 無料で高精度なレイトレーシングレンダラーを通じて3DCGの基礎を学べるから

これが結論です。見た目、メッシュの形、テクスチャ、マテリアル、光の制御、これらを全て一貫して扱えるBlender、しかも将来性がある。社会人でも無料で使えて、しかも2.8系からはとても使いやすい。GPU搭載のPCならばCPUが非力でもサクサク動く。試さない理由がない。習熟して損する部分など全くない。オススメしない理由がないわけです。

あとは本人のやる気だけですね。3DCGで何をしたいのか。これがないと、実はBlenderでもZbrushでもFusion 360でも、全部無意味です(笑)

おまけ ポージングさせられることのメリット

また、Blenderのような統合環境ソフトが使えないと、MMDキャラの深いカスタムやVRChatキャラ等は作れないと思います。要はリグ入れ&ウェイト塗りができないと3DCGは一気にできるとが狭まります。モデリングして色つけして眺めて楽しむ以外が不可能に。フィギュア系ならそれでいいし、CADでモデルを作って眺めるのもいいですが、それ以外ができません。ポージングも無理。なので可能性がそこで止まります。ですが3DCGは可動ポージングにもまたメリットが多いです。機械系ならウェイトの苦労なく簡単にポーズ変更可能ですし、物理演算を加えればリアルなモーションも可能。3DCGは動かせることでその可能性が広がります。その代わりリグ入れとウェイト塗りは結構大変です、学習も実作業も。統合環境ソフト以外でリグ入れ&ウェイト塗りできるとは思えません。

ですが、ここまでくれば、後は枝葉末節です。リアルな関節表現、リアルなマテリアル表現、リアルな光源制御、モーション、カメラワーク、エフェクト、そういう部分は、リアリティを追求すると永遠の沼になります。あとはお好みで必要な分野を突き詰めていけばいいだけのこと。





ここまでで要旨は終了です。以下、個人的な回想録も含まれるので、読み物としてお読み下さい。あまり情報はないです。

2.79系までは「マニア集団による手作りソフト」

こう感じたのだ。とにかくショートカットを覚えないと何もできないモデリング。どこに何があるか分からないインターフェース。重いレンダリング。(当時の私のPCにはグラボがなくてインテルCPU内蔵グラフィックスのみ)。当時はVRChatなどもなかったはずで、MMDをやる人がいじっているくらいしか見かけなかった。

2.8から一気に「まともに使えるどころか、むしろ使いやすいソフト」

なんでこんなに変わったの?というくらい変わった。一気に分かりやすくなった。とにかく、何もかもが、だいたい普通にあるようになった(笑)右クリックか、メニューを眺めれば何となく見つかる。もちろんショートカットキーの文化も残っている。でも、ギズモで自由に移動できたり、かなり分かりやすくなっていた。

それでも久々に触ったら、G, R, Sをすっかり忘れていて、ギズモも表示されていなかったから、う~ん、動かんぞ~?ってなったけど(笑)

社会人で趣味ではMaya, 3dsMaxは手が出せなかった

Maya, 3dsMax、誰で知っている老舗の3DCGソフトだ。学生なら無料で使える。だが社会人では高すぎて無理。趣味ではもっと無理。だから統合環境ソフトはMaya, 3dsMax以外しかなかった。他の統合環境ソフトもうん十万だ。そして情報も少ない。

必然的にBlenderしか残らないが、2.79系は使いにくすぎた。なので、しばらくは私の選択肢に統合環境ソフトはなかった。

たまたまモデリングを極める?というかモデリングしやすいソフトとしてZbrushに迷い込んだが、ちょっと前から、それをBlenderでなんとかしたいと思うようになった。どういうことかというと、モデリングで形にした後の工程はZbrushではどうにもならない、と言うことに気が付いたのだ。要はちゃんとしたレンダラーを検討したくなったのだ。

そのときに2.8を触ってすぐにピント来た。これは来るぞ!と。で、四苦八苦しながら、リグ入れ、ウェイト塗りを覚え、オリキャラを自由にポージングできるようになった。本来はここまででBlenderの役目は終了の予定だった。Twinmotionでレンダリングして画像化する予定だったからだ。

だが、Twinmotionはお手軽だが、そこから先がない。ファイル類は取り出せないから仕上げをTwinmotionで行うしかない。Twinmotionの表現力が自分の表現力の限界になるのが嫌だと思った。確かにD&Dでお手軽だが、そこから先がない。長くこのソフトにどっぷりと浸かってから乗り換えるのは非効率だ。ということで、ちゃんとしたレンダラー探しの旅に。

Fusion 360、レンダラーは綺麗だった。3DCGってすげぇ、と思わせてくれた最初の出会い

10分モデリング|大和 司|note

だが重いメッシュを持って行くとよくフリーズする。だからレンダラーとしてだけの使い方も微妙。
お試しでKeyshot、使いにくい。情報も少ない。(当時のは確か)CPUベースなので非力なMy PCでは重すぎた。
UE4、リアルタイムレンダー。使ってみたが、まず、どこに何があるのかさっぱり分からない上に、情報が少ない。公式ドキュメントが長々とあっても、無意味だ。ゲームエンジンだから、とにかくリアルタイムに処理することに特化していて、3DCGの常識なのか、UE4の特殊な実装なのかがわかりにくい。初心者には向かないと思った。かといってUnityに行くのもためらわれた。Unityは若干システムとして古い印象を受けた。あえてUnityを選ぶ理由がなく、当時はUE4を選んだ。だが、やっぱり使いにくかったし、そもそもゲーム用途に使うつもりがなかった。さらにはテクスチャの知識も乏しく、ノードにアレルギーを感じたので、ZbrushとUE4で絵作りするのは、最終的には止めた。Tryはしてみたが。

Zbrushのレンダリングは非実写的レンダリングなので、ちょっと違う。アートとしては面白かったし、試してみた。が、変化球であって、3DCGの基礎になるものではないと思った。

ここに来てBlenderのレンダリングはアリではないか?と

残っているのがBlenderのレンダラーだった。レンダラーもレイトレーシングのCyclesから、今流行のリアルタイムレンダラーもEeveeとして実装してきた。
無料でフル機能が使えるのに、試さない理由がなかった。そして、色々分かった。なお、今のMy PCにはGTX 1060のグラボを付けているので、GPUベースの処理なら早いし、MMDもサクサク動く。なのでCyclesもEeveeも快適に動く。CPUは5年前の物だが3GHz越え4コアなのでそこそこ。GPUがある程度まともに動くので不便を感じない。


と、ここまで書いて要旨を頭の方に移動させたわけです(笑)

ま、要するに、Blender 2.8から使いやすくなったから、3DCGの基礎を総合的に身に付けるならBlenderから始めるのがとてもオススメです、と言うことだけの記事でした。


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