タグ別アーカイブ: Cycles

BLENDER-99-22/Cyclesマテリアルの基本

グディーブニンっ、ガイズ!

さて、最初にお断りしておきます。
今日もウェブ検索でこのサイトを訪れてくださった方が多いかと思いますが、このBlender-99は本当の初心者(しかも3DCG自体が初めて)の方に向けたチュートリアルと解説を掲載したサイトです。

ちょっとでもCGマテリアルの作り方やCycles使用の経験のある方にとっては、新しい学びのない内容かと思いますので、検索結果画面に戻って詳しいチュートリアルサイトを探した方がいいかもしれませんよ。

でも、もちろん今回も脱線しまくりで進みます。
もしかしたら、知らなかったことを1つくらい学べるかもしれませんよ!

では、始めましょう。

【Blender-99 絶対に挫折しない3DCG入門 -22 Cyclesマテリアルの基本-1】

【今回の学び】

・新規マテリアルの作り方
・マテリアル色の変え方
・複製オブジェクトのマテリアルを変更
・マテリアルを別のものに変更

まずはいつものようにBlenderを起動。学習のための簡単なシーンを作りましょう。

GIFアニメの再生は1回に設定しています。最初から見たい時はクリックしてください。

 

手順です。

1.Xキー、エンターキーの順に押し、デフォルトキューブ(最初から3Dビューポートにある立方体)を削除します。
2.地面を作ります。ショートカットキーを使いましょう。

3.Shift + A で作成メニューが出ます。そこから、「Mesh」の中の「Plane」を探してクリックします。平らな板が画面に現れました。

4.サイズを大きくします。左側にツール・パネルは出ていますか? 出ていなければTキーでパネルを出します。

5.ツール・パネルの下半分に、たった今作成したオブジェクトの設定が出ています。「Add Planes」となっていますね。

6.「Radius(=半径)」が1になっていますので、ここを10に打ち替えます。プレーンが大きくなりました。

7.次にスザンヌ(猿)を作成します。今度はメニューバーから作成しましょう。

8.メニューバーの「Add」から「Mesh」、「Monkey」の順にクリックします。スザンヌが出てきましたが、地面に埋もれています。

9.「3」を押して側面からのビューに変更し、位置関係が分かりやすくなるように「5」を押して遠近感のない〈オルソビュー〉にします。

10.スザンヌの向きが不安定なので、「R」キーを押して回転モードにし、アゴと後頭部が地面に当たるくらいの角度にします。
覚えていますか? Rキーを押した後は、そのままマウスを動かせば良いのでしたね。ボタンは確定する時に押します。

11.地面の上に乗るようにスザンヌを移動します。移動のマニピュレーターのうち、上向きの青い↑をつかんでドラッグします。

12.もちろん、移動のショートカットキーである「G」とZ軸方向を示す「Z」を押してマウスを動かしてもいいですよ。

13.だいたいちょうど良い位置に来たら、矢印を放すかクリックします。

14.作ったばかりのスザンヌは角張っています。滑らかにするために「サブディビジョン」します。

サブディビジョンって?■
直訳すると再分割。一言でいうと「角を丸める」ということです。
単に角を削るのではなく、内部的に行われる高度な計算に基づいて全ての角を丸くします。

15.画面右側のプロパティ・パネルから「モディファイヤ」(スパナのアイコン)を選択し、現れた「Add Modifier」ボタンを押します。

16.モディファイヤの一覧から「Subdivision Surface」を選択します。途端にスザンヌを覆うポリゴンの四角形が細かくなります。

17.もっと細かくしてきれいにしましょう。「Subdivisions」の値を2にします。
(あまりたくさん増やしてはいけませんよ。パソコンのメモリがいっぱいになって、クラッシュすることがありますから!)

18.分割が細かくなりましたが、表面は角張ったままなので滑らかにしましょう。

19.左側のツールパネルを見ます。先ほども使用したので、表示されていますね。

20.上半分で、一番上のタブ「Tools」が選択表示されているはずです。そうなっていなければ、「Tools」タブを押して表示させます。

21.下の方に、「Shading」(シェーディング=明暗づけ)という設定があります。

22.「Smooth」を押します。スザンヌの表面がとても滑らかになりました!

スムーズとサブディビジョンの違いは?■
サブディビジョンは実際にポリゴンを細かく分割して滑らかにします。そのため、データ量が増加します。
スムーズは、角の部分で明るい側と暗い側の境をぼかします。実際のポリゴンは細かくなっていません。
次の3つのGIFアニメで、オレンジ色で示されたアウトラインに変化がないことに注目してくださいね。
サブディビジョンなしのカクカクしたポリゴンのシェーディングを滑らかにすると、かなり無理やり感があって、不自然です。
サブディビジョンなしのカクカクしたポリゴンのシェーディングを滑らかにすると、かなり無理やり感があって、不自然です。

 

サブディビジョンを1回分かけると、各ポリゴンの縦横がそれぞれ半分に分割されます。遠目には、これでも十分きれいです。
サブディビジョンを1回分かけると、各ポリゴンの縦横がそれぞれ半分に分割されます。遠目には、これでも十分きれいです。

 

2回再分割すると、表面をスムーズにしなくてもかなり滑らかになります。もちろん、オブジェクトの大きさや元のポリゴンの細かさによりますが。

 

24.後々マテリアルのいろいろな特徴を見たいので、スザンヌを複製します。
複製(複製には種類があること、覚えていますか?)をメニューから作りましょう。スザンヌを選択した状態で、下のメニューバーで「Object」、「Duplicate」をクリックします。
そう、ショートカットの〈Shift+D〉を使えば速いですね!
25.「Duplicate」をクリックした後は、〈ボタンを押さずに〉マウスを動かします。今回は真横に置きたいので、Xキーを押して軸を固定し、動かしましょう。

 

26.左クリックかエンターキーで確定し、準備が完了しました。


いやあ、長い前置きでしたね……

では、マテリアルの話に入りましょう。

最初にレンダラーをCyclesに変更します。画面の上、ちょっと右側ですね。
22_05

プロパティ・パネルでマテリアルのタブを選択します。
オレンジ色の球体がアイコンです。
22_06

「New」ボタンを押して新しいマテリアルを作成します。

