2014年10月22日
2015の新機能を調べてみた その48 3dsmax 2015
前回に引き続きピクセルシェーダーについて調べてみたい。前回は「Before Loop」ソケットに接続されているノードの中から「Camera Vector」ノードを調べてみた。今回も「Before Loop」ソケットに繋がっている残りのグラフを調べてみたい。
「Opacity」ソケットも「Before Loop」ソケットに繋がっているもののひとつだ。これは不透明度を設定するもので、デフォルト値が1.0(不透明)で「Saturate」ノードで入力値が0〜1の範囲でトリミングされてその範囲に値が収まるようになっている。
「Reflection」ノードも「Diffuse Color」「Reflection」「Reflection Intensity」ソケットから入力されて「Albedo Color」ソケットから「Before Loop」ソケットに繋がっている。
開くとこうなっている。
左の「Reflection」ソケットから入力される値はデフォルト値が黒色で、「Reflection Intensity」ソケットから入力されるデフォルト値が0の値と掛け合わされて右の「Reflection」ソケットから出力されている。
また、出力の直前に「DesaturateColor」ノードでグレースケール化する工程が入った「Desaturated Reflection」ソケットも用意されている。
「Reflection Intensity」はさらに「Saturate」ノードで0〜1の値にクリッピングされてからその値を1から引いて、その値と左の「Albedo Color」ソケットからの値をかけて、右の「Albedo Color」ソケットから出力している。
「Albedo Color」ソケットは「Diffuse Color」ソケットから来ていて、「Reflection Intensity」が強まるのと反比例して乱反射の色の値を下げようっていうのが狙いのようだ。
「Albedo Color」のデフォルト値は黒色だ。
これらをコード化すると以下のようになる。
「Reflection」の部分は「After Loop」に繋がっているのでループ後の部分でコード化されている。
以上が「Before Loop」ソケットに繋がっているグラフだ。
それではまた次回。