Mixerでマテリアルを塗り分けると次のようにパーツごとに別々なマテリアルを割り当てることができる。
Quixel Mixierは高性能なのだが、なにもせずただobjを出力して読み込んでもマテリアルは1種類しか設定できないので絶対に初心者は躓く。
この記事では作例のように羽や胴体や窓枠といったようにマテリアルを塗り分ける方法を解説する。
特に今回はBlenderから持っていくときに楽に設定できる方法を提案する。
今回はBlender側のマテリアルを分けてからMixerにエクスポートする方法を紹介するが、他にもUDIM分けやColor IDマップ分けという方法があるようだが、こちらは今回紹介しない。
個人的にはBlender側のマテリアルを使う方法が一番簡単だと考えている。
Blender側で適用されたマテリアル1つがそのままMixer側でレイヤー1つと認識され、塗り分ける機能がオンになるという仕組みを利用する。
Blender側の作業。
意外に知らない人もいるかと思うが、マテリアルはオブジェクトごとではなく頂点ごとに設定できる。
つまり一つのつながったメッシュの中でもマテリアルを分ける事ができるので、わざわざオブジェクトに切り分ける必要はない。
まずはBlenderのマテリアルの適用方法ではなく、上の画像のように一部を的確に選択する方法を軽く解説する。
編集モードで頂点選択モードでalt + クリック
するとループ選択。
まとめてぐるっと選択される。
ここでH
キーを押すと選択している箇所を 「一時的に非表示にできる」
これを下のループでも行う事により、この部分を一時的に切り離されたメッシュとして表示する。
※あくまで非表示になっているだけ
今度は中央のベルト部分の適当なところにマウスカーソルを合わせL
キー
このキーはつながっているメッシュを全選択する機能。
続けてalt + h
キーで非表示を解除
この状態でマテリアルタブへ
プラスボタンでマテリアルを追加した後、わかりやすい名前をつけて「割り当て
」をクリック。
この時つけたマテリアル名がそのままMixerのレイヤーとして判定されるので 必ず名前をつけておこう。
※語尾に.数字
のような自動ネームをそのまま使うとMixer側のエラーとなるので要注意。
なんだかんだでこの頂点をもう一度選択して表示したいケースがよくあるので面倒だが頂点グループも作っておくと良い。
※適用後は「選択」ボタンで設定した頂点をもう一度選択できる。
仮のマテリアルがパーツごとに設定できたら
すべての別れているオブジェクトを選択して オブジェクトモード
> ctrl + j
で一つのオブジェクトにまとめておこう
Mixerへ持っていきたいオブジェクトを予め選択した状態で ファイル > エクスポート
からobjかfbxで出力。
このとき「選択物のみ
」をチェックすること。
※ファイル内にゴミがまざってエラーになる可能性あり。
Quixel Mixer側でobjファイルを読み込んだら上のAdd Layer Set
ボタン。
これがパーツごとにマテリアルを塗り分ける機能。
※ん?Mixerにモデルのインポートが無いですって?次の記事をどうぞ!
【Quixel Mixer】objやfbxデータの読み込みどうやるの? | 謎の技術研究部
右側のTarget Texture Sets
で対応する部位を選ぼう。
※複数まとめて適用も可能 + いつでも変更可能。
ちょっと作例のUVをフルオートで行ったので切れ目がはいってしまったが...マテリアル分けは以上。
このあとExportを行った後にテクスチャデータが大量に書き出されるので、面倒だがもう一度Blenderに戻して生成されたマテリアルへ載せ替えしている。
このときのBlender側のマテリアルノード作業は以前の記事で触れているので参考にしてほしい。
【Quixel Mixer から Blender】簡単テクスチャ読み込み | 謎の技術研究部
しかし、設定したレイヤーセットだけマテリアルノードを組み直しになるので、半自動ではあるが大変である。
いずれQuixel Bridgeが対応すればこちらも楽になるとは思う。