スクリーンショット_2019-10-09_11

MediumからBlender(2.8)経由でUnity、VRChatへ世界をアップロードする方法

こんにちは。KenG3です。

今回は、Mediumからモデルをエクスポートして、BlenderでUV展開した後、Unityへ持ってきて、そこからVRChatのワールドとしてアップロードする方法を紹介します。

**流れ**

画像1

# Medium

まずはMediumでスカルプティングをします。

## スカルプティング

簡単にモデルと着色をしました。
※ カエル🐸です。

画像2

## エクスポート(OBJ)

エクスポートを選択します。

画像3

エクスポート画面では、下記の画面のようにしてエクスポートします。

画像4

# Blender(2.8)

次に、Blenderに持ってきて加工します。
Blenderは、ver2.8を想定しています。

## モデル(OBJ)をインポート

ファイル>インポート>objを選択。
先程Mediumでエクスポートしたobjを選択します。

画像5

インポートできました!

画像6

## モデル調整(移動、拡縮)

何やら傾いてるので、Blender上でモデルを移動やら回転やら拡縮やらします。(あとでUnityで調整でもOK)

画像7

## UV展開

次に、UV展開をします。

UV展開というのは、簡単に言うと「🐸の展開図(平面)を、🐸の立体モデル(3D)にどう貼り付けるか?」というやり方の情報です。
Blender上で、「今のモデルの立体(ポリゴンのつき方に沿って貼り付けて」と指定するのがUV展開のイメージとボクは考えてます。

画像8

①UV Editingタブをクリック
②編集モードで、3つのアイコンが並んでる一番右(面)モードにして、Ctrl + Aで全面選択
③右クリック>面の展開>展開
④UV展開される

## モデルエクスポート(FBX)

展開できたら、保存して、エクスポートします。

エクスポートは、fbx形式でします。

画像9

# Unity

次に、Unityにモデル(fbx)を持ってきます。
VRCSDKを通してVRChatにアップロードするためです。
最新版のVRCSDKを、あらかじめプロジェクトにインポートしておきます。

## モデルインポート(FBX)

モデル(fbx)をインポートします。
ドラッグアンドドロップでAssetに追加しても、Asset > import new assetからでもOKです。

画像10

## マテリアル/テクスチャ設定

最初にMediumからエクスポートした際、以下のファイルができると思います。

画像11

このpng(_nrmがついてない方)がテクスチャ画像になるので、これもAssetとしてインポートしてください。

画像12


次に、インポートしたfbxを、ヒエラルキービューにドラッグ&ドロップ。

画像13


今の🐸は真っ白なので、テクスチャを貼るためにマテリアルを作ります。

Asset内で、右クリック>create>materialを選択。
名前は適当でOKです。

画像14


次に、 Mediumでエクスポートした際に出力されたテクスチャ(png)をマテリアルに貼るために、シェーダーをオリジナルのものを貼れるものにします。


作ったマテリアルを選択し、対応するpng画像を、少し見えにくいですが、「□◎Albedo」の「□」の部分にドラッグ&ドロップします。

コメント 2019-10-10 230006

これで、マテリアルに画像が適用できました。


************************************注記*************************************** ここから先は、ボクの方法があまり良くなく、それによって生じるエラーと対策が書いてあります。できなくはないですが遠回りですので、上の記載を参考にしてください。
次は、## VRCSDKでアップロードまで飛んで下さい。**********************************************************************************

作ったマテリアルを選択>shader>Legacy Shaders>Diffuseを選択。

画像15


すると、インスペクタ内に画像を挿入する欄が出てくるので、そこに、対応するテクスチャ(png)をドラッグ&ドロップ。
これで、🐸のテクスチャを纏ったマテリアルが出来ました。
次は、これを🐸のモデルに貼り付けます。

画像16


🐸を選択し、インスペクタビューのMaterialsを開いて、該当するマテリアルをドラッグ&ドロップします。


画像17

すると、🐸が真っ白なのから色がつきました!!

画像18


## Legacy Shader Diffuseの設定調整

実は、もう一つやることがあります。
このままVRChatにアップしても、VRChatで見ると実はテクスチャがうまく表示されません(ピンク色になる)。

原因はうまく調べられていないですが、下記のやり方で上手くいきます。

@naqtnさん、調査とアドバイス、本当に感謝です!!ありがとうございます!!

実際やってみると、
Unityで、menu > Edit > Project Settings > Graphics Settings の中の・・・

画像19

Always-included Shaders に含まれる Legacy Shaders/Diffuseを消します。

画像20

そうすることで、VRChatで、ちゃんとテクスチャが表示されるようになります。

***************************************************************************************************************スキップここまで********************************

## VRCSDKでアップロード

最後に、VRCSDKでアップロードをします。
VRCWorldを適当なところに置いて・・・

画像21

VRChat SDKのShow Control Panelから・・・

画像22

Builderタブの「Build & Test」をクリック。テストします。

画像23

# 完成

できました!!
(🐸、思った以上にでかかった・・・)

画像24


---

以上です。

自分が作ったモデルがVRChatで存在してると、なんともいいがたい嬉しさというか、「この世に残したった」感ありますよね・・・!!!

少なくともボクは、自分の手でのクリエイティブ経験が乏しいので、これでも感動です。
それがどんなものであれ、あなたはたった今、VRクリエイターになった瞬間です。自信を持って、これからも一緒に色々吸収していきましょう!

それでは!

この記事が気に入ったらサポートをしてみませんか?