CGBoxの一部の記事にはアフィリエイト広告が含まれております。
【Blender3.0】アドオンでお手軽!リアルなPBRマテリアル
こんにちは!
皆さんは、レンダリングをどのように行っているでしょうか?
最近のリアルな3DCGでは、物理ベースレンダリングが用いられることが多いです。
今回は、聞いたことがあるけどよくわからない物理ベースレンダリングについて解説します!
PBR(物理ベースレンダリング)とは
PBR(物理ベースレンダリング)では、現実世界での光の挙動を再現することで、物理的に正しい物体の見え方を再現することができます。
「Maya」「Arnold」などのプリレンダだけでなく、「Unity」や「Unreal Engine」といったリアルタイムレンダリングでも多く用いられています。
PBRには、以下のような特徴があります。
- 物理的、光学的に正確である
- 物理学に基づいているため、パラメータが直感的
- 多くのアプリケーションでサポートされており、パラメータが同じであれば同じ結果が得られる
また、PBRでは、以下のようなパラメータを使われることが多いです。
- アルベド(Albedo):物体の色を決める。Base Colorとも呼ばれる。(R,G,B)
- メタリック(Metallic):物体の金属っぽさを決める。
- ラフネス(Roughness):物体の質感の粗さを決める。(ラフネスが低いほど、つるつるした表面になる)
PBRで使われるテクスチャ
3Dモデルの色の変化や、細かい凹凸を再現するためには、テクスチャが必須です!
PBRマテリアルでは、以下の4つのテクスチャがよく用いられています。
- ディフューズマップ(ベースカラー):物体の色(アルベド)を表現する。
- ノーマル(法線)マップ:物体の表面の凹凸を疑似的に表現する。
- ラフネスマップ:物体の表面の粗さ(ラフネス)を表現する。同一マテリアル内で表面の粗さに変化がある場合に用いられる。
- メタルネスマップ:物体のメタリックを表現する。
これらのテクスチャの作成には、Substance DesignerやSubstance Painterがよく使われます!
プロシージャルで直感的にPBR用テクスチャを作ることが出来ます。
また、コミュニティーで様々なマテリアルが公開されており、簡単に導入が可能です!
ノードを用いてPBRを実践!
それでは、BlenderでPBRを行ってみましょう!
レンダリングエンジンEEVEE、CyclesともにPBRが可能です。
デフォルトのマテリアルで用いられている「プリンシプルBSDF」はPBRに基づいたシェーダーです。
アルベドやラフネスなど、先ほど紹介したパラメータはこちらに対応しています。
プリンシプルBSDFの各パラメータについては以下の記事に詳しく掲載されています!
基本的には、プリンシプルBSDFとテクスチャのみであらゆるPBRマテリアルが再現可能ですが、ガラスやボリュームなど、一部のマテリアルは個別のノードが用意されています!
【PBR Materials】アドオンで簡単PBR
「PBR Material」は、様々なPBRマテリアルのテンプレートが使えるBlenderアドオンです!
あらかじめ用意されたテンプレートを使用することで、簡単にPBRマテリアルを使用することができます!
アドオンの導入
アドオンはこちらのサイトで配布されています!
こちらの[DOWNLOAD]からアドオンをダウンロードします。
ダウンロードしたzipファイルを、解凍せずにインストールします。
アドオンのインストール方法がわからない方はこちらの記事を参照してください!
PBRマテリアルの追加
オブジェクトを追加し、マテリアルを新規作成します。
アドオンがうまくインストールされていれば、〔PBR Materials〕というタブが追加されているはずです。
追加されていない場合は、アドオンのインストール状況を再確認しましょう。
赤枠のように、〔PBR Materials〕にチェックを入れるとその下の項目が有効化されます。
次に、金属マテリアルを使用したいときは〔Metal〕、それ以外のマテリアルを使用したいときは〔Dielectric〕を選択した状態で、黄色枠のオブジェクトをクリックします。
すると、以下のように複数のマテリアルテンプレ―トが表示されるので、好きなマテリアルを選択します!
マテリアルを選択すると、選択した材質がオブジェクトに割り当てられます。
非常に簡単にマテリアルを作成することが出来ました!
これと同時にマテリアルノードの内容も更新されます。
ここに、テクスチャやノーマルマップを追加することも可能です。
HDRI画像を追加して、EEVEEでレンダリングを行うと、以下のような画像が作れます。
背景が映り込み、違和感のない色使いになっていることがわかります!
そのほかのPBRマテリアル用アドオン
「PBR Material」は無料で使える分、数も少なく品質もそこそこです。
以下では有料で高品質なマテリアルを使えるアドオンを紹介していきます。
Extreme Pbr Nexus – マテリアルの最強ライブラリ
ライブラリ内にあるマテリアルを好きなように使用することができます。
マテリアルの数は200GBで”約2000種類”もあるようです。
水や草/苔っぽいもの、コンクリートやレンガ、車の塗装など様々な種類があります。
詳細は以下の記事を参考にしてみてください。
PBRテクスチャを出力 アドオン【PBRTextureBakery】
できるだけ軽量なシーンを作りたい場合は、一度レンダリングしたテクスチャをベイクすることが有効です。
テクスチャのベイクを行う方法はいくつかありますが、今回はアドオン〔PBRTextureBakery〕を用いた方法について紹介します。
その他の方法については、こちらの記事が参考になります!
アドオンの導入
アドオンはこちらで入手できます。
導入の準備
このアドオンを正しく使用するためには、いくつかあらかじめ行っておく作業があります。
環境によっては不要かもしれませんが、うまく動作しなかった場合は参考にしてください!
テクスチャをベイクしたいマテリアルの〔マテリアル出力〕ノードの〔名前〕を〔Material Output〕に変更する
ノードの〔名前〕は〔N〕キーで表示される〔ノード〕タブから変更が可能です。
ファイルを保存する
未保存のファイルでは、正しく動作しない場合がありました。
ファイルの内容を書き換える
自分が試した場合(Blender3.0)にはこの作業を行わなくても動作しましたが、BlenderのバージョンによってはPythonファイルの内容を書き換える必要があります。
詳しくは、こちらの記事が参考になります!
テクスチャのベイク
アドオンが正しく導入されていると、マテリアルタブに以下の〔PBR Textures Bakery〕タブが表示されます。
- 〔ファイル名〕から保存したいファイル名を指定します。
- 〔出力先フォルダ(オプション)〕から、テクスチャを保存したいフォルダを指定します。
- 〔ベイクするテクスチャの種類〕から必要なテクスチャの種類を選択します。
- テクスチャの解像度、余白の大きさを指定します。
- ベイクを行うオブジェクトを選択します
- 〔テクスチャを生成〕を押すと、指定したテクスチャが生成されます。
オブジェクトを選択した状態で〔テクスチャを生成〕を実行しないと、エラー〔ベイクするオブジェクトが選択されていません〕が発生します。
以下のような4つのテクスチャが生成されました!
PBRマテリアル/テクスチャが取得できるサービス
インターネットには、多くのPBRテクスチャ配布サイトが存在します!
ここでは、登録不要かつ無料のものに絞っていくつか便利なサイトを紹介します。
是非お気に入りのテクスチャを見つけて下さい!
ambientCG
1000種類以上のマテリアルが公開されており、1K-12Kなどさまざまなサイズでダウンロードが可能です!
アカウント不要で商用利用も可能です。
Share Textures
こちらでも多くの商用利用可能なマテリアルが公開されています。
マテリアルの個別ページでは、似たマテリアルを提案してくれるので、素材が探しやすいです。
3D TEXTURES
こちらでは、substanceで作成したテクスチャが公開されています。
こちらは前の二つよりはマテリアルの種類が少ないですが、グーグルドライブからダウンロードすることが出来るため簡単です!
この他についても無料テクスチャを手に入れられるサイトがあります。
またテクスチャを使う際のライセンスについての知識も少しあった方がよいので、ぜひ読んでみてください。
▼【無料テクスチャを手に入れられるサイトまとめ】はコチラ!
まとめ
今回は、リアルな絵作りに欠かせないPBR(物理ベースレンダリング)とBlenderで簡単にPBRマテリアルを作成する方法について紹介しました。
PBRマテリアルのパラメータ操作には慣れが必要なので、初心者の方は是非アドオンを使って簡単に綺麗なマテリアルを作ってみて下さい!