2015年10月1日木曜日

Blenderについて少しだけ

ブログではお久しぶりになります。文月わらびです。

最近は子供の頃からやりたいと思っていながら遠回りして、今になってはじめた3Dをちまちまと独学で勉強しております。

主にBlenderしか使ってませんが、やっとアニメーションまで出来るようになってきたというところ。まだまだ出来ていないことは多々あります。

テクスチャのベイクとか、レンダラーの選定とか、MMD用のテクスチャの最適化とか、モーフ(シェイプキー)の設定とか。

テクスチャのベイクに関しては、最近になってやっと使う意味を把握したところでまだテスト出来てないです。一番のメリットはMMD用でエクスポートする時にテクスチャをまとめやすくなることかなと。それはあとに説明するテクスチャの最適化と関係有るのですが。

レンダラーに関してはBlenderのメリットはここにあるといえる長所があって、Blenderは基本的にフリーウェアですので、レンダリングは他のパソコンでするとしてもライセンス料が追加になることはないということ。ただしそれはフリーのレンダラーを利用する時に限った話なのですが。

試したレンダラーの感想

・標準搭載してるもの
Blenderレンダラーは2Dライクな処理(FreeStyle機能とか)に向いているもののGPUは利用できず。

CyclesはCPUだけでなくGPUも利用可能でレイトレーシングとか使えたりして比較的リアリスティックなレンダリングが可能
しかしながらGPUに任せるとフルで使うので他の作業ができなくなります。無理にやると同期が保てずWindowsごとヘブン状態になります。(体験談)マルチGPU構成は恐らくサポートされてません。
対してCPUは使うコア数を指定できるので他の作業(今もレンダリングしてるマシンで書いてます)しつつもレンダリングできるのが良い所。


・追加アドオンでフリーとして利用可能なもの
RenderManはPixarの開発していたものがオープンソース化されて利用できるようになったもの。ただこのアドオンがまだうまいこと動かなかったりしてイマイチ効果を確認できず。Blender側で同じくPixarの技術であるOpensubdivとか使えるようになってきてるのでひょっとしたら今後もっと使いやすくなるかも。

LuxRenderは物理ベースで色分解とかも出来るのでとてもリアル。特に光の屈折や反射などを多用する場合には強い。しかしながら計算が重くなるのでノイズが綺麗にとれるまでにはそれなりの時間がかかる。


・有料版
まだ試せていないがOctaneRenderはとても気になる。体験版だとBlenderアドオンは使えないっぽいのでどうしようかと模索しているところ。特徴としてはMultiGPUを使えるということ。つまり、同一のCUDA対応GPU 4枚さしてれば4枚同時に使えるってことなのでとても強い。まぁお金に余裕があればこれで高速化が狙えるといえそう。最大で8枚まで追加できるようだが…SLIだと4つまでの筈なのでどういった使い方をしているのかまではわからない。一般的な自作PCの構成では8枚挿すこと自体が物理的に困難なのでサーバー用途を視野に入れた設計がされていると言える。

ということでレンダリング専用機が作れそうならOctaneRenderは導入する価値があるかなというところで止まっている。しばらくはCyclesを使うだろう。なお、OpenGLはBlenderではあまり必要としないかも。プレビューを積極的に使うならあるに越したことはないが普通にGeForceでも問題ない。Radeon環境だとBlenderに限らず3Dだととても扱いづらい。CUDAに依存してるものが多いからだ。


MMD用テクスチャの最適化については1つがシームの入れ方、シームの入れ方次第であとあとのテクスチャの描き込みのしやすさが変わってくる。今のところシーム使わずにUVの自動展開でやってるので滅茶苦茶高難易度な設計になっている。その結果としてつなぎ目で意図しないところを着色してしまっていたりする。あとは細かいパーツになると展開図からではどこに何があるか把握出来ないので個別にわけてあげる必要がある。そこで上記で話したベイクが必要になってくるのだがまだ試せていない。ベイクの役割としては個々にテクスチャを用意してあとで1枚にまとめるといった使い方が出来る。


モーフに関しては、やっと使い方がわかってきたので少しずつ追加予定。モーフはボーンと違いあくまで頂点の移動のみなので使うところが限られてくるものの。一番使うのはキャラクターの表情だと思われる。

あとはIKとかも組みたいところですが、まだまだ他の部分の完成度をあげないといけないのでもう少しかかりそう。

そして最近思ったのが使用用途によって3Dモデルの設定がバラバラだということ。パラメーターが共通化されていないことが多いので、例えば3Dプリント、MMD用、アニメーション用、静止画用でそれぞれわけて保存しておいて作業をすすめる必要があるなと思いました。頂点とメッシュまではいいんだけど、モディファイアとかボーンとかバンプマッピングとかマテリアルの設定とかになるとそれぞれ解釈が異なるためそれぞれに再設定・最適化が必要になる。その時に別のパラメーターが残っているとエラーが返ってきたりバグることがあるので、一旦全てをリセットして設定し直す必要がある。すると同じファイル内では共存出来ないので、別名で保存してそれぞれのファイルを用意する必要がある。

目標としてはこれで食ってけるぐらいのものを作りたい。それにはまだまだするべき課題は多そうだ。特にノードとかまだまだ使えてないのでそれも含めて研究していきたい。

というのがBlenderを使い始めて半年ほどの戯言でした。

奮闘はまだまだ続く

現在開発中のモデルは4つほど。
Edge540V2っぽいの アニメーションのテスト中
PanasonicGH4っぽいの レンズの色分解とか諸々ボディ側が未完成、テクスチャ未完成 モーフ・ボーンが入ってない
つくもたんっぽいの ボーン(IK含む)・モーフ・テクスチャが未完成、クロスシュミレーション途中。
S15型シルビアっぽいの モデリング始めたところ目標としては外装のバリエーションを用意したい。Blender2.76で使えるOpenSubDivを積極的に使う予定。
それぞれで色々な技術を試している感じです。次の段階としてはオリジナルのキャラクターを作りたいなってのがあります。自分の趣味丸出しで。ケモミミにメガネにツインテールとかロングとか、服装はオーソドックスな制服系とか。はっちゃんのせいでスク水にも目覚めそうだったがやっぱり制服系が好みなようで。艦これの影響を強く受けたなにかが出来上がりそうだけどそれはきっと気のせいすでのな!リベッチオ カワ(・∀・)イイ!!(ぁ 


2.76で対応される予定のOpenSubDivをRCで使ってみた感想
アィエエエエエナンデェエエエエ!?ってぐらい重いです。いやモデリング中は問題ないんですがCyclesでレンダリングすると重い気がします。たぶん気のせいじゃない…。CPUでなら問題ないですがGPUだと死にます。分割方法では負荷は変わらない模様。

Blender関連で自分の復習も含め講座みたいなの書けたらなぁとは思いますが、他の方が書いてるものと似たり寄ったりになりそうだったので、ひとまず自分がやってみてあまり書かれてないと思われるところを補足がてら書いてみた感じです。

ではでは

(やりたい事が多すぎて、時間と財布が追いつかない…ひぇっ)

0 件のコメント: