タグ別アーカイブ: Cycles

BLENDER-99-42/Editモードに突入せよ! その5

【Blender-99 絶対に挫折しない3DCG入門 -42
Editモードに突入せよ! その5】

前々回の「面を張る」、前回の「面を切る」に引き続き……と言えば、そう、
今回のテーマは……分かりませんよねえ。

じゃん。

【今回の学び】
・Editモードに突入せよ! その5
「面を分割する!」

分割する?
「その2」のループカットでやったじゃん、と思ったあなた、さすがの記憶力です。
でもBlenderには、もっといろいろな〈面の分割方法〉があります。

今回は、それを学びます。
簡単ですよ!

とその前に!

今回から、とうとう正式にリリースされたバージョン2.79にて行なうこととします。
今度のアップデートはかなり大きなもので、機能的にかなりの向上が見られるようです。
早めに慣れて、素晴らしい新機能の数々を自分のものにしようじゃないですか!
(ただし、そこまで深く掘り下げられるかはまだ不明……)
そうそう、ここでちょっとしたTipsコツを。 画面右側中央よりちょっと下にある「Copy Previous Settings」をクリックすると、これまでに使っていたバージョンの初期設定ファイルがそのまま引き継がれます。そうすれば、いちいち左クリック設定などをやり直す必要がありません。
そうそう、ここでちょっとしたTipsコツを。
画面右側中央よりちょっと下にある「Copy Previous Settings」をクリックすると、これまでに使っていたバージョンの初期設定ファイルがそのまま引き継がれます。そうすれば、いちいち左クリック設定などをやり直す必要がありません。

 

では、Blenderを起動して、キューブが選択されている(オレンジ色の枠で囲まれている)ことを確認したら、エディットモードに突入しましょう。Tabキーですよね。

分割するためのショートカットキーは「W」です。
押すと、こんなメニューが出ます。下はもっとたくさんの項目が出ていますが、今回使用するのは上の2つです。

(メニュー全体としては「スペシャル・メニュー」というもので、分割だけをするためのものではありません)

42_01

さっそくWを押しましょう。

 

左側のツールパネル下半分を見ると、設定がたくさんあります(ツールパネルがでていない場合は、Tキーを押しましょう)。
ひとつずつ見て行きます。

42_03

最初の動画で触ったのは、「Subdivide」の中の2つです。
「Number of Cuts」は読んで字のごとく、カットする数(=新たに加わるエッジの数)です。
「Smoothness」は、滑らかさですね。動画では、これを増やした時、面に丸みが加わっています。最大値である1にすると、キューブが球体スフィアになりましたね!

キューブから簡単にスフィアが出来てしまうなんて、面白いですねえ。
この「Number of Cuts」ですが、最大値は10です。これ以上は一度に分割出来ません。
もっと細かくしたい場合は、そのまま再度Wキーを押します。
そこでまた「Smoothness」を増やすと、曲面がさらに滑らかになります。

 

こんな感じですね。
あんまり分割数を増やすとポリゴンが増え過ぎてパソコンの動作が重くなりますので、ここでは2回の分割に留めています。最後にツールパネルの上半分にある「Tools」内で、Shadingに「Smooth」をかけて、フェイス同士の境界をスムージングしています。
これで、角のないほぼ完全な球体に見えますね。
動画では「Smooth」にするためのボタンがちょっと画面の外に出ていたので、キャプチャをしておきましょう。

もちろん、これは説明のため〈必要以上に〉細かく分割しているだけで、通常はこんなに細かくすることはあまりありません。

単に球体スフィアを作りたければ、スフィアのプリミティブを使えば良いですし、「Subdivision Surface」のモディファイアを使って分割すれば、いつでも分割数を変更出来ます。

次です。少々飛ばして、下の3つに注目します。
(キューブ全体に操作を行なう場合、こちらの2つは何の影響もありませんので)

(こちらは、Subdivisionの最後に学びます)
(こちらは、Subdivideの最後に学びます)

下の3つ、「Fractal」「Along Normal」「Random Seed」は、相互に関連しています。
次の動画で見てみましょう。


 

どうでしょう、なんとなく雰囲気が分かりましたか?

Fractalフラクタル」:これは、三次元上のフラクタルノイズを元にして頂点を変形する機能です。つまり、ランダムめちゃくちゃな方向に各頂点を移動してくれます。
これの値が大きいと、ランダムめちゃくちゃさが増して、次第に形状がカオスに……。

Along Normal法線に沿う」:「Fractal」で変形する時に、単にランダムではなく、法線の、つまり頂点の向きに対して垂直方向(これを〈法線方向〉と言います)へと移動します。そのため、Fractalの値をかなり増やしても、頂点が面を突き抜けたり形状が破綻することが少なくなります(ただし、マイナス方向(内側)にも移動するので、変形が大きくなれば面を突き抜ける場合も出てきます)

Random Seed乱数を変更」:Fractalのノイズを発生させている乱数を変更します。これを変更すると変形の元になっている乱数が変わるので、思わぬ形にどんどん変形します。

分かりにくかったでしょうか……。

後は、ご自分でいろいろと試すことで体感してくださいね。

では、先ほど飛ばした2つに戻りましょう。

まずは「Quad/Tri Mode」からです。
こちらはチェックボックスになっているので、オンかオフかの切り替えトグルになります。
QuadというのはQuadrangle、つまり四角形です。
TriはTriangle、三角形ですね。

動画をどうぞ。


 

面の編集モードで一面だけを選択しています。
面を分割することによって、Triモードでは選択していない面にも影響が出ています。
選択していないけれどエッジが分割されることによって影響の出た面に於いて、〈Quadモードの場合は多角形を許容〉し、〈Triモードの場合は強制的に面を三角形に〉なります。
本来はQuadとは四角形なので、エッジが分割されることによって頂点が5つ存在することを許容しないはずですが、全ての面を四角形に保つためには分割していないエッジまで分割しなければならないため、そこは五角形でも良しとする仕様になっているのでしょう……。ちょっと分かりにくいですが。

頂点編集モードに切り替えるとよく分かります。残された面は、頂点を5つ持つ五角形になっていますが、これは許容するという仕様。
頂点編集モードに切り替えるとよく分かります。残された面は、頂点を5つ持つ五角形になっていますが、これは許容するという仕様。

2つ以上の面を同時に選択して分割するとどうなるでしょう?
順に試してみます。


 

2つの面を選択して分割。
「Quad/Tri Mode」を切り替えると、分割の影響を受ける部分が変化します。
ついでに、「Quad Corner Type」もいじってみます。

Tri Modeチェックありのときに「Fan」にすると、面が扇型に分割されます。もちろん、頂点同士をつないだ時に扇型になりうる・・・・・・・場所だけですが。

「Path」の場合は、分割された頂点が通り道パスになるような面が作られます。

この部分です。斜めの帯状に分割したい場合にとても便利です。
この部分です。斜めの帯状に分割したい場合に便利そうです。


こんなふうに。
 

Quad Corner Typeの選択肢は4つ
Quad Corner Typeの選択肢は4つ

順番に選んでみます。


 

この例では「Path」と「Straight Cut」の結果が似ていますが、本数が違いますね。
Inner Vert内部 頂点」では、分割されたエッジが更に中点で分割されています。
それぞれの特徴を生かしてモデリングに使えるようになりたいものです。

面ではなく、エッジや頂点を部分的に選択した場合にどのように分割されるか、やってみます。


 

頂点2つの選択だと、1エッジを選択した状態です。
Quadモードだと頂点が真ん中に入るだけで、面への影響はありません。分割数を増やしても同じです。
Triモードだとその頂点を内包する面が三角形に分割されます。分割数を増やすと、面もそれに応じて分割されます。

頂点3つを選択します。エッジ2本を選択した状態と同じです。


 

想像した通りでしたか?

今度は頂点4つを選択してみます。面の選択と同じになってはつまらないので、面にならない形での選択です。


 

「Quad Corner Type」を変えることで、かなり形に変化が出て面白いですね!

他にもいろいろな選択と変形のバリエーションがあると思いますので、ぜひご自分で試してみてください。

すっかり長くなってしまいましたが、本日の2メニューめです。
「Subdivide Smooth」。

やってみます。


 

おおっと、これは!?

そうですね。
実はこれ、SubdivideのSmoothnessを上げた状態と同じです。
設定メニューも全く同じですので、〈ちょっと省力化〉のために別機能として設けた、という感じなのでしょうか。

