generated at
VRChatで量産型のらきゃっと(ますきゃっと)になる
こうなりたい人向けの記事です
VRChatにアバターをアップロードするときにやったことの記録です

手順の最終確認日:2020/04/18
手順を実施したときの環境
Windows 10
Unity: 2018.4.11f1
VRChat SDK: VRCSDK2-2020.04.17.11.34

前提
登録したてだとアップロードできないので注意

導入手順
モデルを購入する
以降、この「導入方法」に従い作業をしていく

Unityをダウンロード&インストールする
複数バージョンのUnityの導入には、Unity Hubを使うことをVRChatは強く推奨しているので、まずUnity Hubをいれる
ダウンロードリンク:Unity Hub
2020/04/18時点でのバージョンは Unity 2018.4.20f1
UnityHubにはこのバージョンはないので手動で入れて、手動でUnityHubに追加する
(殆どの人に関係ないので読み飛ばし推奨)インストール時の問題
インストール時にUnityのログインが必要になる(アカウントがなければ作成してください)。この際、1Passwordからpasswordがコピペできなかった
たんにDvorakJがhookできていないようで、Qwertyのキーボードとして Ctrl + v をすればいける

公式ドキュメント:Current Unity Version

Unityを起動し、3Dの新規プロジェクトを作成する
プロジェクトの名前は Masscat にした(自分がわかればなんでもよいです)

Masscatに必要なpackageをimportする
VRChat SDKをダウンロード
必須。VRChatにアバターをアップロードするために必要
導入手順もよくわからなかったらこの公式ドキュメントを読むとよい
今開いているプロジェクトを閉じる
ダウンロードしたSDK( VRCSDK-2019.02.07.17.08_Public.unitypackage )をダブルクリックして、importしたいプロジェクトを選択。あとはダイアログに従う
この処理はめちゃくちゃ重い。1分ぐらいかかった。
こういうウィンドウが出る
SDKでVRChatにログインしておく
VRChat SDK > Settings
必須ではない。おそらく揺れもののために必要
基素は昔購入していたので導入する
Window→Asset StoreからDynamic Boneの商品ページにとんでインポートボタンを押す
Masscat.unitypackageをimportする
購入したファイルを展開すると入っているMasscatのモデル。初期状態でVRChat向けにセッティングがされているので、アップロードすれば即座に使える。神。
プロジェクトファイルを開いた状態でunitypackageをダブルクリックする or Assets > Import packages > custom packages でひらくダイアログからファイルを選択する
Assets/Avatar_Masscat/Masscat prefab prefab をHierarchy上にドラッグ&ドロップして配置する

ちなみに:VRChat向けの設定を眺める
VRC Avatar Descriptor(VRCで視点とか決めるやつ)も最初から設定されているので自分でやることはない
目の中央にある丸いやつがDescriptorの座標(デフォルトでここに配置されている)
Unity2018.4.20f1

Humanoidも設定済

アバターをVRChatにアップロードする
VRChat SDK > Show Control Panel
エラーが出るので対応する
>This avatar has mipmapped textures without 'Streaming Mip Maps' enabled.
パフォーマンスと、ボーンが多すぎるというwarningがでているが(現時点で自分がやれることはないので)無視してPublish
アバターの情報入力画面が表示されるのでプロフィールを入力してUploadボタンを押す


Hello, World
実際にVRChatでアバターを利用してみよう
HMDをかぶってVRChatにダイブ!
メニューを出して、AvatarからアップロードしたMasscatを選択する
このページでもっとなめらかな動画が見られます


わかっていないこと
Dynamic boneがimportしただけで使えているのかよくわからない
比較動画を見ると、あきらかに上のはついてることがわかる

2020/04/18 過去のプロジェクトファイルをコピーしてSDKだけやろうとして試みたけど、だめだったので上の手順で作り直した
過去のプロジェクトがある状態で、そのプロジェクトからPlugin/VRChat関連とVRChatSDKと.metaを削除したあとにVRChatSDKのunitypackageを入れるという方法(以下の手順)でやってみたが、エラーがつぶせなかった。

既存のセットアップを最新のSDKでやり直す
プロジェクト最新のUnityを入れる
masscatのディレクトリをコピーする
VRChat SDKの設定ファイルを消す
UnityHubの「リストに追加」からプロジェクトを追加
コピーしたプロジェクトを起動するUnityバージョンを2018.4.20にして起動する
古いUnityで作成したプロジェクトなので、警告が出るがすすめる

VRChat SDKをダウンロードする
VRChat SDKをimportする
SDKにbuildがでなかった
cf.正常な状態
このときのconsoleのエラー
>Assets/VRCSDK/Dependencies/VRChat/Scripts/ShaderStripping/StripPostProcessing.cs(10,30): error CS1644: Feature `expression bodied members' cannot be used because it is not part of the C# 4.0 language specification
チェックしたこと
Unityのバージョンが推奨の最新
VRChat SDKは2をつかっているか