新規作成されたマテリアルは白い色になっているので、3Dビューポート上のスザンヌも白くなりました。
マテリアルのプレビュー表示を開いて、色をちょっと変えてみましょう。

あれ?
3Dビューポート上でスザンヌがオレンジになりませんね。
そう、ご指摘の通りです。
3Dビューポート上の色がマテリアルの色を反映するのは、ビューポートの表示モードが「マテリアル」になっている時ですよね。

マテリアルを作成していない左のスザンヌと地面は白くなりました

 

はい、これで雰囲気がつかめます。
でも、もっといい表示がありましたよね、レンダリング・プレビュー表示です。
表示に少々時間がかかることはありますが、基本を学んでいる段階では重いデータでもありませんから、レンダリング・プレビューで進めます。ただし、これまでも学んだとおり、レンダリング・プレビュー表示だとオブジェクトを選択していることが分かりません。画面を二分割して、マテリアル表示と一緒に見ることにしましょう。

ライティングの時と同じ画面表示ですね。
ちょっと見栄えが暗いので、「World(=環境)」の設定から背景色(つまりここでは空の色)を真っ白にしました。ライティングの回でもやりましたので、やり方は大丈夫ですね?

「Material」のタブに戻りましょう。
色の付いた四角の上を見ると、「Surface:Diffuse BSDF」となっています。
BSDF」については難しいCG用語なので、覚える必要はありません。注目するのは、Surface(=表面)とDiffuse(=拡散反射)です。

■Diffuseって?■
物体の色は、そこに設定した色だけでは決まりません。「表面がどのような質感であるか」、それから、「光の当たり方」によって概ね決まります。
更には、光の通し方や内部での拡散なども色を決める要素として重要です。
ディフューズ(拡散反射)というのは、光が拡散するということ。例えば艶のないタイプの紙や布のような質感を想像してください。当たった光を鏡のように鋭く反射することはなく、表面に光がふわっと広がるイメージです。
拡散反射によって定義される色は、色指定で設定した色に比較的近いものなります。当てる光の強さが正しく調整されていれば、色の出方がイメージ通りになる。それが拡散反射による色です。
上の例でも、マテリアルの設定色とスザンヌの色は概ね同じイメージになっていますね。

最も基本的な色の付け方が分かったところで、地面に色を付けてみましょう。
やり方を見ないで、暗いグリーンに出来ますでしょうか?

こんな感じに出来ましたか?
地面が白いときにスザンヌの下あたりがうっすらとオレンジ色になっています。これは、スザンヌに設定したオレンジ色が光を受けて反射し、オレンジ色の光が間接的に地面を照らしているのです。

 

次にいきます。

それぞれのマテリアルを見ると、「Material.001」などの名前が自動的に付いています。失敗してやり直すと、その分連番が増えていきます。
さて、これだと作業をしているうちに段々何が何だかわからなくなってしまいそうです。
今後、シーンの中に配置するオブジェクトが増えてくると、マテリアルもごっちゃになりがち。それを防ぐため、より分かりやすくするために、それぞれのマテリアルには名前を付ける習慣をつけておきましょう。

オブジェクトを選択し、表示されたマテリアル設定に対して名前を付けます。

マテリアルのオレンジ球体アイコンがあるところの右欄をクリックし、マテリアルの名前を入力します。
マテリアルのオレンジ球体アイコンがあるところの右欄をクリックし、マテリアルの名前を入力します。

3Dビューポートには二つのスザンヌ・オブジェクトがあります。
左のスザンヌにも色を付けて、名前も付けましょう。

22_14b

もう少しやってみましょう。

今度は、青紫のスザンヌを複製してみます。先ほどと同じように、今度はショートカットで行ないましょう。Shift+Dですね。

22_15

青紫のスザンヌを複製した後で、新しいスザンヌを後ろ方向に複製しました。複製の色を薄いグリーンに変えたら、あらら、元のスザンヌもグリーンになってしまいました。

これはどうして?

Blenderのマテリアルは、オブジェクトと1:1の関係になっているわけではありません。マテリアルとオブジェクトはそれぞれ別のデータとして独立した存在で、それぞれがリンクした関係になっているのです。

一言でいうと、そのほうが都合が良いからです。

色々なオブジェクトを作成すると、形が違ってもマテリアルを同じにしたいものや、形が同じでもマテリアルを別にしたいものが出てきます。マテリアルのほとんどの設定を同じにして、でも色だけは変えたい、ということもあります。

そうすると、マテリアルとオブジェクトはそれぞれが独立していた方が便利なのですよね。

画面に戻りましょう。

左のスザンヌに当ててあったマテリアルは青紫でした。
(この「当てる」という行為を、3DCGでは「アサインする」と言います。覚えておきましょう)
マテリアル名は、「Suzanne_blue」。色を変えても名前は変わりません。これは当然ですね。マテリアルアイコン(オレンジの球)の右を見ると、名前の「Suz..」の右に、これまではなかった「2」という数字が現れています。

これは、「このマテリアルは2つのオブジェクトに使われています」という意味です。2つのオブジェクトに使われているマテリアルの色を変えてしまったので、当然、どちらのスザンヌも色が変わってしまったわけです。

では、左の2つのスザンヌを色違いにするためにはどうしたら良いのでしょうか。

元のスザンヌを選択すると、マテリアルの名前がちゃんと元のままであることが分かります。

簡単です。先ほどの「2」をクリックするだけです。そうすると、マテリアルの名前が「Suzanne_blue.001」となり、先ほどまでのマテリアルとは別物になります。これで、前のスザンヌだけ、再び青紫に戻せます。
(もちろん、青紫を緑色に変更する前にマテリアルを別物にすれば、新しいスザンヌだけを新しい色に変えられます)

今度は逆に、「オレンジ色のスザンヌを緑のスザンヌと同じにする」方法を見てみます。簡単ですよ!

22_18

マテリアル名の左のアイコン(オレンジの球)をクリックすると、現在シーン内にあるマテリアルの一覧が出ます。そこから、目的に薄緑マテリアルを選ぶだけです。

最後にもう2つマテリアルの切り替えをやって、慣れましょう。繰り返し似た操作を行なうことで、すっかり自分のものになるかと思いますので。

