Unityで自作のテンプレートを作成した話

ゲーム制作
Unityバージョン:2020.3.26f1
Unity Hubバージョン:3.0.0
UnityHubが新しいバージョン出てたので更新しちゃいました。
ちょっとかっこよくなりましたね!笑

経緯

自分のUnityでゲームを新しく作るときにアセットなどを毎回設定するのは大変なので、プロジェクト開始時に自作のテンプレートを選択して楽をしたく以下のサイトを参考にテンプレートの自作をしてみました。

Project Templateを自分で作る

何個か作ってみたらプロジェクト作成時にエラーが出て作れないようになったりすることがありました。よく分からん……。環境Unityバージョン:2019.3.4f1UnityHub:2.3.0Unityのバージョンが変わる度に作成するフォルダを設

上記サイトの通りにやったところ、作成したテンプレートの選択は出来るが、以下のエラーか「有効なプロジェクトテンプレートではありません」のエラーが発生してしまい、プロジェクト作成できませんでした。。
色々とバージョンを変えたりして試したのですが同様のエラーでプロジェクト作成出来ませんでした。
恐らく自分の環境のせいだと思うので出来る方法がないか色々と調べていた所、
他の方法でテンプレートを作成し実際にプロジェクト作成まですることができたのでメモしておきます!
自分と同じような状況の人は試してみるといいと思います。

別の方法

上記動画を参考にしました。

説明が英語なので手順を簡単に日本語で説明したいと思います。
tgzに圧縮する際に7zipがあると便利です。

手順

1.テンプレートにするプロジェクトを作成
  ここでは2Dのコアを選択しプロジェクト名を「MyTemplate」で作成しています。
2.テンプレートとして使いやすいように各々アセットのインポート等をしてください。
  インポートなどが完了して準備が整いましたらUnityを閉じて問題ないです。

※ここではテンプレートとして適用されていることがわかるよう画像ファイルをAsset直下に配置してます。

3.エクスプローラーを開き、現在のバージョンのProjectTemplatesフォルダに移動してください。
例:[Unityインストールフォルダ]2020.3.26f1EditorDataResourcesPackageManagerProjectTemplates

4.デフォルトで作成されているテンプレート「com.unity.template.2d-5.0.0.tgz」を選択し、7zipで展開します。

7zipウィンドウ内で「com.unity.template.2d-5.0.0.tgz」をダブルクリックして移動後に展開ボタンを押すと、tarごと展開してくれるので1ステップで出来ます。

 

ProjectTemplatesフォルダにpackageフォルダが展開されていればOKです。

 

5.packageフォルダにあるpackage.jsonの以下の項目編集します。
  編集が完了したら保存して閉じてください。
name:フォルダ名にする文字列を入力してください。入力後はコピーしておくなど覚えておくと良いです。
 ここでは「com.unity.template.2d」から「com.unity.template.mytemplate」に変更しています。
displayName:Unity Hubで表示する名前を設定してください。
description:Unity Hubで表示する説明を設定してください。

 

 

6.packageフォルダ内にある「ProjectData~」フォルダに移動し、以下の3つのフォルダを削除します。
  • Assets
  • Packages
  • ProjectSettings

 

7.エクスプローラーで手順1、2で作成したテンプレート用プロジェクトフォルダに移動し、先ほど削除したフォルダと同名の以下3つのフォルダをコピー&ペーストします。
 ・Assets
 ・Packages
 ・ProjectSettings
 作成したプロジェクトMyTemplateフォルダに移動
 以下3つのフォルダをコピーします。コピー後はウィンドウを閉じて良いです。
  • Assets
  • Packages
  • ProjectSettings
 先ほどフォルダを削除した「ProjectData~」フォルダに貼り付けます。

 

8.「ProjectData~」フォルダに貼り付けた「ProjectSettings」フォルダに移動し、ProjectVersion.txtファイルを削除します。

 

9.ProjectTemplatesに移動してpackageフォルダをtgzファイルに圧縮します。
※圧縮は7zipを使用すると良いです。
 Lhaplusを使用してtar.gzに圧縮して拡張子を変更する方法では読み込んでくれませんでした。

packageを 右クリックし、7-zipの圧縮を選択

 

 7-zipの圧縮ウィンドウで以下の通り設定する。
  圧縮先のファイル名:package.jsonのnameに設定した値に「.tgz」を付ける
  アーカイブ形式:tar

 

 

 OKを押すとProjectTemplatesに指定したファイルが出力されます。

 

10.編集で使用したpackageフォルダを削除します。
  これを削除しないと競合してるためかエラーが出てしまいます。

 

以上で完了です。
プロジェクトが作成できるか確認してみます。
package.jsonのdisplayNameに設定したテンプレートが追加されていることを確認

プロジェクトが作成され、テンプレート作成時に追加した画像もAssetsフォルダに格納されていることが確認できました!良かった!

一言

これでテンプレートが作成できるようになりました!

これから新しいゲームを作るのが楽になるので嬉しいです!

正直、Unityに関することをググるとき日本語で解説している所が少ないのでもっと賑わうといいなーって思います。

コメント

タイトルとURLをコピーしました