今回はちょっと長くなりそうで心配しましたが、2つ目があっという間に終わってしまいひと安心です(笑。

では最後に、おまけをどうぞー。
もう、何を作るかお分かりですね──。

【誰でも簡単に作れるにんにくの群れ!】
(一部、次回に学ぶ操作方法を含みます。途中で分からなくなったら、次回の記事を待ちましょう……悪しからず!)


考えながら作ったので、ちょっと迷いや失敗も見えますが……。

シェーダーの設定もしてある「.blendファイル」をこちらからプレゼントしますね!
(最終的なシーンでは少々ポリゴン数が増えていますので、敢えてArray等の表示をオフにしています。これなら非力なPCでもクラッシュすることはないと思います・・・・ので)


さて、今回もお楽しみいただけましたでしょうか?

【今回の学び】
・Editモードに突入せよ! その5
「面を分割する!」
【次回の学び】
・Editモードに突入せよ! その6
「自在に選択する!」

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

Happy Blending, friends !!

BLENDER-99-33/キューブに任せろ! その9

どうも。
一週間振りのBlender-99ですが、毎週心待ちにして待っていて下さる方が増えるように七夕のお願いをし忘れたことを思い出した、今日この頃です。
(挨拶が長い)

先週のBoolean(読めますよねっ?)、面白かったですね。

前回、次は何をやろうか決めないままでした。

さて、Blenderを起動してモディファイアリストを表示しながら、考えましょう。
33_01

あ、思い出しました。
一応、考えていたことを……。

これです。

これ、実は「キューブに任せろ!」のためにいろいろ試していた時の画像なのです。
今回は上にあげたようなもの、つまり、《超簡単なビルディング(風の何か)》を作ります。

【Blender-99 絶対に挫折しない3DCG入門 -33 キューブに任せろ! その9】

【今回の学びはこちら】

・キューブに任せろ! その9
 「Wireframe(ワイヤーフレーム)モディファイア」
 「Subdivision Surface(サブディビジョン・サーフェス=再分割面)モディファイア」

サブディビジョン・サーフェスは以前にも触れていますが、今回はちょっと違う使い方です。

では、始めましょう。

Blenderを起動したら、まずレンダラーをCyclesに変更しましょう。今回はレンダリングまで行ないますので、後で面倒にならないよう、最初にいくつか設定を変更します。

・レンダラーをCyclesに変更
・レンダリングのタブで、Light Paths内の「Reflective Caustics(=反射の集光効果)」と「Refractive Caustics(=屈折の集光効果)をオフにします。

コースティクスって、まだ学んでいませんよね。
これは、鏡面反射物(鏡、金属、樹脂など、光を「跳ね返す」物体)が、光源から来た光を跳ね返したり、水やガラス、透明樹脂など内部で光を「ねじ曲げる(屈折させる)」物体が、光を通す際に屈折させて光を集める効果のことです。
光が集められれば、その光に照らされた部分は極めて明るくなります。

こんなふうに。

冒頭に貼り付けたツイートで、ビルの窓から地面に光が映っているのも、コースティクスによる効果です。

きれいなのですが、通常のレンダリングに比べてかなり計算時間がかかります。現在学んでいることに対してはあまり関係がありませんので、反射、屈折ともにコースティクスは無効にしてしまいます。

では、世にも簡単なビル作りを始めましょうね!

・デフォルトキューブ(最初から出ているキューブ)は選択されていますか?
 されていなければ、クリックして選択。

・スパナアイコンのモディファイアパネルに切り替え、モディファイアリストを表示、その中から「Subdivison Surface」を選択します。

ここまでの動画です。動画にすると一瞬ですね。

あれれ?
キューブが岩のようになってしまいました。

でも、ご安心。Subdivision Surfaceモディファイアは《面を分割して同時に丸める動作》が標準設定になっているだけで、簡単に変えられます。

最初から選択されている「Catmull-Clark」から、右隣にある「Simple」に変更するだけです。
これで、「角を丸める」ための設定が外れました。

次、行きます。

・モディファイアリストから「Wireframe」を選択します。

おおー、いきなりワイヤーになりましたね。
これだけでかっちょいい!
(てのは言い過ぎか……)

次の工程です。

・高さを二倍にします。
 (S、Z、2の順で押します)

・このキューブをビルにしたいので、地面から下に潜っていては困ります。底面が地面に接地する高さまで移動しましょう。
 (Ctrlキーを押しながら青い↑をつまんで、2グリッド分動かします)
 →ご自分の画面を見ながらやってみてください。3Dビューポート上での表示サイズによっては、2グリッド分ではない場合があるかもしれません。キューブの底面が、XY軸(赤とグリーンの線)の引かれた高さに合うよう、動かします。

・ワイヤーフレームはビルのコンクリート部分に相当します。窓ガラス部分を作るために、キューブをそのまま複製します。
 オブジェクトの複製は、Shiftキー+Dでしたね。複製したら、キューブがそのままの位置から動いてしまわないようにすかさずクリックして確定します。もしちょっと動いてしまったら、右クリックすればオッケー。複製後の余計な操作がキャンセルされます。

・ワイヤーフレームとサブディビジョンの2つのモディファイアを削除します。各モディファイアのパネル右上端にある「X」をクリックします。

今回から、マウスやキーボードの操作内容を画面に表示するようにしてみました。これで、一段と分かりやすくなったのではないでしょうか!
(操作中に連続して押したキー名は表示されないようです。操作を確定し、その次の動きでないと表示されないのはちょっと分かりにくいかもしれませんね。入力したキー名は、参考程度に見て頂くくらいが良いようです……)

次です。

・地面を作ります。
 プレーンを作って、サイズを大きく(ここでは20に)しましょう。

・地面を灰色にします。
 地面が選択された状態でマテリアルパネルを表示し、「New」ボタンを押します。
 色設定の■をクリックし、好みの灰色にします。

・ついでに、ビルのマテリアルも簡単に設定します。
【窓】
 窓になる部分を選択し、「Use Nodes」ボタンを押してCyclesマテリアルを有効化し、「Surface」から「Glossy BSDF」を選択します。
 そのままではまったくボケないツヤツヤガラスなので、Glossinessを0.01にしてみました。もちろん、そのままでも結構です。
【壁】
 壁は細い棒に過ぎませんが、好みの色にしましょう。
 まずはワイヤーになった部分を選択します。動画見本のようにうまく選択出来ましたか?
 もともと窓になるオブジェクトを複製したものなので、マテリアルも同じものが自動的に適用されます。このままだと変更出来ないので、このキューブに当たっているマテリアルを他から切り離します。
 33_08
 この「2」をクリックします。「F」の表示に変わりますね。
 これで、窓のマテリアルには影響を与えず自由にいじれます。
「Glossy」を「Diffuse」に変更し、好きな色に変えましょう。

そろそろレンダリング・プレビューで見てみたいところですが、その前に環境を設定しましょう。
地球アイコンの環境パネルを選択し、「Surface」にある「Use Nodes」ボタンを押してCyclesマテリアルを有効化、「Color」を「Sky Texture」にします。
Shift+Zでレンダリング・プレビューのモードにすると……出来ましたね!

さてさて、まだこれではビルっぽくはありません。窓の数が少な過ぎて、スケール感がないのですね。

今回のキモはここ。
Subdivision Surfaceモディファイアを使っているので、自在に分割数を変化させられるのです。
動画で見てみましょう。

Subdivisionのところに数値が2つありますが、増やしているのは「View」の方です。
これは、3Dビューポート上での見掛けに関する「再分割数」です。
下には「Render」とありますが、ここの数値は、レンダリング計算を実際に行なった時に適用される「再分割数」です。

これ、どういうことかと言うと、
「画面で細かく設定しなくても、レンダリングするときはきれいに分割される」
ということなのです。

画面上の表示をどんどん細かくしていくと、動作が重くなって、しまいにはBlenderがクラッシュしてしまったりします。
でも、きれいに細かく分割したい。という時は、「View」の値は小さく(分割を粗く)、「Render」の値は大きく(細かく分割)することが出来るのです。
これ、とても便利です。
標準の状態では、「View」が1、「Render」が2に設定されています。
今回はビューポートで見ているので「Render」をいじりませんでしたが、画面で見るだけでなくレンダリングのボタンを押して画像を最終的に生成したい時には、「Render」の値を大きくします。

さて、ここまでやって、
「あれ? あれはやらないの?」
と思った方はいらっしゃいますか?

そうそう、スケールをリセットしませんでしたよね。
でも、今回に限り、これはわざとなのです。

スケールをリセットしたものとしていないものの両方をレンダリングして比べてみます。

リセット前は横のワイヤーが太く、壁に表情が生まれます。 リセット後は全て同じ太さになるので、少々単調な雰囲気です。
リセット前は横のワイヤーが太く、壁に表情が生まれます。
リセット後は全て同じ太さになるので、少々単調な雰囲気です。

次に、Wireframeモディファイアの設定値を少しいじってみます。

「Thickness」(厚さ):文字通り、ワイヤーの太さです。
「Offset」(オフセット):元になったオブジェクトからワイヤーがどのくらい離れているかを設定します。
 動画では0.5にしました。こうしたことで窓枠が窓に映り込んだようになり、より立体感が出ました。

ちょっとビルが暗いようなので、少し反射を入れて明るくしました。

マテリアルを編集する手順を動画でどうぞ。
最後に、元のDiffuseシェーダーと編集後のシェーダーを比較してみています。
(アウトプットを繋ぎ替えるだけで、簡単に2つのシェーダーを比較できるのです)

おまけとして、もう少しビルの見栄えにバリエーションを付けてみます。

どうでしょう?

最後に作ったビルを並べてレンダリングしてみました。
時間帯をちょっと変えて、空の雰囲気を変えました。
33_16a

これでレンダリングすると……。

レンダリング後、少しだけポスト処理をしています(もちろん、Blender内で)ので、ただレンダリングしたものとは見栄えが変わっています。 そのやり方については、また後日ゆっくりと……
レンダリング後、少しだけポスト処理をしています(もちろんBlender内で)ので、ただレンダリングしたものとは見栄えが変わっています。
そのやり方については、また後日ゆっくりと……

いろいろ作れるようになると、少しずつ楽しくなってきますね。

では、本日のレッスンはこれまでです!

お楽しみいただけましたでしょうか?
次回もまだ、キューブを使って作れるネタがありますでしょうか??

【今回の学び】

・キューブに任せろ! その9
「Wireframe(ワイヤーフレーム)モディファイア」
 「Subdivision Surface(サブディビジョン・サーフェス=再分割面)モディファイア」

でした。
【次回の学びは……】

・キューブに任せろ! その10

それでは、ぜひまた次回もお越しくださいね!

Happy Blending!!

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

無事ひとりの落後者も出さず(たぶん)、Cyclesマテリアルの基本も最後の回を迎えました。
いろんな質感が簡単に表現できて楽しいですねえ。
早く思い通りの形を作れるようになりたいと、そろそろ思い始めていますよね?

今回は、さっくりといきます。
「質感を合成するために用いるシェーダー」の数は多くありません。機能も限定的です。

さあ、始めましょうか!

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

【今回の学び】

・質感を合成するために用いるシェーダー

あの図をもう一度見てみましょう。《質感を合成するために用いるもの》です。

23_06

「Add Shader(=加算)」と「Mix Shader(=ミックス)」の2種類だけですね。

見慣れたシーンで比較してみます。

30_01

同じDiffuseシェーダーにGlossyシェーダーを足すマテリアルです。一方はMixシェーダーで合わせ、もう一方はAddシェーダーで足し合わせています。比べると、Mixシェーダーで合わせた場合の方が暗くなります。

MixとAdd、それぞれのシェーダーノードを見比べると、Mixシェーダーには「Fac」の設定があります。これ、覚えていますか?

そう、2つのシェーダーを混ぜる度合いです。ここの値を0から1まで0.2刻みで変化させたのが、下の図です。0の時は、青いDiffuseシェーダーのみの見え方。1の時は、白いGlossyシェーダーのみの見え方になります。1の時にも少々青く見えるのはDiffuseシェーダーのせいではなく、空の色が映っているからです。

30_02

Diffuseカラーを赤く変えてみても、MixのFac値が1の場合は下のスロットに接続されているGlossyの割合が100%になっています。そのためDiffuseカラーの影響はまったくありません。

03_03

Addシェーダーのほうはどうかというと、Mixシェーダーに比べてかなり明るい感じになります。これは、色の明るい成分だけを加える合成方法になっているからです。光は、その上に光を加えるとより明るくなる性質を持っていますので。

AddシェーダーでGlossyシェーダーを重ねた場合、Diffuseシェーダーだけの時より明るい感じになります。
AddシェーダーでGlossyシェーダーを重ねた場合、Diffuseシェーダーだけの時より明るい感じになります。

 

一番よく使われると思うのが、ここまで述べたDiffuseシェーダーとGlossyシェーダーを重ねる使い方かと思います。

他にも色々なシェーダーをミックスして様々な質感を表現することが出来ます。基本的な各シェーダーの性質についてはじっくりと学んできましたので、ぜひご自分で試してみてください。

少々短いですが、最後に短い動画をひとつ。何の質感も設定していない状態からMixシェーダーを当て、Inputにフレネルを設定し、やっぱりやめてFacを調整する様子です。

念のため、本日の学びで用いたBlenderシーンファイルをこちらに置いておきます。ご自由に(自己責任で)ご利用下さいね。

さ、次回からはいよいよモデリングに戻りますよ。

請うご期待!

【本日の学び】

・質感を合成するために用いるシェーダー
・Mix(ミックス)
・Add(加算)
【次回の学び】

・キューブに任せろ! その7

今回も、お楽しみいただけましたでしょうか?
それでは、ぜひまた次回もお越しくださいね!

Happy Blending!!

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

いやあ、いろいろ学んできましたねー。
今回は、特定の質感を表現するシェーダーではなく、機能的な役割のシェーダーを学びます。

さっそく、はじまりです。

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

【今回の学び】

・特定の用途に用いるシェーダー

あの図をもう一度見てみましょう。《特定の用途に用いるもの》です。

23_06

この中から、今回は「Ambient Occlusion(アンビエント・オクルージョン≒環境遮蔽。難しい名前ですね)」と「Background(=背景)」と「Emission(=発光)」を学びます。「Holdout」以下の三つについては少々上級用になりますので、このシリーズでは割愛する予定です。

また、BackgroundとEmissionについてはこれまでも折に触れて使用していますので、さらっといきます。

個別に見ていきましょう。

【Ambient Occlusion(アンビエント・オクルージョン≒環境遮蔽)】

環境遮蔽という名の通り、「環境から遮蔽されている」ことを表現するためのシェーダーです。
これ、どういうことかというと、例えば溝になっている部分や凹んだ部分など、光が届きにくくなる場所を暗くするためのものです。

自分の周囲にあるもので、いくつか写真を撮ってみました。

フローリングの溝が黒っぽく見えるのは、板と板の間にある隙間に光が届かないからです。
フローリングの溝が黒っぽく見えるのは、板と板の間にある溝に光が届かないから。

 

本の隙間が暗いのは、奥に光が届かないからですね。
本と本の間が暗いのは、奥に光が届かないからですね。

 

冷蔵庫の扉と本体の間、取手の凹み部分など、光が届きにくいところは暗くなっています。
冷蔵庫の扉と本体の間、パーツの接合部、取手の凹み部分など、光が届きにくいところは暗くなっています。

 

この《細い隙間に光が届きにくい》ことをきちんとレンダリングで表現するには、かなり細かく厳密に計算してあげなければなりません。今どきのCyclesならたいした負担でもないのですが、CGと現実では同じにならないこともあります。

凹んだ隙間には汚れや埃が溜まりやすいですが、CGではそんなことは起こりません。それによって、本来の光の当たり方より暗く見えるということも、現実では起こります。

CGでは、細い隙間にたまたま飛び込んだ光がそこを明るく照らすなんていうことが起こってしまう可能性もあります。CGの光の表現は全てを正確に現実と同じように計算しているわけではなく、ある程度ランダムな取捨選択によって《計算すべきところだけを計算している》のです。
(まあ、これも、Cyclesではほとんど気にしなくて良いレベルなのですが……)

さて、Ambient Occlusion(長いので、以下A.O.)シェーダーはどんなものでしょう?

背景は真っ黒、光源は何もない状態です。上からふわっとした光を当てた時に陰になりそうな部分が暗くなります。

 

これが、A.O.シェーダーをスザンヌと床壁に当てた状態です。

Blenderのシーンデータはこちらからどうぞ。

Diffuseの白いシェーダーを使用した時と同じに見えますでしょうか。でもこれは、画像のキャプションにある通り、完全に真っ暗闇の空間です。Diffuseシェーダーの場合は光源がないと何も見えません。この状態でDiffuseシェーダーを当ててレンダリングしても全面真っ黒い画像になるだけなのです(無駄なので画像は貼りませんが)。

明かりが全くなくてもオブジェクトの形が見える、というのは、現実では起こりません(それ自身が発光していない限り)。もちろん発光しているわけでもないのですが、A.O.シェーダーは見えてしまいます。

これは、A.O.シェーダー自体が《機能的な役割》なので、そのまま絵作りに使用するわけではないからです。

DiffuseシェーダーとA.O.シェーダーの違いをもう少しはっきり感じられるように、背景が真っ白でDiffuseの真っ白いシェーダーをスザンヌと壁床に当ててレンダリングしてみました。

明る過ぎて、何だか分からない画像になってしまいました。
明る過ぎて、何だか分からない画像になってしまいました。

背景の白い光に照らされて初めてDiffuseシェーダーの白い色が見えるわけですが、真っ白同士で明る過ぎて飽和してしまいました。

これでは形も何も分からないので、Diffuseカラーの白を少し暗くしてみます。

8割の明るさの白です。
8割の明るさの白です。

 

これでレンダリングすると……

形は分かるようになりましたが、ぼんやりしていて立体感が少なめです。
形は分かるようになりましたが、ぼんやりしていて立体感が少なめです。背景全体から発せられる光のように、ふわっとして方向性のない照明で照らされると、影も弱くなって立体感が希薄になります。

 

こんなときこそ、A.O.の出番です。

この画像の上に、A.O.のレンダリング画像を重ねて透かしてみます。《どのくらいの重ね方が一番きれいか》が、センスの見せどころですね。

ちょっとずつ、重ねる度合いを増やしています。だんだん立体感が出てきますね。 影の部分が増えると、「重さ」も感じられるようになります。
ちょっとずつ、重ねる度合いを増やしています。だんだん立体感が出てきますね。
影の部分が増えると、「重さ」も感じられるようになります。

 

今度は鏡のように強い反射を持つスザンヌです。きれいですが、立体感と「接地感(これ、CGではとても大切なことのひとつです)」が足りません。

29_06

こんな感じにA.O.を足すと、ぐっと重さが出ます。
こんな感じにA.O.を足すと、ぐっと重さが出ます。

 

鏡状の床に映ったスザンヌにはA.O.が入っていないのでリアルさには欠けるのですが、そこは言われるまで気がつかなかった方が多いかと思います。《目の行きやすいところをしっかり作り込み、他では手を抜く》というのもCG作成の大事なポイントです(ホントか?)

なお、A.O.レンダリング画像の合成は画像処理ソフト(Adobe Photoshop)で行ないました。Blenderでも同じことが出来るのですが、それはもっと先の話になりますので……。

A.O.については単独で使うものでもないため、今回は座学のみとさせていただきました。ご了承下さいませ。

ご自分で試してみたい方は、上のダウンロードリンクからデータを落として使ってみてくださいね。


【Background(=背景)】

読んで時のごとく、背景に使用します。試しにスザンヌ(と床)にBackgroundシェーダーを当ててみます。

ご自分で試す場合は、先ほどのデータを使用してくださいね。

見ての通り、真っ黒です。
見ての通り、真っ黒です。

Backgroundシェーダーの色設定は白になっています。それではWorldパネルの方にある背景の設定が真っ黒かというと……

真っ白だったりします。
やっぱり真っ白だったりします。

 

ここをどんな設定にしてもスザンヌの色は真っ黒なまま。要するに、これはマテリアル設定としては使えない・使わない、ということです。

シェーダーの話としてはこれまでですが、せっかくですからちょっと寄り道しましょう。

World(=環境)で背景にSky textureを設定すると、こんな感じになります。スザンヌは白いDiffuseシェーダーです。

29_12

もう手順をお見せしなくても出来ると思いますが、そこは《世界で最も丁寧なBlenderチュートリアル》を目指しているBlender-99ですから、念のためGIFアニメを貼っておきますね。

29_13

このSkyですが、リアルな物理スカイから2種類を選ぶことが出来ます。

Preethanは明るくて、ピンクの地平線がきれいです。Hosek/Wilkieの方が新しく、表現的にもリアルなようです。
Preethanは明るくて、ピンクの地平線がきれいです。Hosek/Wilkieの方が新しく、表現的にもリアルなようです。

 

Hosek/Wilkieの物理スカイには「Ground Albedo(地面のアルベド)」という設定があります。これは空に照らされた地面から上方へと放射される光の明るさを指すのですが、設定値を変更するとどうなるか見てみます。

29_15
全体的に明るい感じになりました。

 

今度は、空の光の強さを表わす「Strength」との違いが気になりますね。では、Ground Albedoを0に固定して、「Strength」を変化させて比べましょう。

こちらも全体に明るくなりますが、より彩度が上がって天頂の色を拾う感じになるのではないかと思います。

ついでに、「Turbity」の値も変えてみましょう。こちらは、空の濁度です。つまり、空気がどれだけきれいか、汚いか、です。

最も小さな値が1です。空に不純物がないと、空気中の光は拡散も反射もせず、宇宙のように真っ暗になってしまうからではないかと思います。1刻みで設定してみます。

 

濁度を上げると空の色が濁っていったん赤味を帯び、その後灰色になります。 なぜか、影のエッジは次第にはっきりしてきます。
濁度を上げると空の色が濁っていったん赤味を帯び、その後灰色になります。
なぜか明るくなり、影のエッジは次第にはっきりしてきます。ただ、単純に線的な変化ではなく、単に値が高いとどうなる、低いとどうなる、ということでもないようですね。

 

Hosek/WilkieとPreethanに共通しているのが、太陽の向きです。ちょっと扱いづらいですが、プレビューの球体をドラッグすると時間帯などが変化します。

これを扱いやすくする「Sun Position」というアドオンがあるのですが、そこはまた後日、ということにします。興味のある方は、ご自分で調べてみても面白いかと思います。

このへんでBackgroundの話は終わりにして、次に行きましょう。


【Emission(=発光)】

Blenderのシェーダーの中で、最も多用するものの一つがこのEmissionです。形のはっきりしたオブジェクトを光源として用いると分かりやすいですし、現実とも近い表現になるため、照明に多用します。

■注意■
光源のサイズが小さいと異常にレンダリング時間が掛かりますので、間違っても豆電球などをリアルに光らせて部屋全体を照らすようなことはしない方が良いかと思います。

Emissionシェーダーの基本について、実は
『BLENDER-99-21/様々なランプ(後編)』で学習済みでしたね。
忘れている方は上のリンクから復習をどうぞ。

第21回の講座ではスフィア(球体)、プレーン(平面)、トーラス(ドーナツ型)をエミッター(Emissionシェーダーを当てた発光体)にしてスザンヌを照らしました。
もっと自由度が高いことを見て頂くため、スザンヌにEmissionシェーダーを当ててみたのが下の絵です。

後列中央はツヤツヤのGlossyシェーダー、前列右は半ツヤのGlossyシェーダーです。
後列中央はツヤツヤのGlossyシェーダー、前列右は半ツヤのGlossyシェーダーです。

 

同じシーンで、環境を真っ暗にするとこのようになります。

三つのスザンヌだけから光が出ていることが分かりますね。
三つのスザンヌだけから光が出ていることが分かりますね。きれいです。

方法を学ぶのはまだ先の話ですが、こんなことも出来ます。

29_21
たくさんのプレーンをArrayで並べ、動かしながら色を変化させています。エミッターの数が多いため、レンダリングの結果も少々ノイズが多くなっています。エミッターの数が増えるとレンダリング時間が遅くなりますので、部屋全体を照らしたいときなどは大きめのプレーン一枚で行なうと良いでしょう。

 

皆さんは既にお気づきのことと思いますが、Emissionシェーダーを当てたオブジェクトには陰影がつきません。オブジェクトの全体が均等に光を発しているので、当然のことですね。

でも、それでは表現の幅が狭くなってしまいます。
もちろん、少し手を入れれば立体感のある表現も可能です。
例えば、「反射を入れる」、「暗いところを作る」などですね。

こちらは、ある遺跡の発掘現場をCGで作ったものです。
(小説『孤独の王』のPV用です。数年前の作品ですが)
電球オブジェクトを発光させて照明にしていますが、付け根の部分を少し暗くして電球の立体感を出しています。

29_22

 

次に、シンプルでちょっとシュールな部屋を作ってみました。こちらは、天井近くにEmissionシェーダーを当てたプレーン(平面)を置き、それを照明にしています。プレーン自体はカメラから見えない場所にあります。

29_23

Emissionシェーダーの代表的な使い方としては、この2つでしょうか。照明器具と、姿を見せない照明用。もちろん、もっと色々な使い方は出来ますが。

本日の学びはこれで終了です。最後に、『SF雑誌オルタニア Vol.3 変身』の表紙をご覧下さい。

宇宙空間にある無数の星は全てEmissionシェーダーを当てたスフィアです。右側の変身文字型宇宙船(笑)の側面にある窓やイルミネーションも全てEmissionシェーダーで光らせたものです。

イメージ、広がりますでしょうか。Alternia_cover_s

【本日の学び】

・特定の用途に用いるシェーダー
・Ambient Occlusion(アンビエント・オクルージョン≒環境遮蔽)
・Background(=背景)
・Emission(=発光)
【次回の学び】

・質感を合成するために用いるシェーダー

今回も、お楽しみいただけましたでしょうか?
それでは、ぜひまた次回もお越しくださいね!

Happy Blending!!

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

前回は、「その他の質感を現すシェーダー」の中で、2種類のシェーダーを学びました。

・Subsurface Scattering(サブサーフェス・スキャタリング)と、
・Translucent BSDF(トランスルーセント≒光透過)でしたね。

SSS+Ref3
この僅かに透けた感じが好きなんですよねー

 

今回は、下記の2つを学びます。

・Velvet BSDF(ベルベット)
・Toon BSDF(トゥーン≒漫画調)

最後の2つは少々性格の違うものです。
特にトゥーンに関しては、Blender以外の世界では専用のレンダリングが何種類も出ているほど複雑かつ奥の深いものです。もちろん、今回は触りだけの学びですが、ね。

では、はじまりはじまり。

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

 

【今回の学び】

・「その他」の質感を現すシェーダー 3
・Velvet(ベルベット)
・Toon BSDF(トゥーン≒漫画調)

【Velvet(ベルベット)】

ベルベット、聞いたことありますよね?
別珍とか、ビロードとか、スエード……。似たような質感の布や革がいろいろありますが、そんな質感を表現するのがベルベット・シェーダーです。
遠目から見た馬の毛並みなども、このシェーダーで表現できます。
なかなか便利そうですね。

別珍とベルベットは本来別物だったり、布と革ではまったく違いますが、CGは便利ですね。設定を変更すれば、似た質感のものはたいがい表現できるのですから。

そのためには〈現物をしっかり観察すること〉と、〈どうすればその観察した結果をCGの表現に落とし込めるかという知識を持つこと〉が必要なのですが。

前回と同じシーンデータからスタートしましょう。
B99_27_1.blend
こちらを使用してくださいね。

ダウンロードしたBlenderのファイルを起動すると、こんな感じです。
28_01
スザンヌに、前回のTranslucentシェーダーが当たっています。

これを、「Velvet BSDF」に変更します。
もう、この手順にはすっかり慣れましたね!

 

基本的な設定パラメーターは少ないです。色のほかには、「Sigma」というものしかありません。
シグマ、なんでしょうね?
記号で書くと「Σ」。見たことありませんか?
そう、表計算ソフトで見ます。〈足し算した結果〉を現す記号です。

とまあ、言葉の意味としては分かりましたが、これがどういう意味なのかはよく分かりません(笑。

まずはSigmaの値を徐々に変更してみます。
28_03

Sigmaの値を減らしていくと徐々に明るい部分が周囲へ周囲へと減っていき、最後は真っ黒になります。

ベルベット系の質感は、毛羽だった表面を現します。
理屈は分かりませんが、僕は、以下のように考えています。

黒いのは毛が生えている元の表面質感。人間の頭で言えば、皮膚です。
(色が逆ですが)

五分刈りの頭を想像します。
短い毛が立っているので、毛の生えている向きと垂直の視点から見ると、毛はほとんど見えず、素肌が見えます。
斜めから見ると、毛の長さ分の毛が見えます。
黒い球体に短い毛をびっしり生やしたものを作ってみました。

(毛の数は10万本です!)
(毛の数は10万本です!)

 

毛が多すぎて毛と素肌の関係が少々分かりにくいので、数を減らしてみました。

こちらは毛の数が1万本です。
こちらは毛の数が1万本です。

 

先ほどのベルベット・シェーダーと似た感じの見え方です。
こういうこと、なのでしょうか?

「違う!」
そんな声が聞こえてきます。そうです、違いますよね。

Sigmaの値を減らしていくと、毛の数が減っていくのではなく、毛の色が形状の周囲でしか見えなくなっていきます。
これ、以前学んだフレネル反射と似ていると思いませんでしたか?

CGでは、画像として映るものは全てカメラから見た状態のものです。
毛に対して垂直から見た状態だと〈点〉としてしか毛が見えませんので、最も毛の色が判別できなくなります。
上の画像で言うと、球体の中心部あたりです。
カメラの視線に対して角度が付いている(毛が倒れている)と、毛の長さ方向が見えてきますので、毛の色が強く現れます。

つまり、Sigmaの値はカメラに対する毛の向き。ということになるかと思います。

値が1なら寝ている状態
値が0ならカメラに向かって垂直に立っている状態

ほとんど見えなくなるくらい毛を短くして本数を増やすと、ベルベット・シェーダーと似た見え方になります。
こちらのやり方は、ベルベット・シェーダーのように「光の振舞いを想定したシェーダーで表現する」のではなく、「実際に本当の毛の形を再現して表現する方法」と言えるかと思います。やり方によっては、非常にリアルな表現が可能です。
でも、レンダリング時間も相当に掛かるようになりますし、カメラからの視点に対して髪の毛の向きを調整するのはたいへん困難になります。

28_06
こちら、1千万本の毛を生やしてみました。レンダリング時間も26分ほど掛かっています。
でも、ベルベット・シェーダーなら15秒でレンダリングが終わります。
28_07
質感を作成するとき、その物体の細かな特性を考え過ぎて形状から完璧にシミュレーションしようとするより、シェーダーで質感を整える方法がいかに優れているか、分かります。

同じようにスザンヌでやってみました。

上が実際にごく短い毛を生やしたもの。下がベルベット・シェーダーです。色味を調整すれば、遠目には大きな差はありません。むしろ、ヘア同士だと干渉しあっておかしくなってしまうことがありますが、ベルベット・シェーダーではそれは起こりません。

毛の数は400万本、レンダリング時間は4分53秒。 質感はいい感じですが、ディティールが少々怪しいです。
毛の数は400万本、レンダリング時間は4分53秒。
質感はいい感じですが、ディティールが少々怪しいです。
こちらは毛が0本、レンダリング時間は15秒です! ディティールも破綻していません。
こちらは毛が 0本、レンダリング時間は15秒です!
ディティールも破綻していませんが、触ったときのふかっとしたイメージは劣りますね。

 

ベルベット・シェーダー、なかなかきれいですね。

では、次にいきましょう。トゥーン・シェーダーです。

Toon BSDF(トゥーン≒漫画調)

プロパティ・パネルのマテリアルタブでVelvetシェーダーをToonシェーダーに変更して好きな色にしましょう。
28_10

僕はこんな青にしてみました。
光の当たり方が弱かったので、光源のIntensityを強めています。
「漫画調」と言うように、明暗が整理されたシンプルな質感になります。
28_11

Surfaceのところが「Use Nodes」というボタンになっていたら、押してください。 光を放つ「Emission」に変わります。
Surfaceのところが「Use Nodes」というボタンになっていたら、押してください。
光を放つ「Emission」に変わります。

設定を見ると、「Size」と「Smooth」というものがあります。
(「Normal」については、入門編ではいつもどおり無視します)

「Size」の初期値は0.5です。これを徐々に減らしてみます。
28_14

Sizeを小さくすると明るい部分が小さくなり、同時にその色がより明るくなることが分かります。

今度は、増やしてみます。
28_15

想像したとおり、明るい部分が広がりました。でも、全てを覆うほどには広がりません。
これは、あくまでも〈光の当たっている部分〉の大きさだからです。光の当たらない部分には、明るさは広がらないのですね。

次に「Smooth」の値を変更します。

これも、想像がつきますね。

28_16

Smoothの値が大きくなるに従い、明暗の境目が滑らかに繋がります。Smoothを大きくするほど明暗の差が曖昧になり、1の状態ではDiffuseシェーダーのようです。

設定の値を追っていくだけだとここで終わりなのですが、それだけでは少々面白くありません。

明暗がくっきり分かれる漫画的な質感の生かすと、グラフィックデザイン調の見せ方も出来ます。

例えばこんな表現はいかがでしょう?

ちょっとしたデザイン画みたいでしょ
ちょっとしたデザイン画みたいでしょ。 よろしかったらこちらのデータをもとにしていろいろと試して(=遊んで)みてくださいね。

 

ライトの色がそのまま出るというシェーダーの特徴を生かし、色々な色のライトでスザンヌを照らすことにより、上図のような表現になりました。これが通常のシェーダーと異なるのは、照らされた色の中にほとんど明暗の差がないということです。

Smoothの設定値はゼロですが、スザンヌの表面が曲面なので、光の当たる角度などによって色の境目がくっきりしない部分も出ます。

こんな感じで照らしています。

選択されてオレンジ色になっているのがライトです
選択されてオレンジ色になっているのがライトです。前後左右から照らしています。

 

こんな風にしてもちょっときれいだと思いませんか?
ライトの位置と色を変えました。

28_19
シーンデータはこちらからダウンロード出来ます。

 

もう一つ、大事な設定を忘れていました!

Toon BSDFの真下が「Diffuse」となっています。ここをクリックすると選択肢が出ます。「Diffuse」と「Glossy」を切り替えられるのです。

28_21

 

28_22
後ろにあるオレンジ色の円柱は、スザンヌに当てたToonシェーダーがGlossyのときに周囲を反射していることが分かるように置いています。 スザンヌの左側の後ろの方を向いている面に、オレンジ色が映っていますね。

 

同じシーンでもかなり見え方が変わってきますね。

Blenderのシーンデータをダウンロードしたら、この「Diffuse」と「Glossy」もぜひ切り替えて試してみてください。


さて、今回の学びは以上で終了です。
2つのシェーダーの特徴が理解できましたでしょうか?


【今回の学び】

・Velvet(ベルベット)
・Toon BSDF(トゥーン≒漫画調)
【次回の学び】

・特定の用途に用いるシェーダー

今回も、お楽しみいただけましたでしょうか?
それでは、ぜひまた次回もお越しくださいね!

Happy Blending!!

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

前回は、「その他の質感を現すシェーダー」の中で、2種類のシェーダーを学びました。

・Anisotropic BSDF(異方性反射)と、
・Hair BSDF(毛)でしたね。

今回は、下記の2つを学びます。

・Subsurface Scattering(サブサーフェス・スキャタリング)
・Translucent BSDF(トランスルーセント≒光透過)

何やらまた、難しそうです。
でも、もちろん大丈夫です。ちゃんと分かりやすいように解説しますからね!

では、はじまりはじまり。

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

 

【今回の学び】

・「その他」の質感を現すシェーダー 2
・Subsurface Scattering(サブサーフェス・スキャタリング≒表面下光散乱ひょうめんかひかりさんらん)
・Translucent BSDF(トランスルーセント≒光透過)

【Subsurface Scattering(サブサーフェス・スキャタリング)】

名前を「表面下光散乱ひょうめんかひかりさんらん」と無理やり訳してみました。
イメージ湧きますか?
湧きませんよねえ。

では、身近なものを写真に撮ってみます。
IMG_3395

IMG_3396

観葉植物コンシンネの葉です。窓際にあるので、外からの光が透けて見えます。向こう側に光がある部分は若干黄緑色っぽくなっていますが、分かりますか?

本日学ぶ2つのシェーダーは、いずれもこの光の透過を扱うものです。え? 透明や屈折シェーダーとどう違うか、ですって?

そうですね、そこに気がついたあなたはさすがです。Blender-99で日夜学習しているだけのことはありますね!

この4つのシェーダーは、いずれも当たった光が逆側に通り抜ける性質を持っています。前回の2つは基本的に透明なので、そのシェーダーが適用されたオブジェクトの向こう側にあるものがはっきり見えるものでした。今回の2つは、〈光は通すけれど、向こうにあるものの形までは分からない〉光の透け方です。

もう少し写真を見ます。

ビールケースのようなプラスチックのケース
ビールケースのようなプラスチックのケース

 

逆光が当たる場所に置いてあります。向こう側から来た光が側面の内側に当たり、明るくなっています。もしこのケースが金属でできていたとしたら、光が透けて見えることはありません。左上の角にも注目してください。プラスチックの中を通り抜けた光が、エッジを明るく光らせています。これは決して右上(外)から当たった光ではなく、プラスチックという物質の内部を通ってきた光です。

青い発泡スチロールの箱
青い発泡スチロールの箱

白く光っているエッジの周辺で、発泡スチロールの内部を通った光が筋模様を青く照らしているのが分かります。下の方の筋模様はもっと暗くて黒っぽいですよね。光が筋の部分を伝わっていることが分かります。
エッジ周辺の角に関しては、厚みの薄い部分で向こう側に当たった光を通していることが分かりますね。

(次はCGですが)Manuel Labの記事を見てくださっている方は、こちらの画像をご記憶かもしれません。右手の小指と薬指の、特に付け根の辺りが光を通している様子が分かります。

ML15_02_1,4

 

 

このように、Subsurface Scattering(SSSと略します)とは、物体の内部に侵入した光がその中で散乱(反射&屈折)し、光の通り過ぎた先の表面を明るく照らす現象のことです。例に上げたものはいずれも物体の内部が不透明なもので詰まっているので、光を通すけれども向こう側は見えません。そこが、透明物と違うところです。

Translucentは、不透明だけれど光を通すというような意味です。素人目には、この2つのシェーダーはあまり違いがありません。

これらの大きな違いは、SSSは〈物体の内部を透過する光の散乱を計算して再現する〉のに対し、Translucentは〈中は詰まっているけど光を通すことにする〉というものです(私見ですが……)。

これがどういうことかというと──

・SSSは物体の厚みに応じて光の透過度が変化する
→SSSは物体内部を透過する光を実際に計算する

SSSはレンダリングの計算に多くの時間を必要としますが、下図のように想像通りの結果を得ることが出来ます。
石鹸のように不透明だけれど光を通す物体の背後から光が当たっている様子です。

SSSは物体の厚みをリアルに感じることができます。 なんだか、美味しそうに見えますね。
SSSは物体の厚みをリアルに感じることができます。
なんだか、美味しそうに見えますね。

 
一方でTranslucentをスザンヌに適用してみると……

Translucentは、このような立体物に適用すると光の透過した感じも分からず立体感も曖昧です。
Translucentは、このような立体物に適用すると光の透過した感じも分からず立体感も曖昧です。

 

・Translucentは物体の厚みを考慮しない
→立体的な表現には向いていないかも?

Translucentって不要なんじゃないか、と、つい思ったりもします。
でも、きれいにSSSの計算をするのは結構時間が掛かるのですよね。

この2つのシェーダーをスザンヌに適用したデータを、全く同じ設定でレンダリングしてみます。

27_01
左上に表示された「Time」を見ると、レンダリングにかかる時間はほぼ同じです。 が……

 

両者を比較すると、SSSは粒々のノイズだらけで画像が粗いですね。

Translucentと同じくらいきれいに見えるように設定を変えると……
27_02

なんとまあSSSのほうが4倍近い時間を必要とすることが分かります。

SSSと同様に背後からの光を通しているはずなのに、Translucentは全然光が透過している感じがしません。かといって、Diffuseの見え方とも異なります。では、Translucentシェーダーは何に使うのでしょうか?

簡単なシーンを作ってみました。芝のような草が何枚か生えているものです。

27_03

草が明るく見える方がTranslucentです。葉が重なった部分で、背後にある葉の影が映っています。つまり、光が透過して見えているということです。SSSの方はというと、厚みのない葉なのに厚みの計算をしようとしているのか、妙に不自然で、逆に立体感がありません。

これは、SSSシェーダーの初期設定が立体用になっていることもありますが、僕の知識の範囲で調整してみてもあまり望ましい結果にはなりませんでした。しかも、きれいにレンダリングするためにかかる時間は何倍にも増加しますし、葉裏から当たる光が弱くて、全体が暗いままです。

27_04
頑張って設定を調整しても、いまひとつ葉っぱの質感には見えませんでした。

 

Translucentシェーダーをもう少し調整し、より葉っぱっぽくしてみます。具体的には反射を入れています。形状も僅かな厚みを付けて、ちょっとだけ凝った感じにし、数も増やしました。

色は一色で単調な設定ですが、影と反射で表情が出ました。
色は一色で単調な設定ですが、影と反射で表情が出ました。これでレンダリング時間は1分10秒です。

 

何となく、両者の違いが見えましたでしょうか?

■2つのシェーダーの使い分け-1■
SSS:光が透過する立体的なものを表現するに最適
Translucent:光が透過するが平面的なものに最適

SSSを使用する代表的な質感は、「せっけん」「ろうそく」「ゴムやシリコン」「キャンディー」「肌」「透明でない飲料」などでしょうか。紙束や木、布なども、ものによってはSSSを使用するときれいになります。ただし、計算時間が掛かりますから、最終的にレンダリングした絵から得られる効果を考えて選択することも必要になります。
入門編ではまだ、そこまで想像できませんが……。

Translucentを使用する代表的な質感は、上記でも分かるとおり「葉」「紙(一枚一枚分かれたもの)」「薄い布」「曇りガラス」など、不透明で厚みを考慮しなくても良いシート状のものと考えることが出来ます。

ただし、そうでない場合もあります。

SSSは計算時間を食いますが、Translucentシェーダーを用いて疑似的にそれっぽい雰囲気を出すことも出来ます。例えば、部屋の窓際にロウソクが置いてあるような絵を作りたい場合、ロウソク自体の厚みの変化はさほど影響がなさそうです。
ロウソクには光沢も必要なので、Mix Shaderを使ってReflection(=反射)を加えます。

こちらが、〈Translucent+反射〉シェーダーでロウソクの質感を作った画像。
レンダリングに要した時間は1分18秒です。
ロウソクの立体的な形は反射によって表現されていますし、明暗もちゃんとあります。光の透過は少々不自然ですが、なんとなくそれっぽい感じには見えますね。
Translucent+Ref

次が〈SSS+反射〉シェーダーでロウソクの質感を作った画像。
レンダリングに要した時間は1分30秒です。
思ったほど時間の差は出ませんでした。でも、意外なことに光が透過した感じも出ていません。

SSS+Ref

実は、せっかくのSSSの効果が感じられないのはロウソクのサイズが先ほどまでのスザンヌよりずっと小さいからなのです。

27_05
こちらが、現在のシェーダー設定。 「Subsurface Scattering」と書かれている部分から下が、SSSの設定部分です。

 

初期値のまま1.0だった「Scale」の値を0.1にします。大きさが小さい分、10分の1にしてみるわけです。先ほどのものはロウソク全体に光が万遍なく透過していたのでSSSらしさがありませんでしたが、Scaleをロウソクのサイズに近づけることで〈薄い部分だけ光が通る〉ようになりました。透過部分が減ったことで思いのほかレンダリング時間は短くなり、1分23秒です。

SSS+Ref2

ずっとリアルになりましたし、ロウソクのずっしりとした感じも出ているかと思います。ちょっと暗くなりましたが、実際に逆光なので、明るさとしてはちょうど良い程度です。

アップで見たときの粒々なノイズ感もそれほど目立たないようです。ロウソクの形状がシンプルなので、計算の負荷が低いのでしょう。

最初はレンダリング計算時間を短くするためにTranslucentで代用することを考えていましたが、使い方によっては遜色ない時間で計算出来るようです。技術の進歩の、なんと速いことか!

それでも、様々な形状に対してSSSの最適な設定値を作るのは少し難しい場合があるかもしれません。そんなとき、もしもそのオブジェクトが主役級でなければ、Translucentで代用するという選択肢もあるのではないでしょうか。

せっかくなので小振りのスザンヌを置き、アングルを変えてレンダリングしてみます。スザンヌも蝋の質感になっていて、耳の光透過がきれいです。

SSS+Ref3

こうやって、簡単にバリエーションの画像が作れるところも3DCGの楽しいところですね!

■2つのシェーダーの使い分け-2■
SSS:設定もレンダリングもじっくり時間をかけてリアルに作りたい時
Translucent:取りあえず何となく光が透けた感じが出せれば良い時

こんな風に、臨機応変に考えても良いかと思います。


 

さて、今回は手取り足取りのチュートリアルではなく、見本とざっくり解説のみにしてみました。これまでずっと挑戦を続けてきて下さった皆さんなら、きっと今回の質感も作れると思います。

ただ、モデリングに関してはまだほとんど何も学んでいないに等しいので、形状は作れないですよね。最後にそれぞれのBlenderデータを置いておきますので、ぜひ、ご自分でも実際に試してみてください。全て設定済みのデータになります。

B99_27_1.blend
スザンヌが一つだけのシーン。SSSとTranslucentを切り替えるには、マテリアル・パネルで「Surface」を押して出てくるシェーダーメニューから選択します。
ここはもう、詳しい説明は不要ですよね?
27_06

 

B99_27_2.blend
草のシーン。最後のレンダリング結果と同じセッティングです。葉っぱを選択してノードエディターを見ると、下記のようになっています。TranslucentとSSSを繋ぎ替えると各々の違いを見ることが出来ます。

grass

 

B99_27_3.blend
ロウソクが壁際に置かれている最後のシーンです。こちらもTranslucentとSSSを繋ぎ替えて各々の違いを見られるようになっています。
このままレンダリングしても良し、色を変えてみても、カメラを動かしてアングルを変更しても面白いですね。candle

さて、今回の学びは以上でお終いです。
しっかり2つのシェーダーの違いと使いどころが分かりましたでしょうか?


【今回の学び】

・Subsurface Scattering(サブサーフェス・スキャタリング≒表面下光散乱)

・Translucent BSDF(トランスルーセント≒光透過)
【次回の学び】

・「その他」の質感を現すシェーダー3

今回も、お楽しみいただけましたでしょうか?
それでは、ぜひまた次回もお越しくださいね!

Happy Blending!!

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

今回は第26回です。本日は5月26日です。そして、マテリアルの基本の5回目です。5,2,6…なんだか運命を感じますねえ……。
(ぜんぜんない!)

さて、前回は〈透明を表現するシェーダー〉3種を学びました。
「Glass(=ガラス)」シェーダー
「Refraction(=リフラクション、屈折)」シェーダー
「Transparent(=トランスペアレント、透明)」シェーダー
でしたね。
それぞれの特徴を覚えていますか?

思い出せなかったら、前回の講座をもう1回さらってみてくださいね。
もちろん、前回のシェーダーを覚えていなくとも今回の学習には問題ありませんが。


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

【今回の学び】

・「その他」の質感を現すシェーダー

 

「その他」(なんて大ざっぱな括りなんだ!)の質感には、どんなものがあるでしょう?
(これまで学んだもの以外を「その他」と呼んでるだけなのですが)

例のメニューをもう一度見てみます。
今回も、注目するのは「特定の質感を表現するもの」に分類されているものです。

23_06

上から、

・Anisotropic BSDF(異方性反射)

・Hair BSDF(毛)

・Subsurface Scattering(サブサーフェス・スキャタリング≒表面下光散乱)

・Toon BSDF(トゥーン≒漫画調)

・Translucent BSDF(トランスルーセント≒光透過)

・Velvet BSDF(ベルベット)

六つもあります。ちょっと難しそうですねえ。舌を噛みそうなのもありますし……。

心配していても始まらないので、まずは始めましょう。
今回は、この中から二つを学びます。

 

【Anisotropic BSDF(異方性反射) 】

異方性反射という言葉、聞いたことがありますか?

これは、一定の方向に磨かれた金属などに見られる反射で、平滑な面で起こる反射とは光の向きが異なるものです。
ちょっとわけが分かりませんね。
大丈夫、親愛なる生徒さんを煙に巻くつもりなんて、これっぽっちもありませんので!

例えばヘアライン加工されたステンレス製品:鍋、昔のキッチンシンク、業務用換気扇、腕時計の裏など。

一部のコインやオーディオ製品のつまみにも見られますし、DVDやblurayの裏もそうです。

イメージ湧きましたか?

簡単なシーンを作ってみました。

26_01

こんな質感、見たことありますよね?

球体に反射した光が帯状に伸びています。円筒の側面でも反射が真直ぐに伸びています。一方で、円筒の上面では、球体に反射した光と同じように反射の帯が伸びて中央部に収束しています。
スザンヌの青(Diffuse=拡散反射のみの青を設定)も円筒の上面に反射していますが、なんだか歪んでおかしな感じに見えます。ぐにゃっと反射が曲っているようですね。

──これが、異方性反射です。

こちらのリンクは「anisotropic reflection」で画像検索してみた結果です。いろいろと現実世界の例が出てきます。

下の写真はわが家のオーディオ。
つまみが同心円状に磨かれているため、上のCGと同じような異方性反射が現れています。

わが家のオーディオ
パネルにも水平方向にヘアライン加工がなされています。光の当たる角度によって、ここにも異方性反射が現れます。
(アップで見ると汚れや錆びで反射が濁っていてびっくり。いつも見ているのにまったく気がつきませんでした……)

 

実際に使ってみましょう。こちらのBlenderファイルから始めます(ファイル保存時のバージョンは2.78cです)。

まずは準備。

ダウンロードしたBlenderファイルを開いたら、左下の画面をレンダリング・プレビュー(Shiftキー+Zまたは下のメニューから選択)表示にして、右側の3Dビューポートでスフィア(=球体)をクリック選択します

26_02
スフィア(球体)とシリンダー(円柱)には何も質感が設定されていません。これに異方性反射シェーダーを適用します

 

画面右側のプロパティ・パネルからマテリアル(=オレンジ球体アイコン)のタブを選択していることを確認し、「New」ボタンを押して新しいシェーダーを作ります。

こちらのGIFアニメと同じように、Aisotropicシェーダーを作ります。

26_02
クリックして再生します

 

これで、スフィアに異方性反射シェーダーが適用されました。

──あれ?

26_04

先ほど見た画像と違いますね。異方性反射の異の字もありません!

初期設定では何も異方性の設定をしていないので、ただのつるつるな金属なのです。

設定をいじる前に、スザンヌが乗っている円柱にも同じシェーダーを適用しておきます。

分かりやすいように、マテリアル名を「AnisotropicMetal」に変更しました。もちろん、どんな名前でもOKです。

2つとも異方性反射シェーダーになりましたね。

プレビュー画面では、こう見えているかと思います
プレビュー画面では、こう見えているかと思います

 

これでは全然異方性反射になっていないので、設定を変更しましょう。

「Roughness(=粗さ)」の値を変更してみます。

26_07

値が1だとぼやけ過ぎて金属っぽく見えませんが、少し変更するだけでいろいろな雰囲気の質感になります。

次に、「Anisotropy」つまり異方性の値を変更してみます。

Roughnessの値は0.5で固定にしています
Roughnessの値は0.5で固定にしています

Anisotropyの値を増やすと、反射が繋がります。1では、円の中心点を基にした対の方向へ、反射がずっと繋がりますね。

この2つの設定値を変更することで、様々な表面質感だけでなく、重さや硬さの雰囲気の違いまで表現出来そうです。

最後に、「Rotation」の値を変更してみます。

0から1までをアニメーションさせてみました。
0から1までをアニメーションさせてみました。

 

Rotationの値を増やすと反射が歪みます。スフィアでは反射の見え方自体がかなり変化しますが、シリンダーの場合は文字通り反射が回転したようになります。一見回転しているだけのようにも見えますが、スザンヌの映り方を見てください。かなり表面の反射具合が変化していることも分かります。

他にも設定はあるのですが、入門編としてはここまでにしましょう。ぱっと結果が得られるものでもなく、かなり複雑になってきますので、もっと先まで学んでから、必要に応じて戻ってくることにします(ぼく自身もこれ以上の設定はめったなことではいじりませんので、このまま忘れてしまっても大丈夫ですよ)。

異方性反射シェーダーは以上です。例と同じように出来ましたでしょうか?


 

【Hair】シェーダー

読んで字のごとく、毛を表現するためのシェーダーです。が、髪の毛の形状を作成するのはかなり高難易度なので、〈ふわふわの玉のようなもの〉を作って質感を調整してみます。

まだ学んでいない「パーティクル」の機能を用いますので、Blenderファイルも用意しました。こちらからダウンロードしてください。

レンダリング・プレビューで見るとこんな感じです。

まだ何の質感もせっていしていません
まだ何の質感も設定していません

 

スフィアから毛を生やす設定をしているのですが、データが重くなり過ぎないように、プレビューで見える毛の数を減らしています。毛の中心にあるスフィアはレンダリングされないようにしているので、地面に映る影の中心が明るくなっています。

スフィアを選択したら右側のプロパティ・パネルからマテリアル設定のタブを開き、「Hair」シェーダーを適用してみましょう。先ほどの異方性反射と手順は同様なので、画像は省きます。

プレビューではこんな感じ。まだほとんど違いが感じられません。
プレビューではこんな感じ。まだほとんど違いが感じられません。

 

このままレンダリングしてみます。

プロパティ・パネルの中で、左端の一眼レフ風アイコンがレンダリング設定のタブです。

設定を開いたら「Render」ボタンを押すだけです。

レンダリングの計算が進むと、画像がどんどん現れます。計算時間はパソコンの性能次第です。 ぼくのMacでは約1分半。ご自分のパソコンでの計算時間と比較すると、今後のレッスンのレンダリング時間が予測できるかと思います。

 

レンダリング結果がこちらです。

シルバーの毛並みの猫みたいですね。
シルバーの毛並みの猫みたいですね。

 

シェーダーの設定を見てみます。

26_14

「Color」をブロンドっぽい色に変更し、「Offset」を変更しながらレンダリングしてみます(アニメーションでレンダリングしていますが、計算に時間が掛かるので同じことをやってみる必要はありません。配布Blenderファイルに設定もしていませんし)。

「Color」の設定はこんな感じにしました。お好きな色に変えてやってみてください。

26_15

レンダリング結果はこちら。45度刻みで「Offset」値を変更しています。ライティングを変更しなくても、光り方の雰囲気が変化します。

26_17
角度と見栄えの相関関係はよく分かりませんが、ご参考になれば。
■HEXカラーについて■
先ほどのColorの値は、HEX値でいうと「E2CA9C」です。HEXカラーって、ご存知ですか? 便利なんですよ。
RGBそれぞれの値を0〜Fまでの2桁の文字で現し、たった6桁でフルカラーを表現できるものです。
(000000が真っ黒、FFFFFFが真っ白です)
WEBでの色設定でよく使われるものですが、RGBそれぞれの値を一度に設定出来るので、CG作成時に色の設定を同じにしたいときなど、とても重宝します。

Color設定の色四角をクリックし、表示されたカラーホイールの下にある「Hex」をクリックすると、その下に現在の色のHex値が出ます。これはコピペ出来るので、使い回しが効いて便利なのです。
Color設定の色四角をクリックし、表示されたカラーホイールの下にある「Hex」をクリックすると、その下に現在の色のHex値が出ます。
これはコピペ出来るので、使い回しが効いて便利なのです。

 

次に、「Roughness」の値です。UとVの設定値がありますが、これは、水平方向と垂直方向の〈反射の粗さ〉を変えられます。こちらも、光り方の雰囲気に影響を与えます。

26_18
初期設定ではV(縦)方向の反射がぼけていて、U(横)方向の反射はツヤツヤです。これをU方向のみぼかしていきます

 

今度はいずれの方向もツヤツヤの状態(値=0.1)から、V方向のみぼかしてみます。

26_19
U(横)方向の反射はツヤツヤのまま、V(縦)方向の反射をぼかしていきます。

 

初期設定のツヤがきれいですね(笑

両方向ともぼかしていくと、 ツヤがなくなります。傷んだ髪の毛の表現に向いていそうです。両方向ともツヤツヤにすると金属っぽくなり過ぎて髪の毛には見えません。上記二つの例を参考にして調整すれば、ちょうど良い感じの質感を作れそうです。


今回の講義はこれで終了です。
難しくなかったですよね?

〈異方性反射〉は、初期設定の値にちょっとだけ手を加える必要がありました。
〈毛〉は、初期設定の値が良くできていますので、色だけ好みにすれば良さそうです。細かいところをいじるのは、もっと詳しくなってからで良いでしょう。


【今回の学び】

・Anisotropic BSDF(異方性反射)

・Hair BSDF(髪)
【次回の学び】

・「その他」の質感を現すシェーダー2

今回も、お楽しみいただけましたでしょうか?
それでは、ぜひまた次回もお越しくださいね!

Happy Blending!!

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

Cyclesマテリアルの基本も第4回を迎えましたが、ゆうべ夢を見ました。
「ちょっと進み過ぎだよ、そんないっぺんに覚えられないから!」
と文句を言われた夢です。

さて、現実はどうでしょうか?
文字数は多いですが、覚えなければならないことが多すぎるようなペースではないと思っているのですが……。

3DCGを学ぶことの面白さを損なわないように、もっと自分で作って試して楽しめるように気を付けようと思った朝です。

マテリアルの学習はとても深くて、かなりの困難も伴います。

基本としてはあまり深入りせずに、楽しんで続けたくなるテーマを打ち出していきますね!


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

【今回の学び】

・透明を表現するシェーダー

今回も、前回と同じスザンヌのシーンから始めましょう。Blenderのファイルは前回と同じものを使用してください。
これです。

こちらはレンダリング画面をプレビュー表示にしたところです
こちらはレンダリング画面をプレビュー表示にしたところです

皆さんそれぞれ、いろいろ加工しているかと思います。こちらからも前回と同じデータをダウンロード出来ますので、どうぞご利用下さい。

・スザンヌをクリックして選択し、右側のプロパティ・パネルでマテリアル設定のタブ(オレンジ球体アイコン)を選択しましょう。

・Surface設定の中のSurface「Mix Shader」となっているところをクリックします。

・シェーダーの一覧が出ます。

25_02

・この中で、「透明」を表現するシェーダーは3種類です。

25_03

上から、

「Glass(=ガラス)」シェーダー

「Refraction(=リフラクション、屈折)」シェーダー
※反射=Reflectionとは違います。2字違いでややこしいですが

「Transparent(=トランスペアレント、透明)」シェーダー
です。

とりあえず透明シェーダーを使えばいいじゃん、と思ってしまいそうですが、そうはいきません。

・それぞれがどんなものか、順に切り替えてみます。

それぞれ特徴がありそうですね。
細かく見ていきましょう。


Glassシェーダー
読んで字のごとく、それを適用したオブジェクトは〈ガラスの塊〉になります。

最初の設定だと〈ガラスの塊〉ですが、これは光の屈折の値を変えることで様々な物質に変更出来ます。

IORというのが屈折率でしたね。 Index of Refractionの略です。
IORというのが屈折率でしたね。
Index of Refractionの略です。

ガラスのほかに、水とプラスチックのレンズを作ってみます。
IORの値を変更するだけですので、簡単です。
同じ透明な物質でも、見え方には思いのほか違いがあるものですね。

25_04b

次はRoughness(=ラフネス、粗さ)の値を少し変更してみます。
これは、反射と屈折の艶を調整することになります。
あまり増やすとマットな質感になりますので、少しだけ(2%)増やして、素材による違いを見てみます。
25_04c

少しだけ透明度が濁った感じになりました。
でも、表面の反射も変わってしまいますので、内部だけが濁った感じにすることは出来ないようです。

せっかくですから、もっと粗さを増してみます。
25_04d

これで、Roughnessの値は0.2、つまり20%です。IORは水ですが、もはや水には見えません……。
しかも、白い粒々のノイズが増えてしまい、ちょっと絵としては厳しいです。まだまだ全然計算の途中という感じですね。

このように、反射・屈折のRoughnessを増やすと、より多くの計算時間を必要とします。もちろん、必要なら時間をかけるしかないのですが、短時間でレンダリング計算を終わらせたい場合には気にした方がいいということは、頭の片隅に置くといいかもしれません。


Refractionシェーダー
一見ガラスと似ています。どこが違うでしょうか?
そう、表面の反射がありません。Glassと並べて違いを見てみます。25_05

左右を入れ替えたものを交互に表示してみると……

真っ黒い部分には変化がありません。Glassで黒い部分が減って見えるのは、明るい反射が重なって見えるからですね。
真っ黒い部分の形には変化がありません。Glassで黒い部分が減って見えるのは、明るい反射が重なって見えるからですね。

透明で、内部に屈折があって、表面に反射がない物質……
現実には存在しませんね。
では、これは何のためにあるのでしょうか?

Blenderでは、Mix Shaderなどを使って、複数のシェーダーを自在に組み合わせられます。2つだけでなく、必要に応じていくつでも、です!
あまりたくさんミックスすると処理(=レンダリング計算)が重くなりますが。

例えば表面を研磨したガラス、表面と内部で色が異なるプラスチック、薄くコーティングされたアクリルなど、反射と屈折の特性を変えることでいろいろな物質の質感を表現することが出来るのです。

試しに、ちょっとしたシェーダーを作ってみました。ごく薄く金属コーティングされたようなガラスのイメージで、ちょっと油膜のような虹色の反射を入れています。

25_06
元から反射が入っているGlassでは、こんな感じのシェーダーを作るのは難しいのです。

 
作り方、知りたいですか?

簡単です。前回学んだことの流用ですから。シェーダーのノード構成は下図の通りです。

25_07

 

え、「習っていないことがある」ですって?
では、手順の動画をお見せしましょう!

 

 

「Add」のメニューからシェーダーを出して並べるところは前回と同じですね。
「Frsnel」のつなぎ方も一緒。
虹色の反射を出すために、Glossyの「Color」に「Noise」の模様(テクスチャー)をつないでいます。

動画だと通り過ぎちゃって真似しにくいという方のために、キャプチャもここに貼っておきますね。
25_09

ノイズの設定値は、好みで良いでしょう。

Scale:値を大きくするほど模様は細かくなります。
Detail:値を大きくすると、模様を作る一つ一つのノイズが詳細になります。ぼやっとして、隣のノイズとの境が曖昧になる感じです。今回は色の違いをはっきり出したかったので、値をゼロにしています。
Distortion:ノイズを歪ませます。ここをいじると色の見え方が変わりますので、好みで変えてみましょう。

とはいっても文字だけではよく分からないと思いますので、それぞれの値を変えたGIFアニメも用意しました。

Scaleの調整
Scaleの調整

 
Detailの調整
Detailの調整

 
Distortionの調整
Distortionの調整

 
それぞれのパラメーターの特徴が何となくつかめましたでしょうか。

ちなみに、ここでちょっとしたコツを。
まだ習っていないテクスチャーの話で恐縮ですが……
GlassにしてもRefractionにしても、レンダリング・プレビュー画面にしておくとシェーダーの設定結果が分かりやすいのですが、いかんせん計算が少々重く、待ち時間があります。
模様の設定を検討したいときには屈折や反射がある必要はありません。
下図のように一時的にシェーダーを変更すると、どんどん試行錯誤出来て便利です。

一見複雑そうに見えますが、ここで使われているのは「Noise」と「Emission」だけです。 だから、瞬時にプレビュー画像が表示されるのです。
一見複雑そうに見えますが、ここで使われているのは「Noise」と「Emission」だけです。
だから、瞬時にプレビュー画像が表示されるのです。

 

図では、Noiseテクスチャー(模様)情報が、「Glossy」と「Emission(=発光)」の2つのシェーダーに繋がっています。でも最後の出口である「Material Output」に繋がっているのは「Emission」だけです。模様の設定値が決まったら、「Mix Shader」の出口をMaterial Outputに繋ぎ直すだけ。

とてもシンプルですね!

■試行錯誤に便利■
シェーダーで計算されるのは、最後の「Material Output」に繋がっているものだけです。プロパティ・パネルのマテリアル設定と異なり、ノードエ
ディターでは一画面にいくらでも作り掛けのシェーダーを置いておけます。

Refractionシェーダーの最後に、Glassシェーダーでは出来なかったことをやってみます。
表面の反射はぴかっとしていて、内部は濁った感じの水です。

床は明るいグレーに変更し、水に少しだけ色も入れています。
床は明るいグレーに変更し、水に少しだけ色も入れています。

シェーダーのノード構成はこのようになっています。
25_10c

イメージに近いものが出来たでしょうか?


Transparentシェーダー
透明シェーダーを切り替えて説明したGIFアニメでは、スザンヌが消えてしまっていました。

Transparentシェーダーは完全に透明で、反射も屈折もありません。だから、何も見えなくなってしまうのです。
こうやって色を付けてやれば、見えるようになります。
ただ、こんな物質は存在しませんが。
25_11

Refractionシェーダーが反射を独立してコントロール出来るのと同様、Transparentシェーダーでは反射と屈折を独立してコントロール出来るので、より細かく質感をコントロール出来るのだとも言えます。
それはそうなのですが、Cyclesの基本シェーダーはかなりリアルでそのまま使ってもいいほどです。
よほど凝ったことをしないと、メリットにならないかもしれません。

実は、それよりも透明であることを活かしてというのが主な使い方だったりします。
シンプルな形状のオブジェクトに透明度を持った画像を模様として貼り付け、一部に穴が開いたような表現をしたい場合に頻繁に使われます。
(これはまだ、先の話ですが)

例えばこんなもの。
Blender上で文字オブジェクトを作るとかなりのポリゴン数・データ量になります。
画像ソフトで必要な画像を用意し、透明シェーダーを画像で切り抜く方法を用いれば、平面オブジェクト2枚を用意するだけで良いのです。
25_12

実際の作り方はまた後日別途となりますが、参考のためにシェーダーのノードを載せておきます。
とてもシンプルでしょう?
25_13

さて、今回は透明な質感を表現するシェーダーを3つ学びました。
覚えれば覚えるほど覚えなければならないことが増加していくのが3DCGの特徴なのですが、まだ、大丈夫ですよね?


【今回の学び】

・透明を表現するシェーダー3種の基本
「Glass(=ガラス)」シェーダー
「Refraction(=リフラクション、屈折)」シェーダー
「Transparent(=トランスペアレント、透明)」シェーダー

【次回の学び】

・その他の質感を現すシェーダー

今回も、お楽しみいただけましたでしょうか?
それでは、ぜひまた次回もお越しくださいね!

Happy Blending!!

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

Cyclesマテリアルの基本も第3回を迎えました。
前回までの2回で学んだマテリアル(シェーダー)はたったの2つだけ!

基本の基本、DiffuseとGlossyシェーダーでしたね。

こんなにスローペースのチュートリアルサイトは他にありませんから、誰ひとりおいてけぼりにしない覚悟で、今日も行きますよ。

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

【今回の学び】

・Cyclesマテリアルを組み合わせる
・Glossyシェーダーとフレネル反射

前々回と前回でDiffuseとGlossyシェーダーをそれぞれ学びました。でもどうやら、この2つだけで実存する物質を表現するのは難しいような感じがします。前回の最後に学んだ〈フレネル反射〉にしても、シェーダーの設定を見る限り、どうやってやったらいいのかさっぱり分かりませんし……。

Glossyシェーダーの基本的な設定画面を見ると、これしかありません。

基本的な設定は実にシンプル
基本的な設定は実にシンプル

見る角度によって反射が変化して見えるためには、何かしら複雑な設定があって然るべきなのに……。

そこで登場するのが、今回初めて学ぶ〈Node Editor(=ノードエディター)〉です。ノードエディターの機能(画面)には、こちらからアクセスします。画面下メニューのいちばん左です。

24_02

切り替えると、何だか変なものが出てきます。この一つ一つの四角のことを〈ノード〉と呼びます。ノードとは、辞書的な意味で言うと、「こぶ」「ふくれ」「節」のことです。

ノードの一つ一つは何か一つだけの機能をプログラミングする小さな塊で、ノード同士が繋がることで、一連の機能や動作を実現するプログラムになります。

このノード同士の繋がりのことを〈ノード・ネットワーク〉と呼びます。別に覚える必要はありませんが……。24_03

 

これをいきなりいじり始めるのも少しハードルが高いので、まずはマテリアルパネル内の設定を変更することでここの表示が追随する様子を見てみます。

 

 

シェーダーを変更したことがプレビュー出来るように、画面を2つに分割してから始めます。

スザンヌを選択し、現在Glossyになっているシェーダーを、Mix Shaderに変更します。「Glossy BSDF」と書かれたところをクリックし、「Mix Shader」を選択するだけです。

「Mix Shader」は呼んで字のごとく、2つ以上のシェーダーを混ぜるためのシェーダーの箱のようなものです。前回学んだ一覧をもう一度載せましょう。分類としては「質感を合成するために用いるもの」にしましたね。

23_06

 

シェーダーをこれに変更すると、今までの設定は失われて空っぽのシェーダーが2つ生成されます。合成するための箱だけになって中には何のシェーダーも入っていないからです。

スザンヌとマテリアルプレビューを見ると、何も質感が設定されていないためいずれも真っ黒です。

24_05

このとき、ノードエディターの表示を見ると……

24_06

先ほどまでGlossy BSDFだったものが、Mix Shaderに替わっています。右側の「Material Output」というものは変化がありません。

Mix Shaderの方を見ると、Shaderという文字が2つあります。これはどうやら、マテリアルパネルと同じものを指しているようですね。表示の方法が変わるだけで、ずいぶん違う感じに見えるものです。Material Outputの中にある「Surface」も、マテリアルパネルと同じもののようです。

では、マテリアルパネルで「None(=何もない)」になっている表示をクリックし、そこに来るべきマテリアルをリストから選びましょう。動画のようにDiffuseを選択し、続いて下側のシェーダー用にGlossyを選択してください。

24_07出来ましたか?

いつの間にか、画面左のノードエディターも同じような表示になっています。Mix Shaderの下にある緑色のに、新しく作成(選択)した2つのシェーダーが繋がりましたね。

どうでしょう、この2つの画面。マテリアルパネルで全部設定すればいいのに、どうしてノードエディターなんてものがあるのでしょうか?

あ、ノードエディターの画面の方が直感的で分かりやすいな。そう思った人はいませんか?

そうなんです。同じ設定を表示していますが、ノードエディターの画面は〈どの設定がどこにあって、何に影響しているのか〉がとても分かりやすく作られています。

右端のMaterial Outputが、まさにシェーダーを設定した結果が集約される部分です。左側にある2つのシェーダーがMix Shaderで合成されて、最終的に右端のアウトプットに出て行く様子が、一目で分かりますね。

一方でマテリアルパネルの表示は同じようなサイズの四角い領域が下へ下へと増えていって、どの四角がどの四角と関係しているか分かりづらく、直感的ではありませんね。

それでは、ノードエディターを用いて前回概論だけ学んだフレネル反射を付け加えてみましょう。これは、2つのシェーダーの〈合成の仕方〉の部分に設定します。Mix Shaderの「Fac」の部分を見てください。

24_08b

FacとはFactor(=因子)という言葉の略だと思いますが、確かではありません。
 (BlenderGuruという有名なチュートリアルサイトのAndrew Price氏がいつもビデオでFactorと言っているので、多分間違ってはいないと思いますが……)

このFacは、初期設定で0.5という値になっています。これは、2つのシェーダーを半分ずつ合成しますよ、という意味です。

Glossyシェーダーの方のRoughness(=粗さ)を0に設定し、レンダリング・プレビューを見てみます。これが現在の質感です。
24_08
まさに2つのシェーダーが50:50で合成され、プラスチックのような質感になりました。でも、プラスチックでもありません。プラスチックはこんな風に、どこもかしこもツヤツヤではありませんものね。

ノードエディターで、反射にフレネル値を加えます。やり方は簡単。下のGIFどおりにやれば、すぐ出来ます。

ノード・エディターで編集すると、右側のマテリアル・パネルの表示も自動的に変化します。
ノードエディターで編集すると、右側のマテリアル・パネルの表示も自動的に変化します。

 

手順です。

・ノードエディター画面の下にあるメニューから、「Add」をクリック

・表示されたメニューの一覧から「Input」をクリックし、続いて「Fresnel」をクリック

・「Fresnel」ノードが生成されます。

・生成直後はそのまま移動出来る状態になっているので、マウスを動かしてMix Shaderの上あたりに持っていきます。もちろん、動かすときはクリックせず、確定のときにクリックします。
もし途中で移動をやめてしまったら、焦らずGキーを押して移動モードに入ります。
もしももしも選択も解除されてしまっていたら、焦らずにFresnelノードをクリックして選択(オレンジ枠が付く)、続いてGキーを押して移動させます。

・Fresnelノードの右側に「Fac」と書かれたがあります。そのをプレスして右下へドラッグします。紐のようなものが伸びます。

・紐の右端をMix ShaderのFacに繋ぎます。の上にドラッグすると繋ぎ口に吸着され、オレンジ色だった紐がグレーになります。

・マウスボタンを放すと、2つのノードが繋がります。

スザンヌがこんな質感になりましたか?
スザンヌがこんな質感になりましたか?

余分な艶が抑えられた自然な感じの質感になりました。でも、これはいったい何の物質の質感なのでしょうか?

ここで、Fresnelノードの中にある「IOR」の値に注目してみます。

24_11

IORとは、「Index of Refraction(=屈折率)」の略です。光が物体に当たって屈折する割合のことを示します(難しい物理の式のことは僕も分かりません。そんなようなもの、という程度の理解で問題ありません)。

これは、初期状態で1.45という値になっています。この値の屈折率を持つ物体は何か調べてみると、次のようなものがあります(1.45ジャストでないものも含みます)。

・マーガリン、ショートニング、望遠鏡・眼鏡・カメラ用レンズなどなど

上図のスザンヌは、上述のどれにも見えませんよね。これはどうしてかと言うと、上述の物質はいずれも光を通す物質だからです。先ほど作ったシェーダーはあくまでも光が透過せず、表面で光を反射するものです。

この質感をマーガリンに見えるように編集するのは少々難易度が高いので、普通のプラスチックに見えるようにIORの値を変更してみます。

その前に、質感の違いを分かりやすくするためにシーンを調整しました。スザンヌのDiffuseシェーダー色を少し暗くし、左右に追加の光源を置いています。シーン内に置いたスザンヌも一体だけにしました。現在の屈折率だと、こんな感じに見えます。

24_12

この状態に設定されたシーンは、こちらからダウンロード出来ます。

準備は出来ましたか?

では、屈折率(IOR)を変更して、色々なプラスチックの質感を作ってみましょう。

まずはポリプロピレンから。IORは1.48です。

CDケース、スプレーのキャップなどに使われているプラスチック
CDケース、スプレーのキャップなどに使われているプラスチック

 

次はアクリル樹脂。屈折率は1.49~1.53となっていましたので、差が分かりやすいよう、1.53を使用しました。

24_14_153
とはいえ、違いはほとんど分かりませんね。

 

次は、エポキシ樹脂です。屈折率は1.55~1.61ですので、1.61を使用しましょう。

24_15_161

続いてフェノール樹脂(ベークライト)、屈折率は1.58~1.66。1.66にします。

24_16_166

さて、4種類のプラスチックを作成してみましたが、違いが分かりますか? え、全部同じに見えるって?

では、4つをGIFアニメで切り替えてみましょう。

0.2秒で1コマのアニメーションです。素早く切り替えることで、光沢の変化が見られます。
0.2秒で1コマのアニメーションです。素早く切り替えることで、光沢の変化が見られます。

 

他にどんなプラスチックがあるかな、と思い一覧を見ていますと、屈折率が全く同じものがたくさんありました。ポリエチレン、ポリアミド樹脂、ナイロンはいずれも1.53で、アクリル樹脂と同じ屈折率です。

既に述べたように、今回変えている値は表面の反射に対する屈折率だけです。実際の物体の質感を決定するのは、これ以外に〈表面の滑らかさ・粗さ〉〈光を透過する度合い〉〈透明度と内部の粗さ〉など様々です。

これらのうち、基礎編で簡単に違いを表現出来るのが、〈表面の滑らかさ・粗さ〉です。例えば、ポリエチレンの塊を想定してみます。実際にはかなり光を透過する物質なので、このような見え方はしないのですが……。

GlossyシェーダーのRoughnessを0.1(つまり10%ぼかす)にしました。

24_18

24_19
GlossyシェーダーのRoughnessが0.1

表面の感じは、何となくそれっぽくなったのではないでしょうか。

ちなみに、物体の中を光が透過するように設定(注意:「光が透過すること」と「透明であること」は異なります)すると、こんな感じに見えます。屈折率、Roughnessとも同じですが、ベースのシェーダーとしてDiffuseシェーダーでなく「Subsurface Scattering」という物質内部で光を拡散させるシェーダーを用いています。これはいずれちゃんと学びますので、今回は参考までに。

スーパーのレジ袋
これだと、本当にスーパーのレジ袋を固体の塊にしたような質感に見えませんか!
このようにきれいなレンダリング画像を得るためには、かなりの計算時間が必要です。入門編としてはそこまでの時間を掛けられない(=待てない)ですし、「えー、こんなに大変なの!」って、CGが嫌になってしまうのを避ける狙いもあって、このような質感は後回しにしようかな、と(笑

 

プラスチックっぽい質感の作り方(のごく基本的なところ)が何となく分かったところで、金属の質感をいくつか作成してみます。

まずは、銀です。

24_21
環境が真っ暗なので、頭の上が真っ黒に反射しています。右側に青っぽい部分があるのは、薄青色の光源を置いているからです。
屈折率は0.17、Roughnessを0.03にしてみました
屈折率は0.17、Roughnessを0.03にしてみました

あれ、と思いましたか?

金属の質感なら、Glossyシェーダーだけでも良いんじゃないか、って。

比べてみましょう。

24_23_glossy

確かにあまり違いは感じられません。ノードの構成は下記のようになるので、とてもシンプルです。

24_24

でも……と思いましたよね?

そうです。これで〈金属っぽい質感〉は作れますが、材質による質感の違いは〈表面が粗いか滑らかか〉しか表現出来ません。

もう一度、Mix Shaderによる金属表現に戻り、プラチナの屈折率である2.95を設定してみます。

あれれ?

プラチナのはずが……
プラチナのはずが……

これじゃあ全然プラチナじゃありませんよね。実は、金属質感のシェーダーを作るとき、基本色(=Diffuseシェーダーの色)を白っぽい色にしてはいけません。反射が入らない部分がその色になってしまうので、リアルな見え方から大きく外れてしまうのです。

では、どうするのか。

物体の色に影響を与えない色ということで、黒にするのが正解です。

24_26_platinum2

今度は随分黒くなってしまいました。グレーにするべきだったのでしょうか?

いいえ、金属ですから、周囲の色がばっちり映り込むのが当たり前。このシーンは環境が真っ黒なので、黒くなってしまうのです。暗い部屋にプラチナの指輪を落としてしまったら、闇に馴染んで見えづらいですよね。

環境のパネルに移り、背景色を変更しましょう。

背景色を真っ白にします

24_28_platinum3 24_29

どうですか?
だいたい想像したような質感になったのではないでしょうか。

ちなみに、銀の場合は屈折率の関係で基本色の影響はあまり受けないようです。背景色を白と黒に切り替えて比べてみました。

部分的にグレーと白が切り替わる部分があります。基本色の影響が出ているのは、反射が極めて弱いこの部分だけということになります。
部分的にグレーと白が切り替わる部分があります。基本色の影響が出ているのは、反射が極めて弱いこの部分(カメラに対してほぼ真正面を向いているあたり)だけです。

 

24_32
このGIFアニメはリピート設定にしていません。再生するにはクリックしてください

最後に、屈折率の値を徐々に変更したGIFアニメを作ってみました。基本色をピンクにして、影響が分かりやすいようにしています。

屈折率が1以上の場合、基本色と反射色□との関係はゆるやかなグラデーションを持った変化になっています。

屈折率が1未満の場合、両者の関係はかなり急激な変化を持っていて、2つの色の境界がくっきり見えてしまいます。これは表現上少々好ましくない結果を生みますが、実は金属の基本色は反射色とかなり似た色になっているものです。

例えば白いライトを金塊に反射させても光は金色になり、真っ白にはなりません。そのため、基本色と反射色の境目が多少くっきり見えても大きな問題になることは少ないのですね。

参考までに、金のシェーダー設定を載せておきます。

ただ、Glossyシェーダー単体でもほぼ同じような見栄えの質感になります。現実の世界では基本色と反射色がくっきり分かれてしまうようなことはありませんし、金属の質感を簡易的に作りたいときは、Glossyだけでも良いのかもしれません。

24_33

ちょっと分かるような分からないような話になってしまって申し訳ないのですが、今回の授業はこれにて終了とします。

最後に注意事項です。

こちらで掲載されたシェーダーの設定は、あくまでも入門用として簡易的に作成したものです。本当にリアルな質感を表現するためには、こちらに掲載した以外にも多くの設定をしなければなりません。
あくまでも、入門編の質感設定として覚えるようにしてください。

もっと正確なシェーダーを作成するためには、物理の知識も必要になります。でも、ご安心下さい。僕自身、そんな知識はこれっぽっちもありませんので。

そういうときは、アドオンなどで先人の知恵を拝借するのがいちばんです。

しかしながら、この〈Blender-99〉はBlenderの標準機能を用いて3DCG制作の楽しさに触れながら、基礎的なテクニックや知識を学ぶことが目的です。そのため、無料・有料・公式・非公式合わせて数限りなく存在する〈add on〉(=アドオン、機能を追加するソフト)にはあまり触れないことにしています。もちろん、Cyclesのような標準アドオンはきっちり学びますし、必要に応じて取り入れるようにしますが。

とはいえ、最後まで学習すればいろいろな作品を一人で作れるようになることは請け合いますので、そこはご心配なく!

少々長くてややこしい話もありましたが、しっかり頭に入りましたでしょうか?
繰り返し読んでも試しても分からないことがあれば、どうぞお気軽にコメントを残してくださいね。
ツイッターなどで質問してくださっても構いません(すぐにお答え出来るかどうかは分かりませんが)


 

屈折率引用サイト:『屈折率データ』

 

 


 

次回は、〈透明〉を表現するシェーダーについて学びます。

【今回の学び】

・様々なCyclesマテリアル
・Glossyシェーダーとフレネル反射
【次回の学び】

・透明を表現するシェーダー

今回も、お楽しみいただけましたでしょうか?
それでは、ぜひまた次回もお越しくださいね!

Happy Blending!!

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

こんばんは、それともお早うございますでしょうか。
GWももう残すところ週末だけとなりました。

最後の2日は、Blenderで過ごしましょうね!
では、開始。

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

【今回の学び】

・様々なCyclesマテリアル
・Glossyシェーダーとフレネル反射

前回の最後の状態になっているシーン。ダウンロードはこちらから。
前回の最後の状態になっているシーン。ダウンロードはこちらから。

前回シーンを使いたい方は、こちらからどうぞ

マテリアルを変更するために、まずはどんなものがあるか見てみましょう。

マテリアルの表示されたパネルで、薄緑色の球で表示されたプレビューがあります。その下に、「Surface:Diffuse BSDF」とあります。この「Diffuse BSDF」と書かれた部分をクリックします。

ずらずらっと、マテリアルのリストが出ます。
ずらずらっと、マテリアルのリストが出ます。

 

リストをアップで見ます。
一番上に「Shader」、「Link」と書かれています。左の「Shader(シェーダー)」が、マテリアルそのもの、右の「Link」は、設定したマテリアルを外すためのものです。

マテリアルそのものなら、どうしてShaderなんて言うのでしょうね?
それを説明する前に、リストをじっくり見てみましょう。

23_03

たくさんありますが、これが全て別々の物質の質感を現すためのマテリアルというわけではありません。

それは、Shaderが現実世界の「マテリアル(=物質)」ではなく、あくまでもCGのバーチャルな世界で〈それを表現するためのプログラム〉だからです。Shadeというのは陰のこと。Shaderを直訳すると、〈陰影を付ける役割を持つもの〉というような意味になります。
物質の質感を設定するためのプログラムをShaderと呼ぶことが、なんとなく飲みこめましたでしょうか?

さらに、Shaderは物質そのものではなく、プログラムとしての役割ですから、それをオブジェクトに割り当てるだけでは何も起こらないものもあります。ちょっと分かりにくいので、分類してみましょう。

23_06

 

オレンジに区分した〈特定の質感を表現するもの〉から始めますが、アルファベット順でなく、使用頻度が高めのものからにしましょう。難しめのものは後回しで、ね!

前回のDiffuse BSDFと同じくらい重要で基本的なシェーダーがGlossy BSDFです。実はこの2つを使いこなせるようになるだけで、作りたい質感の八割方は出来てしまうんではないかというくらい大事なものです。

奥のスザンヌをGlossyにしてみました。右手前のものもリンクしているので、同じになっています。Glossyとは、マテリアル・パネルのプレビュー球を見ると分かるとおり、金属的な光沢を持つシェーダーです。プレビューではシルバーに見えますが、スザンヌは白っぽいです。これ、どうしてか分かりますか?

はい、正解。そうですね。

このシーンを覆う環境(スザンヌの上)はまっ白い世界ですから、それがスザンヌの上半分に映っています。23_03b
プレビューでは、周囲が薄いグレーと濃いグレーのチェッカー模様になっていますので、球体にもそれが映り、全体としてシルバーに見えるのです。マテリアルの「Color」としては、白が設定されています。

色をいじってみましょう。

23_08

ここで一つ注目したいのは、耳の前、陰部分の色です。紺色の時は周囲と同じような暗い陰になっていますが、他の明るめの色の場合は、そこだけ急に明るくなっています。これは、耳に当たった光が側頭部の陰の部分に反射しているからです。このように、反射の強い物質は、光が当たっていなくても明るいものが映っていれば明るく見えるのです。

これは、現実の世界でも同じです。身の回りにある反射が強く艶のあるもの、例えば鏡です。暗い部屋にあっても、手前に明るい部屋があれば、その明るい部屋が映っている部分は明るく見えますよね。まあ、当然のことですが!

■反射と間接光との違い■

ここで言う光の反射とは、光によって照らされた明るいものが、陰の部分にも映り込んで見える。ということです。間接光によって暗い側が照らされているのとは異なり、映ったものの形まである程度はっきり見えます。鏡のような反射ですから。
いっぽう間接光によって明るくなる場合は、照らされた物体の表面で光が乱反射して照り返すので、ここまでくっきりと形に現れません。

また、艶のある物体に当たった光は集光効果を起こし、実際に光を発生させます。鏡で太陽光を反射させるように実際の光エネルギーを伝達し、照らされた側を明るくします。
でもこれは大変高度な計算を繰り返すため、レンダリング計算の負荷が異様に増大します。Cyclesはこの集光効果コースティクスと言います)に対応してはいますが、あまりにもレンダリング時間が掛かる(何百時間も要したりします)ため実用的ではありません。コースティクスがオンになっていると、いつまでも白い粒々が画面から消えなかったりしますので、現在までのバージョンではあまり使用するべきではないと思います。
このことについては、また別途学びましょう。

DiffuseとGlossyで陰部分の見え方がどう違うか、比較してみます。

光源の影響を分かりやすくするため、空(環境)を真っ黒にしています。太陽光だけの光源で、どう見えるか比べてみましょう。
光源の影響を分かりやすくするため、空(環境)を真っ黒にしています。太陽光だけの光源で、どう見えるか比べてみましょう。

Glossyでは、明らかに耳の形がこめかみに映っているのが分かると思います。Diffuseでは、こめかみのあたりがぼんやり明るくなる程度です。

さて、コラムでの説明で「鏡」という言葉を使いましたが、ここでのGlossyの見え方は鏡とはかなり違います。色設定用の四角い枠の下にある「Roughness(=ラフネス、粗さ)」という値を見ると、0.2に設定されていますね。

23_10

 

この値を変更してみましょう!
まずは、減らします。

質感がかなり劇的に変化するので、0.05(つまり5%)ずつ値を変えました。
質感がかなり劇的に変化するので、0.05(つまり5%)ずつ値を変えました。艶が増すと、今までには見えなかった左にいるスザンヌの青い色まで反射の中に見えてきます。
マテリアルのプレビュー球を見ると、球体が部屋の中に置かれていることも分かりますね。

 

Roughness値をゼロにすると、完全な鏡になりました。空が真っ黒なこともよく分かります。スザンヌの色を構成するのは、
「床の緑」「空の黒」「太陽光の白」

この3つしか要素がないことが分かります。〈完全な鏡〉とは、こういうことですよね。自分自身の色は存在しません。
(実際の鏡は完全な100%の反射をする物質ではありませんので、ガラスのほのかな緑色があったり、映るものが若干暗くなったりします)

完全に反射し、しかも反射がぼけている質感のスザンヌを見ると、〈周囲の色と光の色がブレンドされてオブジェクトの色になる〉ことが分かりますね。

次に、Roughnessの値を増やします。

こちらは10%刻みです。
こちらは10%刻みです。

 

いかがですか?
Roughness(反射の粗さ)を変えると、質感が大きく変わりますね!
反射のちょっとした違いで、粘土のように見えたりベルベッドの布地のように見えたりもします。

では、これだけでいろいろな質感を表現することが出来るのでしょうか?

いいえ、残念ながらそれは違います。
Roughnessの値を変えて表現出来る質感は、あくまでもどこから見ても光を同じように反射する質感だけです。つまり、金属的な反射です。さきほど「ベルベッドのような」と書きましたが、〈何となくそんな感じに見える〉だけで、実際のベルベッドの質感とは似て非なるものだったりします。
Roughnessが1の場合の質感は、徹底的に艶がなくなるように粗い紙やすりで磨き込まれた金属のような質感です。

え? そんな物体はない、ですって?

そうですね。ちょっと、そんな質感を持つ物体はなさそうです。あくまでもこれはCGの世界だから、嘘なのでしょうか?

いいえ、そうではないのです。
これはとても基本的な質感なので、これで良いのです。3DCGの世界では、世の中の物体の様々な質感を表現するために、基本的な質感(例えばDiffuseとGlossy)同士を組み合わせて行なうことが多くなります。それをどのように組み合わせるかが、質感の違いとして現れるのです。現実に存在する物質と同じ見え方にするために、物理的な様々な設定値を調整して再現するのです。
さて、ちょっと難しくなりますが、安心して付いて来てくださいね。

まず、反射する物質と反射しない物質の違いを考えてみましょう。

何が違いますか?

例えば……

・反射する物質
ある物質の近くに何か別のものを置いたとき、映り込みます。

・反射しない物質
何か別のものを近くに置いても映りません。

本当にそうでしょうか?

いくつか写真を撮ってみましたので、見てみます。

 

【写真1】テーブル上のイチゴジャム瓶

1. 真上からテーブルだけを見ると、反射の程度は少なく、撮影したカメラの形もうすぼんやりとしかテーブルに反射していません。

23_13a

 

2.斜め上から。瓶の下には影が落ちています。

23_13b

 

3.もう少し寄って、カメラ位置を低くします。窓外の光がテーブルに反射して光っています。

23_13c

 

4.もっと視線を低くします。瓶の影が、いいえ、影ではなく映り込みがテーブルの表面に現れました。

23_13d

 

5.テーブルの高さギリギリまでカメラの位置を下げます。窓際の植物が映り込んでいます。瓶の映り込みも、よりはっきりしてきました。これが〈影〉でないことは明らかです。

23_13e

 

6.レンズがほぼ天板の高さになるように、位置を下げました。天板はもはやツルツルの物体となり、植物やカーテンを鏡のように反射しています。ピントが合っていないのにも関わらず、瓶の映りもはっきりしています。特に接地面の瓶底の形が、上下対称に映っていますね。

23_13f

 

どうしてこんな風に見えるのでしょう?

世の中のほとんどの物質は、ほぼ例外なく光を反射します。表面が凸凹でひどい乱反射を起こすもの以外は、その物体を真横に近い角度から見れば必ず鏡のような反射(=「鏡面反射」といいます)をするのです。

え、信じられない?
テーブルは元々艶のある質感だから、ですか?

では、表面がゴム引きになっていてマットな質感のKindle端末を置いてみます。

 

【写真2】Kindleの上のイチゴジャム瓶

1.いかにもマットな感じの質感です。

23_14a

2.視線を下げてもそのマットさは変わりません。

23_14b

3.かなり視線を下げましたが、やっぱり映りません。マットな質感、だからでしょうか?23_14c

4.目一杯まで下がると、おお、Kindleの表面に艶が出てきました。23_14d

5.レンズの中心が断面に接するあたりまで下がります。ピントがぼけてしまいましたが、いちばん奥側では鏡のようになっています。レースのカーテンの柄まで映っているのが見えますでしょうか。23_14e

 

え、それでもまだ信じられませんか?
では、普通の段ボール箱で同じことをやってみます。段ボールの表面は誰でも知っているとおり、さらっとしていて反射なんかしませんよね。

【写真2】Kindleの上のイチゴジャム瓶

1.見慣れた段ボールの質感です。
23_15a

2.視線を下げても、見え方は同じです。
23_15b

3.ぐっと視線を下げると、ほら、反射が現れました。
23_15c

4.ぎりぎりまでレンズ位置を下げました。鏡とまではいきませんが、くっきりと鏡面反射が現れています。
23_15d

 

そう、思い当たる節がありますよね。真夏のアスファルトに起こる〈かげろう〉や、砂漠で見られる〈蜃気楼〉と、同じ現象です。

これを、物理用語で〈フレネル反射〉と言います。
Fresnelと書きますが、フレシュネルやフレズネルではないので、覚えておきましょうね。
僕自身、実を言うと難しい理屈は分からないですし、フレネルの式の内容もさっぱり理解出来ません。

ただ、これだけは覚えておくと便利です。

■フレネル反射■
物体は、それを観察する角度によって鏡面反射の強度と粗さが変化する。
その変化の度合いは物質によって固有であり、人間の目はその違いを感じることによって質感を判断する。
一般的に、金属以外の物質は、観察角度が90度に近づけば鏡面反射は弱まる。
観察角度が0度に近づけば鏡面反射が強まり、粗さが弱まる。完全な0度では鏡に近似の状態となる。
(完全な0度では物体が見えないので、完全な鏡になった状態は見えませんが)
ただし、金属はその限りではない。金属には様々な反射の性質があるが、観察角度に関わらず鏡面反射の強いものが多い。

23_16

Blenderでは、このフレネル反射の制御に物体の〈屈折率〉を使えます。上の図では、黒い球体に天然ゴムの屈折率を適用しています。周囲を取り巻く環境は、雲のある空です。真横から見た概念図と立体の球が混在しているので、0度と90度の違いが分かりづらいかもしれませんが、球体の周囲ぐるりが0度に近い見え方です。雲などが映っているのが見えますでしょうか。真ん中あたりが90度です。あまり鏡面反射が入っていないことが分かります。

もう少し分かりやすいように背景付きでアップにしてみたのが次の図です。

23_17
上半分のぐるりと周囲に、くっきりした空の映り込みが見えます。

様々な物質の屈折率については、WEBで「フレネル反射 一覧表」などのワードを用いて検索してみてください(今回の授業だけでは、それをどうしたら良いのか分からないのですが……)。


さて、Glossyシェーダーの簡単な説明をするだけで、予定の文字数を大幅にオーバーしてしまいましたので、今回はこれで終了とします。

次回は、DiffuseシェーダーとGlossyシェーダーを組み合わせる方法を学びます。ちょっと難しいことも学びますが、大丈夫です。じっくりゆっくり、きっちり理解出来るように進めますので、心配せずに付いて来てくださいね!(も、もちろん、まだまだ基本の基の域を出ませんのでご安心を!)

【今回の学び】

・様々なCyclesマテリアル
・Glossyシェーダーとフレネル反射
【次回の学び】

・Cyclesマテリアルを組み合わせる
・Glossyシェーダーとフレネル反射

今回も、お楽しみいただけましたでしょうか?
それでは、ぜひまた次回もお越しくださいね!

Happy Blending!!