見出し画像

VRCにUnity2019もうすぐ来るけど皆さんUnity2019でアバターのチェックはしましたか?

さて、前回はバックアップの解説を行いましたね。
問題なくバックアップは取れましたでしょうか。

「そんな記事読んでない」については別に問題ありませんが、「バックアップってなに?」という方は速攻で上記記事を読んでバックアップを取っておいてください。

実は今回の作業では前回記事で説明したUnityプロジェクトのバックアップを使用しなくてもいい方法での説明になるのですが、やっぱりバックアップを取っておくと何かあった時に楽です。

※ただし、バックアップ記事の中で紹介したPrefab(プレハブ)は必要になります。AvatarDescriptorの設定し直しなんかは避けたいですよね?

アップグレード…大変な作業なんだよね…?

手順としてはコピペだけで済む、ものすごく簡単な方法を取ります。
どちらかといえばPCにとって(色んな意味で)大変な作業になります。

ですが作業の前に一応…前提としてシーンファイル(.scene)は予め保存しておいてください。
これは初期ではSampleScene.sceneが作られていますが、Save Asコマンドで別名でプロジェクト内の分かりやすいところに保存しておいてください(後が死ぬほど楽になると思います)。

スクリーンショット 2021-06-19 124957

シーンファイルはその名の通り「状況(シーン)」を記録しておくファイルで、Unityのヒエラルキーの中の状態を丸ごと記録しておくもの。
ここから個別で設定状況を取り出して保存しているものが前回の記事で説明したプレハブファイルになる。
販売アバターによってはプレハブだけでなく、シーンファイルを提供することで「ダブルクリックしてそのままアップロード可能」な状態で提供されているケースもある。

シーンファイル作ったよ、次はなにすれば?

では、Unity2019で新規プロジェクトを作成致しましょう。
保存先で指定した場所にプロジェクトは作られますので、気をつけて!

Unity 2019.4.28f1 で新しいプロジェクトを作成 2021_06_17 15_23_31

一応、配信映像ではUnity2019LTSと書いてあったので、UnityHubで2019LTSのものをダウンロードし、それでプロジェクトを作成するのが吉そうです。
(もし正式稼働時のバージョンが異なってたら同じ作業をすればいいだけなのでまあ…)

バージョンについては「Unity 2019.4.31f1」で確定のようです。こちらのURLより当該のバージョンのUnityをインストールして使用すればOK。
下記の画像では基本的に「Unity 2019.4.28f1」と映っていますがそこは完全に無視してください。

画像3

こちらがUnity2019の画面です。なんか全体的にダークテーマっぽくなりましたね。

それでは本格的にやっていこう(正しい方)

移行作業についてですが、基本的には公式ドキュメントを読むのが一番良いです。
Google翻訳でも意味が取れるくらいには精度が上がってきているのでこういう作業くらいであればなんとかなります。
※Clothの移行方法は記載してないので公式ドキュメント推奨です。

①まずはプロジェクトをコピーしましょう
※何度も言いますが絶対にコピーしておいてください!!!!
②SDK2のアバターとワールド、SDK3のアバターについてはこの時点で現行の最新のVRCSDKをインポートしちゃってください
③SDK3のワールドは一旦空のシーンを作って保存してください(絶対に!!)
④SDK3のワールドはまだVRCSDKは入れてはいけません
⑤Unity2019でそのプロジェクトを開きましょう
⑥たくさんの英語ダイアログが出てきますが全部OKみたいな感じでOKです
⑦インポートが始まります、時間がめっちゃ掛かるのでお茶でも飲んで待ちましょう
⑧完了したらSDK2とSDK3アバターはこれでOK!
⑨SDK3のワールドはVRCSDKをこのタイミングで入れましょう!

それでは本格的にやっていこう(できればやらないで)

さて、それでは移行作業に入ります。

以下の方法は基本的にオープンβでUnity2019をやっていた時代のリクルス流のやり方なので参考にしないでください。
何度も言いますが公式ドキュメントが正義です。

