この記事のターゲット
Unity/VRChatにロボット系3Dモデルをインポートして動かす全行程
の続きの記事です。
UV展開が面倒だけど軽量化のためにそろそろやるか...という方向けの記事です。
ロボット型アバターならではの、ちょっと特殊でお手軽な割り付け方法になります。
準備物
- この手順で作成した自作アバターデータ(ロボットタイプ)
- Blender
- Unity
※BlenderはバージョンによってUIが大きく異なります。当記事では3.01を使っています。
工程の全容
貼り付ける画像の準備して→BlenderでUVの割り付けて→fbxをエクスポート
となります。では早速作業をしていきます。
[01] 3Dモデルを開く

Blenderでマテリアルで色付けされたロボット(アバター)のファイルを開きます。
[02] 貼り付ける画像の準備をする
いきなりですがここでいったんBlenderから離れます。

ロボットに使う色で塗り分けた画像ファイルを作るのですが、図のようにパワポでつくったものを雑にスクショしたものでも問題ありません。
なんと色面の大きさも適当で大丈夫です。(理由は後述)
[03] マテリアルを準備をする

「UV Editing」のタブで画面移動し、左画面の上にあるメニューの「絵のアイコン」から、「開く」を選択します。

前の手順で準備した画像ファイルを選んで開きます。左側に選んだ画像ファイルが表示されます。

右側のマテリアルのタブ(赤い地球儀型のアイコン)に移動します。

「+」ボタンでマテリアルスロットを追加し、そのまま「新規」ボタンでマテリアルを作成します。
テキストボックスで適当な名前(写真ではTOUGOU)をつけます。
このマテリアルに画像とメッシュを紐付けていくわけです。

マテリアルに画像を紐づけるために、「サーフェス」メニュー内の「ベースカラー」の項目のところにある、小さい丸ボタンを押します。

ポップアップメニューの「テクスチャ」の欄より「画像ファイル」を選択します。
「開く」のボタンが出現するので、先ほどパワポなどで作成した画像ファイルを開きます。

プレビューに塗り分けられた球のアイコンが表示されます。
[04] UV展開をして割り付ける
UV Editingの画面にいることを確認します。
右側のマテリアルの玉アイコンが並んでいるところから、一番上のマテリアルを選び、「選択」ボタンを押します。
すると、その色が割りつけられているパーツが全選択されます。
この時、左側のUV展開ウインドウにもいいかげんな展開図が表示されますが気にせず進めます。
同じ色のマテリアルが複数ある場合には、同様の手順を繰り返すことで一括選択ができます。

UV Editingのアバターが表示されている画面の上の「UV」メニューから、
「スマートUV投影」を選択し、

OKを押します。

すると左側に展開図がまとめられた形で投影されます。

これを色に当てはめる作業をします。
「a」キーを押して全選択し「p」キーでピン留めします。
ピン留めはもう一度UV展開したときもその位置に展開する、という機能らしいので、この段階でピン留めをしなくてもよいかもしれません。

全選択のまま「s」キーを押して展開図のサイズを小さくします。
「g」キーを押すと画面内を移動できるようになるので、当てはめたい色のところにおいていきます。
今回のマテリアルは模様ではなく色ベタの面なので、元の画像ファイルのサイズとは関係なく、好きな場所に好きなだけ縮小してUV展開図を配置することができます。

つぎに、マテリアルプロパティから先ほどつくった「TOUGOU」を選択し「割り当て」を押します。
こうすることでパーツにTOUGOUのマテリアルが割り当てられます。
(※20220715 この大事な工程が抜けていることに気づき追記しました。)
この手順を繰り返し、全ての割り付けを完了させます。
[05] おまけ:色数が足りなくなったとき

「Texture Paint」のタブに移動すると、画像に色を上塗りできるようになります。
左の画面の筆アイコンやバケツアイコンを選択し、左画面上部の色のついたボックス(デフォルトは白かも)よりカラーピッカーで色を選ぶと、開いている画像に色を塗ることができます。

これは黄色が置かれていた面にバケツで緑色を塗ったところです。
[06] 画像ファイルとUVを紐づける
UV展開図画面の画像をいったん保存します。

保存をするには、UV展開図ウィンドウのメニューより「画像」→「保存」を選びます。

画面右のマテリアルプロパティ(赤い球のアイコン)の中で、
冒頭で「TOUGOU」と名付けたの統合用マテリアルを選択します。

上部のタブよりシェーダー画面に移動します。
画像のノードを追加します。(この手順は不要な場合もあるかもしれません)
「shift + a」の後、「テクスチャ」→「画像テクスチャ」を選択します。
いま作成したノードから、フォルダ型のボタンを押して最初にパワポなどで作成(の後でBlenderより変更保存した)した画像を選択します。
これでUVテクスチャへの割り付けと紐付けが完了となります!
ここで一旦保存をすると安心です。
[07] 古いマテリアルを削除する
マテリアルプロパティ(赤い球のアイコン)で古いマテリアルを削除していきます。
「TOUGOU」だけを残して正しく着色されていれば成功です。
この時、UV EditingやModelingの画面ではどんどんモデルから色が抜けていき焦るかもしれませんが、Shadingの画面でパーツの色が残っていれば大丈夫です。
うまくいかなかった場合は、Ctrl+z(コマンドz)や復帰メニューなどで戻り、手順に抜け漏れがなかったかを確認します。
[08] FBXをエクスポートする
fbx形式で保存してBlenderの作業は終了です。
[09] FBXをUnityにインポートする
Unityに読み込む場合には、「Asset」「Import New Asset…」で読み込むと、テクスチャのマテリアルごと読み込まれます。
(画面下のAssetsにドラッグ&ドロップでインポートするとマテリアルがついてこないのでご注意。)
<静止立像用のポージングとボーン抜き>
ボーン入りの動くアバターではなく、ボーンなしの静止立像のファイルを作成したい時の手順です。
まず、ポーズモードでポーズを作成します。(詳細割愛)
次に、そのポーズで静止した状態のファイルが出力できるようにしていきます。

オブジェクトモードで右のリストからアーマチュアのオレンジ▽を選択し、
したのモディファイア(水色のスパナアイコン)のV矢印ボタンで適用をチェック。
これでポーズが固定されます。

アーマチュアのグリーンの人形のところの骨マークの上で右クリックし、「削除」を選択します。
これでボーンがはずれます。
そのままfbxで保存すればOKです。
お疲れ様でした!!!
変なところがありましたらコメント欄等でご指摘ください!
参考
今回の手順は@waryou5さん、@S_Thurkさんに教えていただきました。
ありがとうございました。
その他参考URL
など。
つづきの記事
前の記事