今回はBlenderでBumpを使った時とNomarl mapを使った時の質感の違いを比較したものをご紹介していきたいと思います。
それについてツイートしたものが下記になります。
同じように見えて使ってみたら大きく違うNormal mapとbump
— 智G (@tomohikog12) 2019年10月7日
今までプリンシプルBSDFには基本的にNormal mapしかつないでいなかったけど、bumpの可能性もある。 pic.twitter.com/lf06hgFMVi
BumpとNormal mapの違い
まず役割的にBump(バンプ)もNormal(ノーマル) mapも同じように扱うため、同じようなものだと思ってしまいがちですが、実は大きく違いがあります。
下記の記事が分かりやすく説明してくれています。
自分が理解した内容として
Bump(バンプマップ)・・・モデルの表面に凹凸を疑似的に作る2値(白黒)画像。
Normal map(ノーマルマップ)・・・モデルの法線を色で示して、ライティングに反映する画像
と言えると思います。
上記の記事ではジオメトリという言葉がよく出てきますが、モデルと思っても問題ないと思います。
ジオメトリについて正確な情報は下記の記事
言葉だけではよくわかりずらいと思いますので、実際に使ってみた結果を比較しながらご紹介していきたいと思います。
バンプとノーマルの比較
比較方法
比較方法として、上図のようにプリンシプルBSDFのノーマルにリンクさせるノードをノーマルマップにするかバンプにするかで分けています。
上図では例としてノイズテクスチャをリンクさせていますが、ここのテクスチャノードを変更して、どのようなテクスチャノードがバンプとノーマルで変わるのかを比較していきます。
記事でご紹介した比較画像は全て同じ数値のテクスチャノードをリンクさせていますので、ご注意ください。
比較その1:ノイズテクスチャ
まずはノイズテクスチャを利用したときの違いについてご紹介していきたいと思います。
上記の画像の通りで、上がバンプ、下がノーマルのベクトルを利用したときになります。
パンプは非常に綺麗に凹凸が出ていますが、ノーマルがあまり綺麗に出ていません。これはリンクさせているノイズテクスチャのカラーが凹凸を示したものではないことが考えられます。
比較その2:マスグレイブテクスチャ
次はマスグレイブテクスチャを比較していきたいと思います。
こちらも上図の上側がバンプ、下側がノーマルとなっています。前節と同様バンプは綺麗に出ていますが、ノーマルは凹凸には見えません。
これは利用したマスグレイブテクスチャが2値画像が出力されているため、ノーマルでは凹凸を表現できないようになっています。
比較その3:画像テクスチャ
次に画像テクスチャを利用した場合の違いについてご紹介します。本記事で利用する画像は前回の記事と同じとなっています。
前回の記事は下記になります。
Blender テクスチャを利用したリアルなマテリアルの作り方【PBR】 - TomoGのごちゃまぜ倉庫
上図の上側がバンプ、下側がノーマルとなっています。
テクスチャを利用した比較は上図のようにBumpとNormal mapどちらかをつなげて行っています。
こちらはバンプもノーマルも非常に綺麗に凹凸が出ていると思います。バンプもノーマルも対応した画像を利用したため、凹凸が綺麗に出たと考えられます。
比較結果
今回比較した結果、感じたことをまとめていきたいと思います。
まず画像テクスチャを使わなかった比較1と比較2の場合、ライティング関係なく凹凸を表現したい場合はバンプ画像になります。
例)滑りにくくしている持ち手部分など
しかし、ライティングが関係しているものがほとんどだと思うため、基本的にNormal mapを利用した方がいいと思います。ただ平面に使う場合はあまりオススメできません。
具体的にNormal mapを利用したものの例として下記の記事があります。
Blender 洞窟の作り方 その1 - TomoGのごちゃまぜ倉庫
次に画像テクスチャを利用した比較3ですが、基本的にはNormal mapのみでも問題ないと思います。しかし、表面の質感を表現しうようと思った時Bump画像が必要になるため、Bump画像を用意しておくべきだと思います。
おまけ
下記の記事でご紹介したNormal mapとBumpを合成したとき、どうなっているかご紹介したいと思います。
Blender テクスチャを利用したリアルなマテリアルの作り方【PBR】 - TomoGのごちゃまぜ倉庫
Normal mapの時のみより細かな凹凸が再現できていると思います。この凹凸はライティングに関係がないほど細かな凹凸だという表現ですが、このような細かな表現を積み重ねが重要だと思いますので、是非試してみてください。
本記事の内容は以上となります。
Normal mapもBumpも非常に重要な要素なので、是非活用していってください。
本記事は以上です。お疲れさまでした。