①移行したいプロジェクトのフォルダを探します(前記事参照)
②プロジェクトのフォルダを開き「Asset」と書いてあるフォルダを開きましょう
③Unity2019で作成したプロジェクトのフォルダを探します
④Unity2019プロジェクトの「Asset」フォルダを開きましょう
⑤2018プロジェクトの「Asset」フォルダの中身を全て2019プロジェクトに入れましょう(コピー&ペーストがベストです)
⑥コピー処理などが始まるのでしばらく待ちましょう
⑦コピペが終わったらUnity2019を開くと再びインポート処理が始まるのでそれが終わったら一通り完了です

超絶ざっくりとGif画像で手順を示すとこんな感じですよ!

画像4

Unity2019が無事に動くようになったら、先の手順で作成したシーンファイルを読み込ませてみましょう!

画像5

シーンファイルはUnity上ではUnityのマークになってます。
これをダブルクリックすると…(確認で「今のシーンはどうする(上書きする)?」と出てくるのでOKとかで良いです)

画像6

じゃん。移行元の2018の状況がそのままそっくり再現できました。

長い戦いだった…

どうでしょう、アバターは正しく表示されていますか?
筆者が確認した限りではUTS(ユニティちゃんトゥーンシェーダー)・Poiyomiシェーダー・Sunaoシェーダーは特に問題なく表示されていました。

なお、Arktoon(アークトゥーン)シェーダーについては、開発者より後継シェーダーとしてArxCharacterシェーダー(略してAXCS)というシェーダーが提供されているので、そちらに置き換えるといいと思います。

本記事では置き換えの仕方について説明はしません。

ちょっと、ちゃんと動かないんだけど

当たり前の話ですが、VRChatそのものはまだUnity2018で稼働しているため、Unity2019環境でのアップロードは不可能です。

それ以外のツールについて、筆者が移行手順を行った時に正常に動かなかったものをここに記載しておきます。

VRCLensVirtualLens2:2018からそのままの移行だとエラーを吐いてVRCSDKなど含めて正常に動作しなくなります。
一旦削除した上で入れ直すのがよさそうです(カメラモデルの位置の設定情報は消されます)。

画像7

こんな感じでエラーがバーッ…と出てくる(´;ω;`)
厳密に言えばスクリプト(拡張子が .cs のもの)でエラーが起きていたので、スクリプトだけを削除して入れ直しを行えばもしかしたら正常に動くかも

Esnya Unity Tools今のところどれだけ頑張ってもUnity再起動でエラー確定でした。

対応されたようです。

とにもかくにもコンソールの赤い!を原因となっているツールやアセットを削除したりして解決すればこの画面が見れるようになるので、これを目指して頑張りましょう!(`・ω・´)ゞ

画像8

まだVRCSDKがUnity2019に対応してないので、「Unityのバージョン間違えてるじゃねーか!!!」と怒られている状態

その他の事項

Q.そもそもVRChatはいつUnity2019に移行するの?
A.2021年の夏頃だそうです。具体的な日程は今のところ不明。
※多分Vket6に合わせてくるでしょう(2018への移行もその辺だった)

2021/8/4に来ましたね。2022年はどうなることやら。

Unity2020化するぞ!! シェーダー的な問題もあるらしいので勘弁してくれ。

Q.Quest用プロジェクトとかってどうするといいかな?
A.Unity2019LTSにてスイッチプラットフォーム時の仕様が変わったので以前よりは「スイッチプラットフォーム時にものすごく時間がかかる」という事象は解消されましたが、PC版とQuest版でプロジェクトを分けておいたほうがリスクが分散できるため、個人的にはそのままUnity2019でも分けておくことをオススメします。

Q.移行の結果アバターのギミック死んだりしない?大丈夫?
A.アバターのギミックはUnityのアニメーター(Animator)というもので構成されているのですが、今のところ互換性の問題は発生してはいなさそうです。
というか、それによる精神的ダメージを抑えるための移行手順書です予見される危機に備えよ

Q.Unityの日本語化は…
A.公式で実装されたようです。インストール時に日本語の言語ファイル入れられる。
ただし、だいたいのWebサイト上の設定方法などの記事は英語が基準で書かれてます

Q.うちの○○ちゃんはUnity2019で読み込めないとかはない…よね?
A.うちの○○ちゃん(=FBXファイル)を指すのであれば大体大丈夫です。
うちの○○ちゃん(=改変データ)は私には保証できないので移行して自分で確認してみてください。