見出し画像

【VRChat】VCCのTemplate機能で、改変前の手間を無くそう!



概要

VCCで新規プロジェクトを立ち上げたとき、lilToonやGestureManagerなどのパッケージを入れて、アバターの3Dモデルを取り込むなど、毎回同じ作業をしていませんか?
VCCには、プロジェクトのテンプレートを自分で作るUser Template機能があります。これは、作成したUnityプロジェクトをVCCに登録し、新規プロジェクト作成時に、そのプロジェクトをコピーして使用できるようにする、といったものです。
この記事は、User Template機能を使用して、パッケージやアバターの取り込みの手間をなくすためのガイドとなります。
※本記事で紹介するTemplate機能はWorld制作でも使用できますが、本記事ではAvatarのプロジェクトを例として示しながら作成します。

毎回共通した作業を省略しよう!

手順

手順1:公式のTemplateをコピーする

User Templateの作成は、一から作るよりも、VCCに標準搭載されている公式のTemplateをコピーして変更するのが簡単です。(公式ドキュメントでも推奨されています。)
そのため、まずは公式のTemplateの保存場所に移動しましょう。
下の図に示すように、VCCでSettingsの中のFiles and FoldersメニューのTemplatesをクリックすると、User Templateを保存する場所が開かれます。(触ったことがなければ空のはずです。)

UserTemplate保存先への移動方法

人によっては異なるかもしれませんが、
「C:\Users\(ユーザ名)\AppData\Local\VRChatCreatorCompanion\Templates」
に移動したと思います。
ここから、1つ上の階層に移動した後、VRCTemplatesフォルダを開きましょう。すなわち、
「C:\Users\(ユーザ名)\AppData\Local\VRChatCreatorCompanion\VRCTemplates」
に移動します。

VRCTemplateフォルダの中身

ちなみに、このVRCTemplateフォルダの中身は、普段VCCで新規プロジェクトを作るときに選択しているものです。本記事執筆時点では、Unity2019と2022それぞれの公式Templateがありますね。
今回は、Unity2022用のAvatarプロジェクトを例とします。
このVRCTemplateフォルダ内の「Avatar」フォルダをTemplateフォルダにコピーします。

公式テンプレートをコピー

手順2:コピーしたテンプレートの設定を変更

手順1でコピーしたテンプレートの名前などを変更して、オリジナルの内容に変えていきます。
まず、コピーした「Avatar」フォルダの名前を、作りたいテンプレートの名前にしましょう。ここでは例として、桔梗ちゃんをインポート済みのテンプレートを作りたいので、「Avatar Kikyo」という名前にしておきます。

フォルダ名を変更

その後、「Avatar Kikyo」フォルダ内の「package.json」をテキストエディタで開きます。(よくわからない人は、Windows標準のメモ帳で良いです。)

コピー直後のpackage.json

このpackage.jsonは、このTemplateの情報を保存しておくためのファイルです。最低限、"name"と"displayName"だけ変更すれば機能します。

"name"の横には、一意な(他のテンプレートとかぶらない)名前を設定します。「"com.vrchat.template.(好きな名前)"」としておけば良いと思います。
本記事では、「com.vrchat.template.avatar.avatar-kikyo」としました。
※nameは逆ドメイン名表記になっていますが、VCC内のテンプレートでかぶっていなければ問題ないかと思います。

"displayName"の横には、VCC上で表示したい名前を設定します。
本記事では、"Avatar Kikyo Project"としました。

"description"はテンプレートの説明文、"version"はバージョンですね。
"category"と"dependencies"はいじらない方が良いかと思います。(よく分かってない)

変更したら、保存して閉じましょう。

変更後のpackage.json

手順3:テンプレートをVCCでプロジェクトとして開く

手順2までで設定したテンプレートを、VCCでUnityプロジェクトとして開きます。
VCCでAddExsistingProjectを選択し、手順2で編集したテンプレート(本記事ではAvatar Kikyoフォルダ)を選択して開きます。

Add Exsisting Projectを選択し、手順2のテンプレートフォルダを開く
Projectリストに追加されているのが確認できる

リストに追加できたら、普段のアバター改変と同じように、「Open Project」を押して、プロジェクトを開きましょう。

手順4:毎回追加するPackageやAssetをインポートする

手順3で開いたテンプレートに対して、いつものアバター改変時にやっているように、Packageやモデルを取り込みましょう。
また、本記事の手順通りに進めた場合、VRCSDKも入っていない状態かと思います。
「Manage Project」から、
・VRChat Package Resolver Tool
・VRChat SDK - Base
・VRChat SDK - Avatar
を追加するのを忘れないようにしましょう。
追加で今回は例として、
・Gesture Manager
・lilToon
・Modular Avatar
・Non-Destructive Modular Framework
をインポートします。

テンプレートに含めたいパッケージをインポート

また、Assetsフォルダに桔梗ちゃんをインポートしてみました。

KikyoフォルダがAssetsに追加されている

手順5:テンプレートの動作確認

VCCで、普段のアバター作成時のように、「Create New Project」を押してみましょう。テンプレートの一覧に、先ほど作成したテンプレートが追加されているはずです。

自作したテンプレートが並んでいる

試しに、このテンプレートを選んでプロジェクトを作成してみます。
※手順3の作業で、新規プロジェクト作成時の保存場所(Project Location)が変更されている可能性があるので、確認して、必要があれば修正しましょう。

試しに、「Kikyo_from_Template」という名前でプロジェクトを作成しました。すると、テンプレート作成時にインポートしたPackageがちゃんと入っていることが確認できます。

プロジェクト作成時点でpackageが入っている

また、プロジェクトを開いてみると、Assetsフォルダ内も、テンプレート作成時のものが反映されていることが確認できます。

プロジェクト作成時点でKikyoフォルダが入っている

最後に

テンプレートによってインポートされるpackageのバージョンは、テンプレート作成時のバージョンで固定されるように思います。
なので、テンプレートを定期的にアップデートする必要がありそうですね。
とはいえ、packageやアセットのインポートを1つずつ行うと、待ち時間が長いですし、大量のPackageから、今回入れたいものを探すのも面倒です。
なので、UserTemplate機能が便利なのは間違いないと思います。

もしかしたら、テンプレートのpackage.jsonのdependenciesとかで最新バージョンを指定できたりするのでしょうか…?
もし分かったら、追記しようと思います。

それでは、良い改変・良いワールド制作ライフを!

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