この記事ではBlenderを使ってボクセルモデルに2つのマテリアルを設置した。これによってUnityやClusterのアイテムに任意の2色が着色ができるようになる。金色についてはBlender上だけで着色できた。
この記事のきっかけ
Clusterのアイテムに金色を着色したいと思うものの、MagicaVoxelの色の中には金色がない。実は金色という色は無くて、光沢を付けて金色に見せることで表現するらしい。
この記事の参考書籍
準備
“trophy01.blend”をダブルクリックしてBlender起動。
画面にオブジェクトが表示された。
1つ目のマテリアルを作成
マテリアルの操作は、画面右下のプロパティメニュー(図の赤枠)の中の“マテリアルプロパティ”(図の青枠)から行う。
マテリアルプロパティアイコン(図の青枠)をクリック。
現在オブジェクトに設定されているマテリアル(名称:palette、ピンク色)が表示される。
こんなマテリアルを設定した覚えはないのだが、オブジェクト表示をシェーディングモード(画面の右上にある)のレンダリングにすると、確かにオブジェクトはピンク色に着色された。
既設定のマテリアル削除
まず、元々ついているピンクのマテリアルを削除する。
マテリアルスロット(マテリアルがリスト形式で表示されているエリア)の右にある[-]ボタンをクリックすると、マテリアル“palette”が消えた。
新規マテリアル作成
次に、マテリアルスロットの下に表示されている[新規]ボタン(図の赤枠)をクリック。
マテリアルスロットに“マテリアル”という名称の新マテリアル(図の青枠)が作成された。
新マテリアルの詳細はスクロールして確認できる。パラメーターが沢山ある。
マテリアルの色を調整(基本色+光沢)
基本色設定
まず基本色を設定する。マテリアル・パラメーターの“ベースカラー”白色部をクリック。
カラーパレットウィンドウが表示される。
カラーパレットのなかで、金色の元になる黄土色の部分をクリック。
マテリアルのベースカラーが選択色に変更された。
表示されているオブジェクトの色もベースカラーに変更された。
光沢を追加する
ここから、設定した黄土色を金色に見えるよう、マテリアル調整を行う。
今回操作するパラメーターは“粗さ”と“メタリック”の2つだけ。
まず“粗さ”を“0.5”から“0.1”に減らしてみる。
オブジェクト表面の粗さが減って、ツルツルに見えるようになった。
次に、“メタリック”を“0.0”から“1.0”に変更。
オブジェクト表面が金属っぽくなった。なんとなく金色に見える。
思い切って“粗さ”を“0.0”に変更すると、ツルツルのピカピカになった。金色だ!できた。
あまり金が強くてもよくないかなと思い、メタリック“1.0”、粗さ“0.1”に戻す。
2つ目のマテリアルを追加する
次は、台座部分の色を変更する。
現時点で画面左上のモード表示は“オブジェクトモード”になっている。
モード表示部分をクリックして、“編集モード”に変更。
オブジェクトの表面に、点と線が表示された。
台座の色(マテリアル)を作成するため、先ほどと同様に画面右にマテリアルプロパティを表示する。
追加マテリアル作成
新しいマテリアル(色)を作成したいので、(先ほどは[新規]ボタンをクリックしたが、今は表示されていないため)、マテリアルスロットの右にある[+]ボタンをクリック。
マテリアルスロットに、空のマテリアルが追加された。
ここで表示された[新規]ボタンをクリックすると、空のマテリアルに名前(マテリアル001)がついて、プロパティエリアに各パラメーターが表示された。
新マテリアルの色設定
台座の色は青にする。パラメーターのベースカラー部をクリック。
表示されたカラーパレットの、青色をクリックしてベースカラーに指定した。
2つ目のマテリアルでオブジェクトに着色
オブジェクトの表面にマテリアル(色)を指定するために、選択モード(画面左上にあるモード表示の右に表示されている)を、“点”モードから“面”モードに変更する。
これにより、オブジェクト表面の“面”を選択できるようになる。
オブジェクトの“面”を指定した状態(図の赤矢印)で、マテリアルスロット(青のマテリアルが選択されている状態)の下に表示された[割り当て]ボタン(図の青枠)をクリック。
指定された面(だけ)が、マテリアル001(青)に変更された。
さらに台座の他の面を指定して、マテリアルプロパティの[割り当て]ボタンをクリック(マテリアル001が選択された状態)。
台座の1面がマテリアル001(青)に変更された。
全ての台座面を同様の操作でマテリアル001に変更した。トロフィーオブジェクトのマテリアル設定終了。
オブジェクトのエクスポート
オブジェクトのマテリアルが設定できた(目標の金色)ので、このオブジェクトをエクスポートしたい。
画面左上のモード設定を、“オブジェクトモード”に変更。
画面上部メニューから「ファイル」→「エクスポート」→「FBX」クリック。
“Blenderファイルビュー”ウィンドウ(エクスポートウィンドウ)が表示される。
ウィンドウ右の詳細設定を、Unity用に変更(図の赤枠)し、保存先をデスクトップに指定、ファイル名を入力して、右下の[FBXをエクスポート]ボタンをクリック。
デスクトップにFBXファイルが作成される。
新ファイルをダブルクリックすると、Windowsに付属した“3Dビューアー”が起動して、保存した3Dモデルが表示された。
しかし、金色ではない。
トロフィーも台座もベースカラーではあるが、設定したはずの光沢が全くない。
(以下も失敗の操作)
何を間違えたのかと思い調査。
FBXファイル保存時の設定で、ウィンドウの右上にある、“パスモード”を“コピー”にして、その右に表示されたアイコン(箱が2つみたいな)をクリックして“ON”にすると、保存時にテクスチャーを埋め込むことができる・・とのこと。
これか!と思って再設定し、[FBXをエクスポート]ボタンをクリック。
作成されたFBXファイルを3Dビューアーで表示するも、変わらず金色ではなかった。
さらに
このファイルをUnityにインポートしてみたが、やはり金色ではなく黄土色だった。
その後、ノード(今はよく分からない)を操作してみたり、モードをテクスチャペイントにして作業したりしてみたが、金色をエクスポートする方法は分からなかった。
どうやらBlenderからマテリアルをエクスポートしてUnityにインポートすることはできないらしい(難しい方法があるのかもしれないが自分の技量では無理そう)。
オブジェクトに2つのマテリアルを設定することはできたので今回は終了とする。
この記事の参考書籍