[VRChat] 2017LTSから2018LTSへの移行について(日本語訳)
はじめに
この記事は、既存のUnity2017で作成したプロジェクトを2018へ移行するためのガイドである下記公式ドキュメントをざっくり翻訳したものです。
元記事:Migrating from 2017 LTS to 2018 LTS
新規にプロジェクトを作成する場合は、2018.4.20f1をインストールし、目的に合ったVRCSDKを導入するだけで済みます。
備考
こちらの注意喚起ツイートにある内容はすでに反映されています。
UnityHubをインストール
すでに導入済の場合は、この手順はスキップしてください。
2018.4.20f1をインストール
プロジェクト移行の準備
1.プロジェクトのバックアップを用意する
移行したいプロジェクトフォルダ名の末尾に_2018と付けておくと区別しやすいです。
2.エクスプローラーでプロジェクトフォルダ内のassets/scriptの中身を削除
Post Processing Stack v1を削除(もし使用していた場合)
--PPSを使いたい場合は、PPSv2に更新すること
Shader Forgeを削除
Dynamic Fog & Mistを削除
Dynamic Boneを更新
その他、assets/scriptが2018に対応しているか確認する
移行の手順
1.新しいVRCSDK2をダウンロードする
VRChat公式ページ(https://www.vrchat.com/)にログイン→ダウンロード
2017から2018への移行に使うのはVRCSDK2(VRCSDK3は非対応)
執筆時点で該当するファイル:VRCSDK2-2020.04.09.10.48.unitypackage
メモ:
VRCSDK2はアバターや、従来通りのコンポーネントでギミックを構築するためのもの
VRCSDK3はすべてのギミックをUdonで構築するためのもの
2.移行したいプロジェクトをUnityHubに追加する
リストに追加→移行したいプロジェクトフォルダを開く→フォルダーを選択
3.移行したいプロジェクトのUnityバージョンを2018に切り替える
4.移行したいプロジェクトを開く
プロジェクトを新しいバージョンのUnityにアップグレードしますか?→確認
Windowsセキュリティの重要な警告→アクセスを許可する(おそらく初回のみ)
プログレスバーが表示されるので、しばらく待つ
5.ファイルメニューから新しいシーンを作成して、保存する
File→NewScene
File→保存
updateとか適当な名前でシーンを保存
6.Unityを閉じる
7.エクスプローラーを開いて古いVRCSDKを削除
Assets/VRCSDK、およびVRCSDK.metaを削除
Assets/Pludins/VRCSDK、およびVRCSDK.metaを削除
8.再びプロジェクトを開く
さきほど作った空のシーンが開く
9.Assets→ImportPackage→CustomPackageからVRCSDK2をインポートする
Importを押してしばらく待つ
10.Unityスクリプトの更新
画面上にある再生ボタンを押す
SceneビューにAll compiler errors have to be fixed before you can enter playmode!と表示される
Consoleウィンドウのエラー
CS1644: Feature `expression bodied members' cannot be used because it is not part of the C# 4.0 language specification
Edit→ProjectSettings→Player→OtherSettings→Configration→Scripting Runtime version→.Net 4.0 Equivalentに切り替える
Restart required→Restart
これでエラーは解消されるはずです
再起動すると、Unityは再度ログインを要求してくるのでログインする(おそらく初回のみ)
ここでまだ赤いエラーが出る場合は、該当するエラーを適宜解決する必要があります(2018に対応していないエディタ拡張を一端削除する等)
11.作業したいシーンを開いて作業に戻ろう
統合に関する問題
SDKの導入(手順6-9)に際して問題がある場合、不具合のあるAssets/Scriptをすべて削除する
1.Unityを閉じる
2.古いSDKを削除
3.Regedit(レジストリエディタ)を起動
PCのスタートメニュー→ファイル名を指定して実行→regedit
4.以下のパスを画面上の欄に張り付けてEnter(もしくは手動でこのパスに移動)
Computer\HKEY_CURRENT_USER\Software\Unity Technologies\Unity Editor 5.x
5.VRCで始まるキーを削除
該当するキーを右クリック、キー削除
6.Regeditを閉じる
7.UnityHubから再びプロジェクトを開く
8.VRCSDK2をインポート
9.SDKが正しくインストールされるはず
私のコンテンツは、2018にアップデートする必要がありますか?
Post Processing
Post Processing Stack v1 は使えないので、更新してください
Crunch Compression
クランチ圧縮に変更はないので、更新しなくて良い
UV、ラッピング
ラッピング(クランプ、リピート)について、まれに壊れることがあるので、必要に応じて更新してください
HDR Colors
HDRカラーの値がガンマ空間ではなくリニア空間になったので、修正の必要があります
VRChat SDK→ユーティリティに、マテリアルの色空間を交換するツールがあります
Lights Using Light Temperature
Use Color Temperatureモードが削除されたため、色温度はRGBに変換する必要があります
シーンの色温度をRGBに変換するスクリプト
https://gist.github.com/ScruffyRules/980fab5864888ba4cecb062480a10b98
注:ライトにUse Color Temperatureが表示される場合がありますが、機能していません
Dynamic Fog & Mist
非対応
Shaders
Unityは2018betaの間にたくさんのバグフィックスを行ったため、ほとんど問題はおこらないはずです
シェーダーに問題が起きたコンテンツについては、常に更新と再アップロードを推奨しています
Keywords
(シェーダー作者向けのアドバイス)
シェーダーの互換性
各シェーダーの対応状況
追記
RespawnHeightが初期化される(-100になる)
AvatarShapeKeyAttacher.cs エラーが出て動作しない
Streaming Mip Mapsに関するエラー
Select→チェックを入れる(AutoFixは押さない事)
これはmipmapテクスチャを動的に読み込むという2018から追加された機能で、Assetsに配置された画像ファイル(テクスチャ)をクリック、InspectorにあるStreaming Mip Mapsにチェックを入れる必要があります
参考:画像付きの詳しい手順(アバター向け)
以上
この記事が気に入ったらサポートをしてみませんか?