BlenderでMatCap(マットキャップ)をテクスチャにベイクしたい!
ということで、BlenderでMatCapをベイクする手順のまとめです。なるべく簡潔にいきます~
※UVを展開するときは、BlenderでUV展開の記事も参考にどうぞ~
BlenderでMatCapをベイクする手順
①BlenderのビューポートをMatCap表示にする
まずはBlenderのビューポートをMatCap表示に変更します。
ビューポートシェーディングをソリッド表示にし、▽部分をクリックします。
[スタジオ][MatCap][フラット]と3つボタンが並んでるので[MatCap]を選択します。
これでビューポートがMatCap表示になります。[MatCap]ボタン下の球のサムネイルをクリックすると、デフォルトで用意されているMatCap画像が表示されます。選択で見た目を変えられます。
②MatCap画像をBlenderにインストール
MatCap画像は、自分で好きなものを作成してBlenderにインストールすることができます。
512×512サイズの画像で、jpgやpngで保存したものを用意します。今回はこちらの画像を使います。
MatCap画像をインストールするには、ビューポートシェーディングの▽部分をクリックして開き、球のサムネイル横の歯車マークをクリックします。
するとプリファレンスウィンドウが開くので、MatCapと書いてあるとこの横にある[インストール]をクリックします。
ファイル選択ウィンドウが開いたら、インストールしたいMatCap画像を選択してインストールします。
MatCap一覧にインストールしたMatCap画像が表示されていればOKです。
③レンダリングでMatCapと同じ見た目になるマテリアルを作成
BlenderのMatCap表示はモデルの質感を簡単に変更できて便利ですが、あくまで一時的に見た目を変えているだけなので、このままこの質感をテクスチャにベイクすることはできません。
ベイク機能はレンダリングの結果をベイクするものなので、レンダー表示でMatCap表示と同じ見た目になるようなマテリアルを作って、オブジェクトに割り当てる必要があります。
ということでマテリアルを作っていきます。
まずMatCapをベイクしたいオブジェクトを選択し、プロパティエディターのマテリアルタブから[新規]ボタンをクリックして、新しいマテリアルを割り当てます。
割り当たったマテリアルに適当に分かりやすい名前を付けたら、サーフェスのところをクリックし、マテリアルの種類を「放射」に変更します。
カラーの横の〇をクリックして「画像テクスチャ」を選択しておきます。
ここまでやったらワークスペースを「Shading」に切り替えます。(Maya Config Addon For Blenderを導入している場合は「HyperShade」という名前になってます)
ワークスペースを切り替えると、シェーダーエディターのところに「画像テクスチャ」「放射」「マテリアル出力」の3つのノードがあると思います。ここに、さらに3つノードを追加します。
ノードの追加はシェーダーエディター上部のメニュー「追加」から行います。
3つのノードの追加手順は次のとおり。
- ノード1テクスチャ座標
追加 → 入力 → テクスチャ座標
- ノード2ベクトル変換
追加 → ベクトル → ベクトル変換
※追加したベクトル変換ノードの設定を図のように変更する - ノード3マッピング
追加 → ベクトル → マッピング
※追加したマッピングノードの設定を図のように変更する
ノード追加して設定を変更したら、マウスクリック&ドラッグで下図のようにノードを繋げます。
最後に画像テクスチャノードの[開く]ボタンをクリックして、MatCap画像を割り当てます。
これで、レンダー表示でもMatCap表示と同じ見た目になるマテリアルの完成です~
3DビューポートのシェーディングのところをMatCapにしたりレンダー表示にしたりして確認してみます。もしBlenderでMatCapの見た目をレンダリングしたいだけなら、ここまででOKです。
④ベイクするテクスチャのサイズを指定
今回はMatCapの見た目をテクスチャにベイクしたいので、その準備をしていきます。
まずノードエディタで、追加 → テクスチャ → 画像テクスチャ とやって画像テクスチャノードを追加します。このノードはどこにも繋げず置いておくだけでいいです。
追加した画像テクスチャノードの[新規]ボタンをクリックし、小窓が開いたらベイクするテクスチャのサイズを指定します。テクスチャ名も「bake_tex」など分かりやすい名前を付けときます。
シェーダーエディターの横に画像エディターが表示されていると思うので、画像名横のアイコンをクリックして「bake_tex」を表示しておきます。
※もし画像エディターが表示されてなかったら、分割したエリアに好きなウィンドウを表示するを参考に画像エディターを表示してみてください。
⑤レンダーをEveeからCyclesに変更
Blenderの既定レンダーはEeveeですが、EeveeだとベイクできないのでCyclesに変更します。
※変更方法はAOベイクの記事にある、レンダーをEeveeからCyclesに変更するを参照~
⑥ベイクタイプを放射に変更しオブジェクトを選択してベイク開始
ベイク項目の「ベイクタイプ」をクリックし、一覧の中から「放射」を選択します。
ベイクタイプを「放射」にするとオプション項目が減ってすっきりした見た目になります。
MatCapベイクの準備が整ったので、MatCapをベイクしたいオブジェクトを選択し、[ベイク]ボタンをクリックします。ベイクが終わるまで待ちます。
⑦画像エディターから名前を付けてベイク画像保存
ベイクが終わると画像エディターにベイク結果が表示されていると思います。
画像エディターの上部メニューから 画像 → 名前を付けて保存 でベイク画像を保存できます。
これでMatCapの見た目をテクスチャにベイクすることができました~
以上、「BlenderでMatCapベイクする」でした!
MatCapベイクの補足事項
MatCapベイクの結果はカメラアングルに依存する
MatCapはビューポート上ではどのアングルから見てもきれいに表示されますが、テクスチャにベイクするときは「レンダリングカメラのアングルから見た状態」でベイクされます。
このため、元のMatCap表示とベイク結果ではアングルによってちがう見た目になります。
今回レンダリングカメラはオブジェクトを正面から映す設定にしていたので、ベイク結果を正面からみるとMatCapの見た目とほぼ同じですが、横から見るとおかしな感じになっています。
ベイクして画像データにする関係上、どの角度から見てもMatCap表示と同じになるようにベイクするのは不可能です。
MatCapベイクの使いどころについて
んじゃあMatCapベイクってなんの役に立つの??
と思うかもしれませんが、使い方次第なので実はいろいろ役に立つことがあります。
背景の小物モデルなど、カメラアングルが決まっているような場合なら問題なく使えます。
また、手描きテクスチャのベースにするというのもよくある使い方で、MatCapベイクの結果をそのまま使うのではなく、Photoshop等でレタッチして使ったりもします。
モデルによって肌や金属の質感をテクスチャの描き込みだけで表現したい場合がありますが、まるまるぜんぶ手描きするより、MatCapベイク等を利用したほうがやりやすいこともあります。
特に、純粋にリアルな質感というよりも、ファンタジーっぽい表現や独特の質感がほしいときなんかはMatCapが便利です。
その他
AOベイクの補足事項に記載している、
- 3Dビューでベイク結果を確認するならフラット+テクスチャ表示
- 余白(パディング)の設定
- スムーズシェード/フラットシェードはベイク結果に影響する
の項目はMatCapベイクにも関係のあることです。合わせてご確認ください~
おまけ:MatCapとは
MatCap(Material Capture)とは…
ざっくり言うと、球体を描いた1枚の画像から、描かれている球体のマテリアル+ライティングを疑似的に再現する方法のことです。
MatCapは自由度が高く、MatCap画像に描いたものはなんでも疑似マテリアルのようにすることができます。
例えばこういう手描きタッチのあるMatCap画像を使えば…
手描きタッチ風のふしぎ質感も簡単に作れます。MatCapのおもしろい&いいところです。
ちゃんと球体を表現したようなMatCap画像を使うほうが、物理的に正しい感じの見た目になります。けど別にちゃんとなってない画像でも疑似マテリアルにしてくれます。
MatCap画像は自分で好きなように作ってもいいし、フリーのMatCap画像を提供してくれているサイトなどもあります。
Blenderでは簡単にMatCapを試せるので、興味があればいろいろ試してみてください^^
百聞は一見にしかず!
●Blenderでベイクする AO編はこちら↓
●Blenderでベイクする グラデーション編はこちら↓
コメント一覧
勉強になります!
色んなやり方があるんですね!
キャラ作り、ポートフォリオ作りが落ち着いたら、こちらも試してみます!
通りすがりの主夫さん、コメントありがとうございます~
使いどころは限定されますが一度やってみるとおもしろいかもです^^