ミーシェちゃんをMacでVRChatにアップロードする
追記 (2021/09/27)
Unityのバージョンが変わって陳腐化した面はありますが、基本的な部分は変わってないので残しておきます。
概要
ミーシェちゃんかわいいですよねかわいい。うんかわいい。
まあアップロードの際のメモみたいなものです。 環境依存部分も大きいでしょうし参考になるかわかりません。とりあえず書いときます。 あと我流です。加えてわたしは現状MacしかもってないのでQuest向けにどう上げるかの試行錯誤もかきます。 今回はアップロード(するだけ)まで〜。*1
実行環境
TL;DR;
MacでVRChatにアップロードするにあたって……。
- Unityで
Windows Build support
とAndroid Build Support
をインストールする VRChat SDKのimport時に(2018ではImportしても問題なくなりました)ow.ogg
をimport しない。- 確認中: Arktoon ShaderはMacOSとの相性が悪いのか2018では動作しないので別のShaderに切り替える。
Quest向けにアップロードするにあたって……。
- Quest向けプロジェクトを立ててDynamic BoneをImport しない
- Quest向けプロジェクトでMaterialsのShaderを
VRChat/Mobile/ToonLit
にする
メイン
1. 準備
まずUnity環境をひっぱってきます。なんか最近だとUnity Hubをつかうといい感じらしい。 簡単のためbrew caskをつかって……
$ brew cask install unity-hub
あーその前に、Unity IDを取得したりしました。 インストールした後開くとだいたい用意しろって言われるので仕方なくアカウントを取得しました。
次いで、VRChatのSDKを公式サイトのDownloadからSDK2 *2 をひっぱってきます。(要ログイン)
そんで公式ドキュメントの
Once Unity Hub is installed, *click this link to install the correct version of Unity. *
のリンクからUnityのバージョン2018.4.20fをインストールするリンクをクリックしてインストールを開始します。*3
こんな画面がでてくる筈なので、ここで Windows Build SupportとAndroid Build Supportにチェックを入れてインストールします。
あとはひたすら待てばUnityがインストールされましてえらい!!
2. 読み込みからアップロードまで
上述のようにQuest対応をさせる必要があるのですが、Swich Platformに無限時間かかるのでメモリの余裕をつかってProjectを二つつくってます。 一つはPC向け、もう一つはQuest向けにたてました。
2.1 PC/Quest向け共通
まず、Asset > Import Package > custom package... を選択して、VRChatのSDK2をImportして……なんか色々Importするファイルが出てくるので……、
ここでImportする際に 2018で改善、チェック外す必要はありません。ow.ogg
のチェックボックスを外します。 Macでow.oggを読みこもうとすると何故か無限時間かかるのでとりあえずチェックを外します。謎い。
読みこみおわったら、PC向けのプロジェクトではDynamic BoneとかをAssetsからImportしてミーシェちゃんをインポートする準備をします。*4
加えてVRChat SDK > Show Control Panel を開いて、Authenticationタブからログインします。
加えてSettingsタブのFuture Proof Publish
チェックボックスのチェックを外します*5。
そして、同じく Custom PackageからMishe.unitypackage
を読み込ませます。わたしの環境だけかもしれませんがArktoon Shaderとの相性がMacと悪いのか読み込みに無限時間かかるのでコーヒーでも飲んでまってます。はい。
おわったら下にこんなかんじに表示されるとおもうのでMishe_light
ってかかれてる青い箱 *6 をHierarchyってかいてるところに投げこみます 。
ここまではPC/Questで共通の作業になります。
2.2 PC向けへの作業
PC向けへの作業は非常に簡単で、VRChat SDK > Show Control Panelを開いて、BuilderからBuild & Publish
をクリック。あとはこんな画面がでるとおもうので、
Private
側にチェックがついてる事を確認して、一番下のThe Above information is...
って書かれたとこにチェックをいれてアップロードします。
これでPCからは見られるようになりました。
2.3 Quest用の作業
この状態だとQuestでは「着る」ことができないので、Questに対応させた上でアップロードをします。 Quest向けのプロジェクトを開いて、File > Build Setting を開きます。
こんな画面がでるとおもうので、Androidを選んでSwitch Platform
します。
これでAndroid向けにアップロードができるようになりました。
Quest向けにアバターをアップロードするにはだいたい以下の条件があるみたいです。
- Dynamic Bone, clothなどをつかっていない
- シェーダーをVRChat/Mobile以下のものにしている
逆に、 ポリゴン数などに制限は無いです。*7
なので対応としては、
Assets > Mishe > Materials
に入ってるファイルを全部選んで右上のInspector から Shaderを画像みたいに選ぶだけ!! ((VRChat/Mobile/ToonLit
を選択))
(Toon Litがめっちゃ眩しくはなるけどおすすめです)
加えて、Dynamic BoneなどのScript(の残骸)がPrefab内に残っているとアップロードできないので、すべて選んでちまちま消していきます。 *8
おそらくミーシェちゃんは Mishe.prefab/Armature
とMishe.prefab/Armature/Spine;/Chest/Neck/Head
とかに差さっているはずなのでちまちま消しましょう。
*9
そしたらPCと同じようにアップロードします。
アップロードの前に、 VRChat SDK > Show Control Panelを開いて、Content Managerのタブを選びます。
いまアップロードしたアバターの[Copy ID]をクリックしてBluePrint IDをコピーします。
それで、HierarchyのMishe
をクリックして左側のInspectorの一番下に出ている、
Pipeline Manager (Script)
のBlueprint ID(Optional)の欄にコピーしたIDをペーストしてAttach
をクリックします。
これでQuest向けのアップロードの準備ができました。
PCと同じようにBuilderのタブからBuild & Publishでアップロードします。 *10
おつかれさまでした。 できます。はい。
(これはQuestからの画像)
2.4. 蛇足
Blueprint IDを同じにすればPCからはArktoon ShaderかつDynamic Bone入りのミーシェちゃんが、QuestからはMobile/ToonLitでDynamic Bone無しのミーシェちゃんが見えるという状態が構築できます。 ただあんまりこの手法とってるとQuest勢だと思われることが全くないので *11 その点は注意かも……?
あまりやらないほうがいいですが、Blueprint IDが同じであれば同一のアバター扱いされるので、Questでは幽狐さん、PCからはミーシェちゃんが見えるみたいなことも可能です。おそらくアバターまわりの会話が成立しないのでやめたほうが良いとはおもいますが……。また、Questでよく見るあのロボットくんは、逆にQuestのみの方でアップロード(AndroidSwitchした方のみ)するとPCからロボットに見えるという形になってます。関係ないけどぶっちゃけあのロボットこわいんだよね……。
次の記事にかくこととまとめ
雑多に書きましたけど、アップロードだけならシェーダーを変更するだけでぶっちゃけアップロードできます。
ただし、VRChat/Mobile/ToonLitは透過に対応してないので、頬染めをすると以下のようになります。
この解決方*12はあるんですが、この記事に書くと無駄に長くなるので次の記事にでも書こうとおもいます。はい。
参考文献
だいたいこのあたり……。
*1:間違えてる点とかありましたらご指摘頂けるとうれしいです、もっと釈明させてもらうとこれUnity触るのはじめてだったのであーあーあーあー。
*3:ここのリンクも同じ参照をしてます
*4:Quest向けでは使えないのでImportしない
*5:なんか未来バージョン向けの対応らしいけどもMacだとそもそも外さないと上がらないことも多いとかなんとか?
*6:prefabっていうらしい。
*7:超ハイポリだとそりゃ重くなるだろうけど、それよりシェーダーの方が計算重いんでしょうね……
*8:スクリプトでなんとかできる気もしますがここでは書きません
*9:加筆 2020.04.03
*10:なんか色々出てくるとおもいますがだいたいAutofixで大丈夫だとおもいます、大丈夫かは分かりませんが……加筆修正: 2020.04.03 / 加筆修正: 2020.03.30
*11:『Questからでーす』「え、Linkだよね……えっ?」 ってなりがち
*12:力技的なのでアレ