全てのオブジェクトに、今までと違うマテリアルをアサインしましょう。マテリアルを切り替えると、マテリアル名の右にある数字がどんどん変わります。そのマテリアルがいくつのオブジェクトに使われているのかが変わるからです。

次は、全てのオブジェクトに同じマテリアルをアサインします。今度は1つずつでなく、リンク機能を用いて一度に行ないます。動画で手順を見てから、簡単な解説を見ながらやってみましょう。もちろん、以前の回でリンクの解説を行なっていますから、それを覚えていれば解説なしで出来るはずですが(にやり


 
1.オブジェクトを選択します。Shiftを押しながら、順番に全てのオブジェクトを選択します。最後に選択したものがリンク先になります。つまりマテリアルを合わせる元になります。

2.最後に選択したものが明るいオレンジ色の枠で囲まれていることを確認し、Control+Lキーを押します。

3.リンクのリストから、「Materials」を選択します。

無事、マテリアルが同じになりましたか?


 

今回はこれで終了です。

質感設定の第1回目として、マテリアルのほんの入り口を学びました。次回から、もっともっと表現力をアップ出来るマテリアルを学びます(もちろん、まだまだ基本の基の域を出ませんのでご安心を!)

【今回の学び】

・新規マテリアルの作り方
・マテリアル色の変え方
・複製オブジェクトのマテリアルを変更
・マテリアルを別のものに変更
【次回の学び】

・様々なCyclesマテリアル


今回も、充実したBLenderのひとときを過ごすことが出来ましたでしょうか?
それでは、ぜひまた次回もお越しくださいね!

Happy Blending!!

Blenderアドオン紹介/PBR Materials 2

最近見つけた、とっても良いなあと思ったシェーダーのアドオンを紹介します。

Blender Nationで紹介されていた「PBR Materials 2」です。リンク先に紹介動画がありますので、これを見るだけで期待が膨らみます。
(実は、動画を見るだけで使い方も分かっちゃうんですけどね〜w)

インストールし、Cyclesのマテリアルを作成すると、いきなり設定画面が現われます。
pbr1

現われたシェーダーボールをクリックすると、マテリアルの一覧がずらりと!

これはDielectric(誘電体)の一覧
これはDielectric(誘電体)の一覧
金属以外の質感はだいたいここ。

 

こちらはメタルの一覧
こちらはメタルの一覧

 

これをマテリアルに当てるだけで、リアルな表現がすぐに出来ます。

これは、スザンヌにWax(ろう)を当てたところ。光がきれいに透過しています。 背景はAndrew PriceさんのPro Lighting Skyです。
これは、スザンヌにWax(ろう)を当てたところ。光がきれいに透過しています。
背景はAndrew PriceさんのPro Lighting Skyです。サンプルはデフォルトの128で、レンダリング時間は21秒。

 

これだけでもなかなか使い勝手が良いのに、さらにテクスチャでシェーダーをMixして複雑な表現が出来るようになっています。

ノードエディターを表示すると、プロパティパネルにテクスチャ一覧が表示されるのです!

たくさんのテクスチャが登録されています!
14種類ものテクスチャが登録されています!

 

しかもこれ、プロシージャル(手続き型の内部生成)テクスチャです。画像を使用していないから解像度フリーですし、パラメーターの設定次第で色々なバリエーションを生み出せます。

ゴールドのマテリアルを作り、さきほどのワックスとレザーのテクスチャをマスクにしてミックスしてみます。
pbr5

レザーの皺の部分がワックスになっています
レザーの皺の部分がワックスになっています

 

こんな表現が簡単に出来てしまうわけです!
もう少し実用的な例を作ってみます。

基本マテリアルをブラスに、「錆び」のテクスチャをマスクに使って、錆びのマテリアルをミックスします。
基本シェーダーをブラスに、「錆び」のテクスチャをマスクに使って、錆びのシェーダーをミックスします。

 

結果がこちら。

pbr9

こんなマテリアルが簡単に!

ひとつ、注意点があります。

ミックスシェーダーを作るときは、マテリアルタブの設定でもノードエディターでも構わないのですが、ミックス内のそれぞれのシェーダーを作るときはマテリアルタブを使わないようにします。
マテリアルタブの「PBR Materials」設定でシェーダーを選ぶと、ミックスシェーダーが消えて、新しく選択したシェーダーに置き換わってしまいます。もちろん、データブロックとしては残っているので消えてしまうわけではないのですが、ノードエディターで設定するときに二度手間になります。

ノードエディターでシェーダーノードを選択したときにプロパティパネルに出た「PBR Materials Nodes」を使うようにしましょう。自動的にノードが接続されないのは残念ですが、まあここまで出来ていれば繋ぐだけですから、文句は言いっこなしですよね。

もちろん、これらは本格的な「物理的に正確なシェーダー」ではありません。盛り込める部分についてはある程度物理ベースの数値が設定されているようですが、カーペイントシェーダーなどを見ると、これがあくまでも「なんちゃってPBR」であることが分かります。
まあ、何事も過信は禁物。

ここまで出来て無料ですから、これはもう大満足の部類でしょう。
かなり使えると思います。

もっとリアルに表現したかったら、自分でちまちまノードを組んでパラメーターを調整すればいいのです。これ以外にもいろいろとPBR系のアドオンはありますから、有料のものも含めてそれらを検討する手もあります。

何しろ、短時間でそれなりに出来の良いマテリアルがパパッと出来てしまうので、たいへんオススメの逸品です。

じゃ、また明晩!

可愛くなきゃだめですか?

先日たまたま、CG関連の方との会話を辿って和牛先生という有名なCG講師の方のTwitterアカウントに行き着きました。
Blenderのマニュアル本を(紙で)出版している方なのですが、プロフィールをたどったらAmazonへのリンクに行き着いたので、踏んでみて驚きました。

そこには、僕が昨年購入したポストカード絵本が掲載されていたのです。
当時は、これがBlenderで作られたものだなんて考えもしなかったのに!


ミニチュアの写真?
いや、CGと写真の合成かな?
くらいに思ったけど、深く考えることもなかったのですね。

うーん、甘い甘い。
よーく見ていれば、これがフルCGであることは分かったはずですし、著者名から検索すればBlender作品であることも分かったはずですから!

まあ、そこで今回の僕は考えたわけです。

こういうの、自分も作りたいなあ……と。
もともと、Kindleで電子書籍を作る時に、マニュアルの中に絵本などの作り方の説明があって、ずっと気になっていたのです。

これまでにいろいろとCGの絵を作っていますから、それらを集めた画集を作るのもいいなあと。
前述のもののようにストーリー性というか、それぞれの絵の関連性は低いですが。

そこで、妻にちょっと言ってみたところ、
「えぐいからねえ」と一言。

「あ」

ダメですかね?
可愛くないと、受けないですかね?

グロい絵が好きなひとがいれば、ひたすらかっちょいい絵が好きなひともいますよね。
まあ、僕のはいずれでもない……。

可愛くもない、グロくもない、かっちょよくもない……

「えぐい……」

そんなこんなで、今、CG画集を作るべくちょこちょこ過去のデータを再レンダリングしたりして、手を入れています。

どうですかね、
──可愛くなきゃ、ダメですか?

新雑誌に参加してますっ!

もう知ってる人は知っている、新SF雑誌が創刊されます。
その名も『現実以外 -オルタニア-』

創刊が決まった頃に編集部さんからお誘いを受けて、二つ返事で参加を決めました。面白そうですもんね、メンバーが強力だし。
でも、実は参加している僕自身も、この「現実以外」ってのと「オルタニア」の関係がよく判っていなかったりします。

第2号が出る時に「現実以外」って付くかどうかで、合わせて一つのタイトルなのか、創刊号のサブタイトルが「現実以外」なのかが判るというふうに思ってます。
まあ、編集長に聞けばいいんですが(笑

で、最近は絡むところ絡むところ、つい動画を作ったりしてるわけで、今回もやっちゃいました。しかも2つ。
もちろん、CGの制作はBlenderです。
バックの宇宙については先日の記事に《超簡単な作り方》を書いた通りですね!

まずはこれ、ティーザー広告として、ちら見せ用で作りました。
ロゴが英語のバージョンです。

それから、情報解禁後にもう少し内容をプラスしたのがこちら。
ロゴが日本語になっています。

まあ、内容はあんまり変わらないんですけど。
最初のトレーラーで興味を持ってくれた方は、次のを見て「おぉっ」と思ってくれるかなあ、と。
(《豪華執筆陣》っていうのは、僕以外の皆さんのことですよ、あくまでも。悪魔デモ……)

ちなみに、このかっちょいいロゴは、山田佳江さんのデザインです。
もちろん、雑誌にも執筆なさってます。
山田さんといえばインディーズ界の人気作家さんですが、本職は映像&デザイン屋さん。《いーブックデザイン》という名前で電子書籍用の各種素材やデザインをいっぱいフリー公開しています。さすが、本職です。
こちらも注目ですね〜。

せっかくですからここで参加メンバーのことをちょっと書いておきましょ。

編集長はあの、隙間社さんです。看板作家のおひとりである伊藤なむあひさんの短編も掲載されてますよ!
それから、『オルガニゼーション』シリーズや『ストラタジェム;ニードレスリーフ』の波野發作さん
『プリンセス・プラスチック』で有名なプロ作家の米田淳一さんも参加しています。
そしてそして、創刊号の特別ゲストとして、あの大滝瓶太氏!
(これはすごい。波野さんが大滝氏を招へいした編集長を褒めてたりしてましたw)

そしてもう一人、謎の人物が参加しているそうです。
こちらはまだシークレット状態で、僕も知らないんですよね……。
どうやら、こちらもかなりの有名人らしいです。楽しみですねえ!

創刊は「10月くらい」とのこと。まだ曖昧のようです。
僕自身の原稿はもう上げてるんですが、校正がまだ途中、という感じです。

未完成の掲載作品をちょっとだけ読ませていただきましたが、面白いですよ〜。
粒ぞろいです、まじで!

と、いうことで、本日はこれまで!


Cyclesの影に色を付ける

ツイッターを見てくださってるBlender好きなひとにはもうお分かりかと思いますが……

先日、漫画家の藤原佑介さんがつぶやいてらして、ちょっと興味を持ったんですよね。

僕の場合、Cyclesでレンダリングするのは
「フォトリアルの表現をしたい場合」と、「アンリアルにしたい場合」の二通り。

こんなですね。

なつかしいな、これ。4年くらい前の画像だ……
なつかしいな、これ。4年くらい前の画像だ……

アンリアルの場合は、こんな。

知る人ぞ知る「とろろ姫のテーマ」のPVですねw
知る人ぞ知る「とろろ姫のテーマ」のPVですねw

で、この中間というのをあまり考えたことがなかったんですよね。
まあ、このへんは別として。

これの制作は、ちょっとずつ進んでます……
これの制作は、ちょっとずつ進んでます……

リアルにしたい場合は、Cyclesは物理系のレンダラーなので自動的に影に色がつきます。環境からの反射光に応じて、影にも色が乗るわけです。
例えば物理スカイを使った屋外シーンであれば、影にはちゃんと空の青味が入ります。
逆に、アンリアルなものの場合は、そもそもレンダリング時間を早くするためというのが一つの目的だったりするので、影を使わなかったりします。
アンビエント・オクルージョンで間に合わせれば充分だったり、接地感の悪さをごまかすためには上の画像のようにへんなリフレクションを入れたり、とか……で。

で、影に色を付けたいというつぶやきを読んで、僕もちょっと調べてみたんですよね。
そんなフェイクがCyclesで出来るのかな? と思いながら。

結論を言えば、簡単に出来ました。
今のところ分かっている方法でいえば、やり方は二通り。

一つは、マテリアルをいじる方法。
もう一つは、レンダリング結果に対してコンポジットでいじる方法。
どちらもシンプルです。

それぞれのノードセッティングと、簡単な解説を載せますね。

Shadow Rayの濃度をマスクにして、ディフューズからーに透明色を乗っけると考えると分かりやすい。
「Shadow Rayの濃度をマスクにして、ディフューズカラーに透明色を乗っける」と考えると分かりやすい。
上の設定でのレンダリング結果。
上の設定でのレンダリング結果。

要は、マテリアルの出口にMix Shaderを追加して、もとのMaterialにTransparent Shaderの色を乗っけるわけですね。それが合成される度合いを、Shadow Rayで調整する。ということです。

さて、このLight Pathノードですが、たくさんアウトプットが並んでいます。いろいろと試してみたくなるのが男心というもので……。

試してみて面白かったのがこの二つ。

Ray DepthをFactorに接続すると、影だけではなくて周囲にも色の影響が出る。より自然な感じがする?
Ray DepthをFactorに接続すると、影だけではなくてオブジェクトにも色の影響が出るので、より自然な感じがする?
Ray Lengthを接続。これは不思議な感じ。擬似コースティクスを生成するのに使えるかも!
Ray Lengthを接続。これは不思議な感じ。擬似コースティクスを生成するのに使えるかも!

マテリアル・ノード、いろいろいじっていると面白いですね。

では次、コンポジットで行なう方法です。

事前にレンダー設定内の「pass」でShadowにチェックを入れておくことが必要です。レンダリングされた影の要素に、Color Rampで着色します。
事前にレンダー設定内の「pass」でShadowにチェックを入れておくことが必要です。レンダリングされた影の要素に、Color Rampで着色します。

オブジェクトのシャドウ側にも色が着くので、リアリティに勝ります。しかも、レンダー後にいくらでも変更できる。
オブジェクトのシャドウ側にも色が着くので、リアリティに勝ります。しかも、レンダー後にいくらでも変更できるのが面白い。影の色だけアニメーションさせるとかも。

道のりは長そうだけど、いろいろ面白い効果が狙えるかも。

ぜんぜんコースティクス風にはならなかったけど、ね。
ぜんぜんコースティクス風にはならなかったけど、ね。

何かの参考になれば……。

じゃ、また明晩!

Blender:NPRのちょっとしたヒントに

final

ども、淡波です。

Blenderの習熟度で言えばまだまだ素人の域を出ないのですが、むりやり(w)仕事でも使っている関係上、結構いろいろ試してみたりはしています。

先週のブログ記事『今週の一枚:ん? なんか見たことあるような……』で、あるアニメーションを作っているということを書きました。

ある方から引き継いだBlenderのデータにアニメーションをつけていて、レンダリング時間を短縮するために様々なチューニングを施しているのですが、もし、Blenderをお使いの方が読んでいたら、きっと興味を持っていただけたのだろうなあ……と思い、今回の記事を書くことにしました。

さて、NPRってなんでしょ?
から、ですね。

CGをやっていると、「写真みたいにリアルにする」ことが一つの目的だったりします。NPRというのはその正反対で、ノン・フォトリアリスティック・レンダリング、つまり、「写真みたいじゃない画像化」ということです。

この『とろろ姫の歌』のPVもそうですね。こちらは平面のアニメ調ですが。
 

さて、今回最初にいただいたデータも、どちらかというとNPR系のマテリアル設定になっていました。レンダリング時間を短くするため、反射や透過などの処理は一切省き、ディフューズカラー(=拡散反射色)のみの設定です。こういった設定だと、「写真みたいじゃない」というか、人形劇っぽい感じになります。光沢のない塗料で人形を塗った感じで、ある意味リアルになるんですよね。

さて、その状態でレンダリングした画像がこれ。
レンダリング時間は約1分50秒です(core i7 dual Macbook pro)。
ノイズをある程度減らさなければならないので、サンプル数は100です。これでも、ちょっと絵がノイジーですよね。

先週より一人増えてますね。進行してる、という主張だったりして。

そして、今回チューニング済みのレンダリング結果がこれ。
レンダリング時間は約5秒で、実に22倍に高速化しています。サンプル数はたったの4です。
Cyclesレンダラーを使用していますが、これならInternalレンダラーと全く遜色のない計算時間ですね。むしろ速いくらい?

4s96

 

普通なら、ノイズだらけで見られたものではありませんが、こちらの画像だと、むしろオリジナル状態のレンダリングよりノイズが少ないですよね。

もちろん、オリジナルの自然な光の感じはまったくありませんし、雰囲気もかなり壊れています。でも、アニメーションを作る以上、レンダリングにかかる時間は最も大事な要素のひとつです。4,000フレームを100秒レンダリングすると、実に111時間もかかります。個人で、しかも「お手伝いで」作るCGのレベルではありません……!

雰囲気については手法を変えることで逆にプラスできる部分もあります。地面や山、背中のタンクなどは、面白い感じになっていると思います。しかも、絵はこれで完成ではありません。こちらをもとにしてコンポジットを行なった画像が冒頭にあげたもの。コンポジットのレンダリングにかかる時間は約1秒です。もちろん、オリジナル版を使う場合もそのまま完成ではなく何らかのコンポジットが必要なので、この時間は同程度ということになるでしょう。

好みはありますが、これはオリジナルの作者からもオッケーを貰いましたし、NPRのレンダリングとしては面白いものになったのではないでしょうか。

さて、前置きが長くなりましたが、本題です。

【超スピーディーにレンダリングが終わるNPRなんだけどちょっとリアルっぽいシェーダー】

タイトルも長いですね……。

ではまず、手前の人物の肌シェーダーを見てみましょう。

画像は幅2Kを超えていますが、プレビューレンダリングはなんと0.81秒です(左側の表示参照)。

この設定のミソは、基本となるシェーダーにすべてエミッション(発光)シェーダーを使っていることです。発光させれば光を受けませんので、GI計算は不要です。影も不要です。

だから、レンダリングの設定も、Light Pathsの値にすべてゼロを入れています。普通では考えられませんよね。

render
これぞ究極のレンダリング設定(?)

 

では、シェーダーの内容を簡単に解説しましょう。すべてエミッターなのに、ちゃんと立体感がありますよね。ノード・ツリーの左端に注目すると、「Geometry」ノードがあり、それが「Seperate RGB」に接続されています。
そう、先日恵比寿で開かれたBlendxJPに出ていた方はご存知の、「ノーマル」を使って上下の色を塗りわけるテクニックを使っています。
形状から面の向きの情報を拾い、その下向きの面にはちょっと暗めの肌色シェーダーを、それ以外には明るめの肌色シェーダーを当てています。
この二つが、Mix Shaderで混ぜられています。そして、何となく輪郭線らしきものを出すために、その先にはこげ茶色のエミッションシェーダーが合成され、ています。FacにFresnel(フレネル値)がインプットされているので、Fresnel値で制限された部分にだけこげ茶色が現われます。IOR(屈折率)が1.0未満だと、色の境目にグラデーションがつかず、塗り分けたようになります。0.95〜0.99くらいの範囲にあると、輪郭線のような効果が出ます。曲率と太さが比例するので、小さなオブジェクト(指など)ではほとんど線が見えないのが弱点で、逆に大きな面が同じ方向を向いていると、ベタ塗りになってしまう欠点もあります。

ゲームで良く使われる裏ポリテクニックを使った方が線は均等できれいかとは思いますが、この方法ならデータ量が倍になるのを避けられます。Freestyleの線は美しいですが、レンダリング時間が増えてしまいますし(「トロロ姫」は超ローポリなのでFreestyleを使っています)。

ちょっとFresnel値を変えたものを見比べてみましょう。

フレネル値=0.90
フレネル値=0.90
フレネル値=0.95
フレネル値=0.95
フレネル値=0.99
フレネル値=0.99

使いようによって、面白い効果を出せそうですよね。

今回は肌を例に取りましたが、どのシェーダーもほぼ同じ作りです。
もう一つ、ちょっと違うものを見てみましょう。地面のシェーダーです。水っぽい球を置いてみました。

このシーンの中で最も重いシェーダーです。
このシーンの中で最も重いシェーダーです。

まず、基本色の茶色です。左上ですね。
2色のエミッション・シェーダーを使ってFresnelで混ぜています。カメラから遠ざかる(角度が付くと)と明るい色になるようにして、距離感を出しています。
散在する岩と水球を見ると、地面への反射があります。反射の他にも地面への影のようなものがあります。不思議ですね。普通に考えると、発光している地面に影が落ちるはずはありません。

そこで活躍するのが、図中オレンジ色の枠で示したアンビエント・オクルージョン・シェーダーです。環境から遮へいされている部分に疑似的な影を落とすものですね。これは少々レンダリング時間を増大させますが、あるとないのではオブジェクトの接地感がまるで違いますから、ここは我慢です。
このアンビエント・オクルージョン・シェーダーも、単色だと地面の色をのっぺりさせてしまうので、2色に塗り分けて、地面の基本色と同じFresnelノードをつなぎます。

その先に繋がっているのが、反射を出すGlossyシェーダーです。あまりにもツルツルにすると反射がわざとらしくなりますし、反射をぼけさせ過ぎると、きれいに見せるためのレンダリング時間が増大します。映り方が自然になるようにRoughnessの値を調整し、これも遠ざかると自然に消えるようFresnel値で制御します。

さて、いかがだったでしょうか?

ちょっとまとめてみます。

・BlenderのNPRレンダリングは、実はCyclesでも素早くレンダリングできる
・基本シェーダーを全てEmissionにすることでノイズレスになる
・GI不要、レンダリング設定の値は全てゼロでOK
・立体感は形状のノーマルをうまく利用して出せる
・地面への影はアンビエント・オクルージョンで出す

■注意点です。
 全てが同値で発光しているので互いに影響を与えませんが、一つでも発光しないシェーダーがあると、それが光を受けてしまい、突然そこだけおかしな見栄えになりますし、ノイズが増えるので結果としてレンダリング時間が増大します。

僕の経験上、このやり方を使えばInternalレンダラーよりも速くレンダリング計算を行なわせることが出来ると思います。
シェーディング画面のキャプチャ動画とは異なり、DOFを調整できる(遠くをぼかせる)、反射を入れられる(しかもぼかせる)、という表現上の利点があります。

もちろん、OpenGLレンダリングでその中間の表現を目指す方法もあるのでしょうが、そこはまだ僕には未知の領域で(笑

また、進行状況を報告しますね。

では、今回はこれまで!

今週の一枚:ん? なんか見たことあるような……

C_whole_2500
○○さん

 

と、釣りタイトルにしてしまいましたが、まあ、見たことのある人はまずいないのかなぁとも思います。

実はコレ、ある方からデータをいただいてコラボ制作中の作品です(その方が制作途中のものを一回だけツイートしたみたいなので……)。
だいたいのモデリングと質感設定が済んだものを僕が再調整し、アニメーションを付けて、映像作品になる予定です。

最初にいただいた状態でも独特の雰囲気があってきれいな質感だったのですが、レンダリング時間があまりにかかってしまうため、僕の方でチューニングを兼ねて付け直し、結局かなり違うものになりました。これはこれで結構色気が出て面白いかなあと思いますが、どうでしょうね……。
(まあ、オリジナルを制作したご本人からは「良い」と行っていただけましたが)

それに、アニメーションを作るためにはレンダリング時間短縮のためのチューニングが必要なんですよ。これで最初の状態から10分の1くらいに短くなっていますから!

で、映像作品って、何のためのものかってのが、気になりますよね〜。何のためのものか。何かのためのものですよね、何かの……。
──さて、ヒント終わり。

この春、セルパブ界の話題をうっかり攫ったアレがね、また動いてるんですよ!
僕もこういう形ですが、参加させていただいてとても楽しいです。
(わ、分かりますよね……こ、ここまで言っちゃって……良かったのかな……)


おまけです。オリジナル状態の画像。
この、花のところに光が当たってるのがきれいなんですけど、時間短縮のために変えさせていただいちゃいました……
この、花のところに光が当たってるのがきれいなんですけど、時間短縮のために変えさせていただいちゃいました……(作者ご了解済み!)


はい、今日はここまで!

じゃね。

MANUEL BASTIONI LABを使おう!(その18):1.3 キタ!

来ました来ました、待望のVer.1.3
まずは追加機能を並べましょう。

・Skin Shader
読んで字のごとく、肌の質感をつかさどる設定。目の色も自在に変えられるし、なんど細かな筋肉や血管の表現まで搭載されているのだ。

・Age
年齢の設定がつきました。パラメーターは0〜1なので、具体的に○歳、というのはないのですが。

・Cycles対応、Lighting設定搭載
ここは微妙です。初心者向けに敢えてBlender Internal前提でこれまではチュートリアルを書いてきましたから、自動的にCyclesに置き換わってしまう本バージョンは、微妙な面もあります。

では、起動後の画面を。

Cyclesを使うか、尋ねてくれる
Cyclesを使うか、尋ねてくれるので、チェックを外せば Blender Internalで今までと同じように使えます。

 

このままキャラクターを作成すると、こうなります。

スクリーンショット 2016-07-30 17.28.24

画面最上部を見ると、レンダラーがCyclesに変更されていることがわかります。

光源も複数設定されています。WEBサイトの説明を見ると、プロのスタジオ・ライティング・セット、となっています。うーむ、ちょっと微妙ですが、ね。

──ところでCyclesって何?
  Blenderに内蔵されている、もう一つのレンダラー(CGデータを画像化するための計算を行なう心臓部)。光や影、質感の設定など、見栄えに関わるすべてがレンダラーによって計算されます。標準で設定されているBlender Internalは古いタイプのレンダラーですが、計算が速く、凝ったことをやろうとしない限りややこしいことがありません。初心者が計算能力の高くないパソコンでCGを作る時には、まだまだこちらの方が向いているのです。
  Cyclesは最新の技術を搭載した、フォトリアルな画像を作れる素晴らしいレンダラーです。でも、パソコンの計算負荷は非常に高く、短時間ではノイズだらけの画像しか得られませんし、初期値では更に時間のかかるパラメーター設定になっている(その分、時間をかければリアルになる)ので、ちょっとお薦めしづらい部分があるのです。
  (もちろん、僕が小説の表紙などで制作している画像はすべて、Cyclesによるものです)

何もいじらずに、ビューポートの表示設定を「Rendered(レンダリング・プレビュー)」に変更してみましょう。

画面下、中央あたりの白い球アイコンをクリック
画面下、やや左の白い球アイコンをクリック

 

僕のMacBookの場合、約18秒待つとこんな表示になります。

スクリーンショット 2016-07-30 17.41.14

リアルですね、すごいですね。今までとは次元が違います。

でも、ちょっと待って!
右手の下、なんだか赤い粒々がありますよね。これは、計算時間が充分でないため、光のノイズが残っているのです。「サブ・サーフェス・スキャッタリング(SSS)」といって、《透明でない物体の内部に侵入した光が拡散と反射を繰り返す計算》をさせています。リアルにするためには仕方がないのですが、これでは絵として使い物になりません。
試しに、どのくらいの時間できれいになるか試してみました。
画像が大きいと時間が掛かりすぎますので、画像サイズは小さめで。

全体の大きさを400×600ピクセルに設定(小さいです)しています。

完璧ではありませんが、概ねノイズが消えて滑らかな階調になっています。この画像のレンダリングに6分13秒掛かりました。僕のMacBookはCore i7のデュアルですし、それなりに高性能です。
で、この結果ですから……。

例えば電子書籍の表紙にキャラクターを使いたいと思ったら、天地2,500ピクセルほどで計算しなければなりません。長さ4倍強ですから、面積比は16倍。面積が倍になると概ねレンダリング時間は1.5倍になりますので、レンダリング時間は概ね30分です。

どうでしょうか。意外と現実的な時間で終わるかも、と思うか、そんなに待てない、と思うか……。

ただし、この画像の指先を見ると、ちょっとSSSの設定が深すぎるかもしれません。背後から光を受けた時、こんなに光を透過しなさそうですよね。このあたりを調整すれば、もう少し速くなるかも。

ちょっと設定を見てみました。

Skinの設定で下から2番目にあるSSSが、これ。
Skinの設定で下から2番目にあるSSSが、これ。

 

ちなみに、設定の奥ではこんな複雑怪奇なことが行われています。

このキャラクターの質感設定はこんな感じ。枠がオレンジ色にハイライトされている部分がSSSの設定です。

 

では、ちょっと実験してみましょう。

(僕はManuel Labメニューにあることに気がつかなくて、node editorからいじってしまいました。実際は、これを開く必要はありませんので、念のため)

sss1
デフォルト設定の1.0。28.57秒。
sss0
SSS=0.0、効果をなくした状態。22.38秒。
sss0.3
SSS値=0.3。25.73秒。
sss0.5
SSS値=0.5。27.39秒。

SSS値が0.5くらいが一番リアルな感じがします。レンダリング時間では、数パーセントしか変わりませんね……。

※ちなみに、Node Editorの出し方はこちらです。

画面左下の「3D View」となっているアイコンをクリックすると、各種エディターにアクセスできます。
画面左下の「3D View」となっているアイコンをクリックすると、各種エディターにアクセスできます。

さて、脱線(!)はこのくらいにして、Ver.1.3の機能をもう少し追いかけましょうか。

■Character Age(年齢設定)

設定はここ。
設定はここ。

デフォルトは0ですね。最大値である1.0にしてみます。

おおお。
おおお。マンマミーア!(なにもこんなに太らせんでも……)

お次は、中間の0.5です。

マダム!
マダム!

 

実際は、これで年齢を設定したあと、体型のパラメーターを細々といじって作り込んでいくと思います。でも、数字を1ヶ所変えるだけでこれだけのものが出来てしまうのですから、さすがです!

次、行きましょ。

■Skin editor tools(肌エディター)

チェックボックスをクリックするとこんな設定が広がります。

お、注意書きがあります。
お、注意書きがあります。

注意書きにある「Subd.」というのは、Subdivision Surface(=再分割曲面)のこと。Manuel Labは、レンダリング時には角張らず滑らかな曲面で、操作時にはローポリゴンでサクッと動作するようにSubdivision Surfaceのモディファイヤが始めから設定されています(ちょっとCG用語が多過ぎるか……)。

ま、要するに、Subdivision Surfaceのプレビューになってると計算時間がかかって、画面表示がのろくさくなるから注意してね、ということです(前回もちょっと触れましたね)。

subd_off
「Enable subdivision preview」を押していない状態。subdがoffです。おでこのエッジが角張っています。
subd_on
「Enable subdivision preview」を押していない状態。subdがonです。おでこのエッジが滑らかな曲面です。

細かな表情をいじる時以外は、これはoffでいいかと思います。

髪の毛がないのって、どうしても寂しいですよね。今後のバージョンアップでは髪の毛やベーシックな衣服も含まれる予定になってますから、そこは今後のバージョンに期待したいところです。

さて、次は目です。

・目の設定はこの三つ

スクリーンショット 2016-07-30 18.58.01

色相、再度、明るさ、ですね。

hue(=色相)が0.5でこの色。

eye_hue=0.5
eye_hue=0.5

1が最大値ですから、彩度と明るさはこれ以上にはならないということです。hueの値だけ変えてみます。

eye_hue=0.0
eye_hue=0.0, 1.0も同じ色になります(色環をぐるりと回って1周するので)。
eye_hue=0.2
eye_hue=0.2
eye_hue=0.4
eye_hue=0.4
eye_hue=0.6
eye_hue=0.6
eye_hue=0.8
eye_hue=0.8

単純に瞳の周りの色相を回しているだけのようなので、今一つリアルな色ではありませんが、ちょっと調整してブラウン・アイを作ってみます。

eye_hue=0.5, saturation=1, value=0.5
eye_hue=0.5, saturation=1, value=0.5

うーむ。今一つですね。

実はこの目、元からManuel Labに仕込まれているテクスチャ・マップの色を変えているだけです。どんなテクスチャが使われているのか見てみると……。

eye_map

これです。hue=0.5, saturation=1.0, value=1.0、つまりデフォルト設定の時に、この色が現われるようですね。

(サイズは半分に縮小しています)
全体を見るとこんな感じ(サイズは半分に縮小しています)

 

そう、お気づきですね(強引)。

Blenderはテクスチャ画像のペイント機能も持っています。この画像をBlender上でペイントして上書き保存することで、Manuel Labの設定にはない色に調整することもできますし、もちろん、保存した画像を別の画像編集ソフトで開いて目の色を描くこともできます。

ちょっとやってみたところ、Blenderで行なうより別のソフトでやる方が良さそうです。いろいろできるとは言え、レイヤーを持てないのは辛いですし。

Blenderのペイント機能で目の色を編集。へたくそです。
Blenderのペイント機能で目の色を編集。へたくそです。

 

さて、機能を網羅しないうちに、お時間が来てしまったようです。Manuel Lab、楽しいですね〜。

ちょっと長くなってしまいましたので、あとは来週に回しましょうか。

では、次回もお楽しみに!

 

残しておきたいツイート─031

よ、みんな!
(と、いきなりフレンドリーになってみる)

今日は、こんなツイートからだよ。

1.

楠樹さんのツイノベ、面白いですよね〜。最近、あんまりツイッターに潜っていないんで、いっぱい見逃しているなあ。
新作も出てますよね。
↓(こちらはツイノベでなく、原稿用紙各5枚の作品集。買っちゃったよ)

2.

すっかり忘れてた。自分用メモ。
──CGネタでごめん。

3.

先々月、残念なことがあったなあ。
(僕は気にしてませんよ)

4.

むふふ。たまにはこういうのもね、思い出しておきましょ。

5.

そうそう、それからね、こういう気持ちなんだ!!

6.

先週、最後の無料キャンペーンを敢行した『ケプラーズ5213』の、今や懐かしい茶色版の表紙。

7.

「あ、この宣伝文句、また使おう」
っと思ったので……(笑

8.

こっちも──。

9.

これ、独立作家同盟での藤井大洋さんのセミナーですね。
うむ。覚えておかなきゃ。

10.

もちろんね、文字で読みたい人だってたくさんいる。
映画と原作を比べれば(ほぼ?)原作のほうが優れているんだから、やっぱり小説ってのは大事で大きなものなんだよね。

文字で書かれていれば、読んだ人数分のイマジネーションがあるんだから。
それって、すごいことだよね!

じゃ、今日はこれまで。

今週の1枚/Glamour inside us.

SP_gang_3

これは、最近できた“出版をおもしろくする作家ポータル”(ある意味セルフパブリッシング作家のための支援サイト)である『セルパブGang!!』のオープンにあたって(勝手に)作らせていただいた画像です。
ヘリベマルヲさんのブログ『人格Overdrive』上に掲載されていた、ご本人がお描きになったラフイメージを基にして、出来る限り忠実にCG化してみました。
ヘリベマルヲさんにその旨お知らせしたところ、使っていただけると快くお返事をいただけました。お話した際にリボンに入れる文字を一緒に検討したのですが、そこで、そもそものこのデザインの由来に話が及びました(内容は後述)。
それもあって、「ちょっとデザインの方向性を変更したい」といったお話もあり、この画像はいったん没になるかと思っていたのですよね。
僕も『セルパブGang!!』に登録しようとサイトをブラウズしていたら、見つけました。すでに、サイト上で使ってくださっていたことを。

由来の話に戻ると、このマーク、古くは西洋の宗教画に描かれているのです。聖書由来なのでしょうね。
「Catholic Sacred Heart of Mary」といって、「聖母マリアの聖なる心臓」を意味するようです。
ヘリベさんの最初のイメージはこちら。

sword

でも、これには基になったイメージがあるはず、と仰るので、早速調べてみました。
多分、宗教関連だろうとあたりを付けましたが、やはりその通りでした。Heart sword イメージの由来を探して検索すると、「聖母マリアの聖なる心臓」に辿り着きました。
sacred heart
詳しい意味を調べるところまでは到りませんでしたが、剣を刺されても死なない聖なる心臓といった意味なのでしょうかね……。タトゥーのデザインよりきっと古い時代から、タロットに使われていることも分かりました。タロットでは、「Three of Swords」となります。
tarot

面白いですね、由来とか源のことを考えたり調べたりするのって。

リボンには、「魔法、セクシーな魅力、ひきつける不思議な力、を持っている」。そんな意味を込めて、「Glamour inside us」と入れることになりました。これは最初のアイデアから二転三転したのですが、僕の方でアメリカ在住の友人に頼んで英語チェックとアイデア出しまで手伝って貰っちゃいました。きちんとネイティブチェックを入れられたので、心配せずに英文を使えるのは安心です(笑

デザイン変更の方向性については、もし何か動きがあったらまた、どこかでお知らせするかも!
(それから、僕の“勝手作品”とは別に、オフィシャル・バージョンも進行しているみたいです!)

『セルパブGang!!』、面白くなりそうですよ。

じゃ、本日はここまで!