new-unity-project について
new-unity-projectは、ゲームの構想から実行可能でバージョン管理されたUnityプロジェクトまでを導くスキルです。既定値で進める方法と段階的に質問する方法を備え、他のUnityスキルとの連携やビジュアル基盤、引き継ぎまで扱います。
主な機能
- 01既定またはガイド付きのセットアップ
- 02プロジェクト前提の一覧表示
- 03バックグラウンドでのEditor導入と作成
- 04パッケージとバージョン管理の委任
- 05プレイヤーIDとゲーム基盤の設定
- 06ビジュアル基盤と引き継ぎ
活用シーン
- 01短い構想からUnityゲームを開始
- 02要件に沿ったプロジェクト設定の決定
- 03設定の相談中にEditorをインストール
- 04ゲーム開発に進めるプロジェクトの準備
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ unity-technologies/ unity-agent-plugin --skill new-unity-projectインストール後、Claude Code で/new-unity-projectを入力して読み込まれたか確認します。
同梱ファイルreferences/skill-setup.mdSECURITY.md
詳細
新しい Unity プロジェクト
アイデアから、実行可能でバージョン管理された Unity プロジェクトまでの流れです。このスキルが担うのは流れです — モード、デフォルト、順序、バックグラウンドでのインストール、引き継ぎです。
委譲先(実際のコマンドはこちらを参照してください — 独自に作り直さないでください):
unity-cli— インストール、認証/ライセンス、Editor のインストール、作成、ソース管理、起動。「ゼロから新しいプロジェクトをブートストラップする」ワークフローが、ここでの基盤です。unity-package-management— Pipeline のpackageコマンドでパッケージを扱います(C# スクリプトによるフォールバックあり)。urp-postprocessing、ui、2d-pixel-perfect— ビジュアルのベースラインに関する仕組み(ステップ 7)。craft-game-floors— 制作の各フロア(見た目、手触り、オーディオ、シェル、ライブフロア、完了ゲート)。ステップ 6 で読み込み、ビルド中も継続します。implement-in-app-purchases、levelplay-unity-integration、build-live-game— 収益化/バックエンドの統合(最後に実行します)。
モード:デフォルトは舗装済み、希望があればガイド付き
ユーザーが言葉で(「質問してください」「案内してください」など)面接形式を求めるか、マニフェストに異議を唱えない限り、paved で進めます。モードはセッションごとに一度だけ決定します。paved の契約は次のとおりです:
まずプロンプトを解析する · デフォルト表で不足を補う · 作成を開始する前にマニフェストを表示する · 異議またはルールのない分岐点でのみ質問し、先に進む · 人間の確認ゲートを決して通過しない — サインインと公開は必ず確認します。bare/minimal の依頼には --bare を指定し、フロアを省略して、その代償(ID、セーブデータ、ランキングが未接続であること)を伝えます。
guided モードでは、現在のステップに関する質問だけをして、返答を待ちます。paved で追加される項目(ID、フロア、引き継ぎ)は、そこで各ステップに応じて質問し、決めつけません。
デフォルト表
各行の設定は、実行によって得られた根拠がある場合にのみ変更できます。
| 決定事項 | Paved の推奨 |
|---|---|
| Editor バージョン | --editor-version latest を明示的に指定 |
| テンプレート | URP。プロンプトに 2D と記載がなければ 3D(--template 3d または 2d) |
| プラットフォーム | デスクトップのみ。プロンプトが示唆する場合にモジュールを追加(「モバイルゲーム」→ ios/android) |
| 収益化 | 作成時にはなし。後で検討するものとして記録 |
| バージョン管理 | ローカル git + Unity .gitignore |
| プレイヤー ID | 匿名アカウント — 作成結果に表示される場合は作成時に、それ以外はステップ 6 で接続 |
| 制作フロア | craft-game-floors スキルを通じて常に有効:見た目、カメラ、ライティング、フィードバック、オーディオ、シェル、ライブフロア、完了ゲート |
クラウドリンクと診断は表の項目ではありません。作成時にデフォルトが適用されます。結果をもとに説明し、再決定しないでください。
想定事項マニフェスト
ステップ 2 の最後、作成を開始する前に、ブロックを 1 つだけ正確に出力します。これは作成時の動作を予測するものです(--template 3d|2d に応じた URP テンプレートを使い、ID を推測しません)。
Paved の想定事項: Unity · <URP template, 2D/3D> · · · 匿名プレイヤーアカウント(作成時に設定。それ以外はブートストラップスクリプトを 1 つ使用) · · クラウドリンクと診断を有効化(作成時のデフォルト。結果をもとに説明) · フロアパッケージ (Cinemachine。クラウドリンク時は ID + ライブサービス) ·
craft-game-floorsによる制作フロアを有効化 · プロジェクトの CLAUDE.md に 1 行の引き継ぎメモを追記します。 これらを変更する場合はお知らせください。そうでなければ、このまま進めます。
ブロックは 1 つだけにし、すべての想定事項を含め、それぞれ変更可能であることを明示します。何も暗示しません。ステップ 3 で結果を照合します。
ステップ 1 の前に:委譲先のスキルが読み込まれていることを確認する
クライアントのスキルに unity-cli、unity-package-management、urp-postprocessing、ui、build-live-game、craft-game-floors があるか確認します。不足しているものがあれば、その名前と役割を伝え、references/skill-setup.md にあるインストール方法を提示します — 承諾なしにインストールしてはいけません。進行を止めないでください。断られた場合は該当ステップでフォールバックを使い、報告に不足を明記します。unity skill show はインストールせずに unity-cli を表示します。unity-package-management がない場合、ステップ 5 を実行できません — ステップ 2 の前にその旨を伝えてください。
フロー — 並列処理が行われる箇所
- コンセプト(定型処理:プロンプトから解析します)。2. プラットフォームと収益化 — マニフェストを出力し(定型処理)、その後 バックグラウンドで作成を開始します:
projects create --install-editorによって Editor とモジュールをインストールし(数分かかります)、続けてプロジェクトを作成します。その間も会話を続けます。 - (合流) 結果をマニフェストと照合します。4. ソース管理。 5. パッケージ。
- プレイヤーの ID、その後クラフトフロア — 作成時の ID を確認するか、設定します。
craft-game-floorsを読み込みます。 - ビジュアルの基準 をクラフトスキルのアートバイブルに基づいて設定します。
- 保存と最初のコミット。
- 引き継ぎ と次の担当へのバトン。
数分かかる Editor のインストールをユーザーの回答中に並行して進めるため、セットアップをすぐに完了したように感じられます。
ステップ 1 — コンセプト
定型処理: プロンプトを仕様として扱います。ジャンル、次元(2D/3D)、見た目、規模、名前を解析して、2〜4 行の概要にまとめます。Defaults テーブルで不足を補い、読み返しは不要です。
ガイド付き: クライアントの複数選択ツール(Claude Code では AskUserQuestion、Copilot CLI では ask_user、VS Code では askQuestions)を使って質問します。ツールがない場合は、通常のテキストで質問します。ジャンル/コアループ · 次元と見た目(2D または 3D、ピクセルアート、ローポリ、スタイライズド、リアル調) · ゲームプレイ(「プレイヤーが刻々と何をするか」を一文で表したもの) · 規模(プロトタイプか複数シーンか、シングルプレイヤーかマルチプレイヤーか)を確認します。プロジェクト名を決めて、概要を書き、読み返します。この概要がテンプレート(ステップ 2)、パッケージ(ステップ 5)、基準(ステップ 7)を左右します。パレット/ムードを表す言葉やピクセルアートの見た目を記録してください。
ステップ 2 — プラットフォームと収益化、その後インストールを開始
2 つの決定事項です(定型処理:Defaults テーブルから補い、その後 マニフェストを出力します)。
- 対象プラットフォーム:Desktop、Mobile(iOS/Android)、WebGL、Console — それぞれ Editor の モジュール(
--module)に対応し、Mobile/WebGL ではパッケージをより軽量にする根拠になります。 - 収益化:なし/プレミアム/IAP/広告/混合 — これはステップ 9 の引き継ぎ内容を決めるだけです。
ユーザーがバージョンを指定していない限り、明示的に --editor-version latest を指定します。このフラグがない場合、create は保存済みのデフォルト、または古いインストール済み Editor を優先します。
前提条件を確認してから、バックグラウンドタスクとして作成を開始します(unity-cli にはモジュール名と認証/ライセンスの設定があります)。
unity --version
unity auth status --format json # if signed out: unity auth login
unity license status --format json # if none active: unity license activate
# Start in the BACKGROUND. Module names per platform are in the unity-cli skill.
# --bare only on the user's ask (see Mode).
unity projects create "<Name>" --path <dir> --editor-version latest \
--template <3d|2d> --install-editor --module <platform-modules> --accept-eula --format json
このコマンドはインストール完了を待ってからプロジェクトを作成するため、1 つの結果で両方を確認できます。ほかに質問することがなければ、そのまま待っていて構いません。
テンプレート: --template 3d/2d は、そのバージョンの URP テンプレート(com.unity.template.urp-blank、com.unity.template.universal-2d)に解決されます。これらはすべてのゲームで使うデフォルトです。組み込みテンプレート(完全な ID としての com.unity.template.3d/.2d)は 6.5 で非推奨になり、6.7 で削除されます。ユーザーが組み込みテンプレートを明示的に希望した場合にのみ指定してください。
ステップ 3 — 合流:プロジェクトの準備完了、結果の照合
バックグラウンドでの作成を待ち、JSON の結果を読み取ります。data.path はプロジェクト、data.version は Editor、data.editorInstalled は今回の実行で Editor がインストールされたかどうかを示します。
定型処理:結果をマニフェストと照合し、差異を説明します。 クラウドリンクのソフトフェイルも含みます(cloudLinked: false、警告があってもプロジェクトはそのままです。ステップ 6 ではこれを確認します)。リンク時の 403 は、保存済みのデフォルト組織が新しいプロジェクトを拒否している場合によく発生します。ID がないと判断する前に、unity projects link cloud <path> --cloud-org <an org the user owns> を再試行してください。結果に steps フィールドが含まれる場合は、その内容に沿ってステップごとに照合します。
--module が適用されるのは、実行中に Editor をインストールする場合のみです。data.editorInstalled: false の場合は、unity install-modules -e <version> -m <platform-modules> --accept-eula でプラットフォームモジュールを追加します(すでにインストール済みのものはスキップされます)。作成に失敗した場合はエラーを提示し(unity-cli のトラブルシューティングを参照)、ここで終了します。インストールに失敗するとプロジェクトは作成されず、Editor がなければ後続の処理も機能しません。
ステップ 4 — ソース管理
舗装済み: ローカル Git + Unity .gitignore。ガイド付き: 確認します — Git(GitHub / GitLab。アセットの多いゲームには --git-lfs)、Unity Version Control(--vcs uvcs — 大容量バイナリをネイティブに扱えるため、LFS は不要)、または完全なローカル運用。unity projects link vcs "<project-path>" --vcs … --git-token-from-stdin --no-initial-commit で接続します(トークンは stdin から渡します) — --no-initial-commit を指定すると、パッケージと .meta ファイルが存在する前に CLI が空のプロジェクトをコミットするのを防げます。実際の初回コミットはステップ 8 です。正確なフラグは unity-cli ワークフローを参照してください。
ステップ 5 — パッケージ
要件をパッケージのリストに対応付け、unity-package-management を介してインストールします(manifest.json を直接編集することは絶対に避けてください)。com.unity.pipeline(ステップ 7)を追加するには、Editor が開いた後に package add を実行します。パッケージを起動前に追加する必要がある場合は、C# インストーラースクリプトを使います(-quit の注意点が該当します)。このスキルには、ジャンル/プラットフォーム/収益化からパッケージへの対応表があります。舗装済み構成では、各フロアに必要なものを追加します。ゲームプレイカメラがある場合は Cinemachine(2D リグを含む)、ステップ 6 で ID を接続する場合は com.unity.services.authentication、クラウド連携プロジェクトではライブフロアのサービス一式(クラウドセーブ、リーダーボード、リモート設定)です — これらは今回のパスで追加し、シェル実行時には追加しません。テンプレートにはすでにレンダーパイプラインが用意されています — Built-in テンプレートに com.unity.render-pipelines.universal を追加することも、その逆も絶対に避けてください(マテリアルがピンク色になります)。インストール前にリストを読み上げて確認します(舗装済み構成では、ここで出力します)。インストール後に manifest.json を検証してください。
ステップ 6 — プレイヤー ID、その後にクラフトフロア
ID — 作成結果が切り替えの判断基準です(--bare の実行ではこのステップ全体を省略します。bare プロジェクトは --no-cloud を指定しない限り、引き続きクラウドに接続します。また、接続しなかった場合のコストはモード選択時に説明済みです)。結果に ID の対応が記載されている場合は、調整内容で確認してスキップし、認証を二重に接続しないでください。ID がなく、プロジェクトがクラウドに接続されている場合は接続します。services init と匿名サインインを、起動時に実行する小さなブートストラップスクリプト 1 つにまとめて開始し、完了を待たないでください(仕組みについては build-live-game の認証セクションを参照してください — ステップ 1 の前に確認済みです。見つからず、ユーザーが辞退した場合は接続をスキップし、ギャップを明記してください)。各サービス依存関係は計画上の項目として個別に記載し、辞退された場合はその項目だけを削除します。クラウド接続に失敗した場合、またはスキップした場合は、コストを明記してスキップします(セーブとランキングはローカルに留まります) — クラウド ID のないプロジェクトに対して services init を接続しないでください。プレイヤーには見えず、後からアップグレード可能です — これがライブフロアの土台です。
--bare の実行ではフロアもスキップします(モードセクションで説明したコストです)。それ以外の場合は**craft-game-floors スキルを読み込み**(ステップ 1 の前に確認済み)、ビルドを通じてフロアに従ってください — まずアートバイブル、次にカメラ、ライティング、フィードバック、オーディオ、シェル、ライブフロア、その完了ゲートの順です。存在する場合は、その値が以下のインライン代替値より優先されます。バージョンの不一致も同様です。見つからず、ユーザーが辞退した場合は代替値を使い、レポートにギャップを明記してください。
ステップ 7 — ビジュアルのベースライン
新規テンプレートは正しく描画されますが、デフォルトの見た目です。そのままにしておくと、エージェントは OnGUI に頼り、シェーダー名を推測するようになります。ゲームプレイ作業を始める前に、このフロアを適用してください。
まず、Editor を開く前に unity pipeline install --project-path "<project-path>" を実行します。 Editor で C# を実行する場合も、以下の unity command capture screenshot を実行する場合も、プロジェクトに com.unity.pipeline パッケージが必要です。新しい CLI では Create がデフォルトで追加するため、このインストールで変更はありません。古い CLI ではプロジェクトに追加されず、ステップ 5 の -batchmode インストーラーもこのパッケージには適用されません。インストールしてから開くのがサポートされている順序です。パッケージがないと、以下のすべてで接続に失敗します(unity-cli の Safe Mode 失敗を模倣します)。失敗コード(PIPELINE_MANIFEST_WRITE_FAILED、停止したままの STATUS_PIPELINE_LOAD_PENDING)と、停止した Editor の復旧方法については、references/skill-setup.md にまとめています。
次に unity open "<project-path>" を実行し、unity status が Editor の準備完了を報告するまで待ちます。その後、以下の各項目を Editor 内で C# を実行して適用します — これらのコマンドは unity-cli が担当します。ここで改めて導き出さないでください。
エディターの準備ができたら、スキル一覧に unity-pipeline がない場合は、そのガイドを読んでください —
場所とミラーリングの経路:references/skill-setup.md。
項目 1、2、5、6 は、手順 2 のデフォルトである URP テンプレートを前提としています。ユーザーが Built-in を明示的に選んだ場合は、記載どおりに実行しないでください。UniversalAdditionalCameraData、Light2D、urp-postprocessing の Volume フレームワーク、Universal Render Pipeline/* シェーダーは Built-in には存在しません。ポストプロセッシングにはレガシーの Post Processing Stack を使い、シェーダー名は Standard / Unlit/Color となります。項目 3〜4 は記載どおり適用できます。ユーザーが Built-in を希望しているため、migrate-birp-to-urp には手を出さないでください。
- ポストプロセッシング。 Global Volume — シーンのライティング値は
craft-game-floorsを読み込んだときに適用されます(以下の設定を上書きします)。読み込まない場合は、代替として Tonemapping(ACES)、Bloom intensity 0.5~1 @ threshold 0.9、Vignette ≈ 0.25 を設定し、メインカメラのUniversalAdditionalCameraDataでrenderPostProcessing = trueにします。必須サブスキル:urp-postprocessing— テンプレートによって Volume を作成し、HDR とレイヤーマスクを確認します。読み込まれていない場合は、これらの値を使って両方を自分で設定してください。 - カメラとライト。 2D → Orthographic、ブリーフの配色に基づいた単色の背景、テンプレートのシーンにライトがない場合はタイプが Global の
Light2Dを追加します(Sprite-Lit シェーダーはライトがないと黒く描画されます)。3D → Perspective、メインライトのシャドウを有効にします。craft-game-floorsのライティングパスを読み込むとテンプレートのデフォルトのライト設定が置き換わります。読み込まない場合は、テンプレートの Directional Light と Skybox を維持してください。 - 品質ティア。 まず
QualitySettings.namesを読み取ってください。ティア名はテンプレートごとに異なります。その後、主なターゲットに合うティアをQualitySettings.SetQualityLevelで設定します。デスクトップでは最高ティア、モバイル/WebGL では最低ティアを選びます。Color Space の Linear と Input System はテンプレートの設定のままにしてください。 - UI スタック。 HUD とメニューには uGUI Canvas + TextMeshPro または UI Toolkit を使います。
OnGUIは絶対に使わないでください。必須サブスキル:uiがプロジェクトに適した方式を選びます。読み込まれていない場合は、ブリーフに基づいてどちらかを選び、最終報告で選んだ方式とその理由を伝えてください。 - マテリアルとシェーダー。 URP では
Universal Render Pipeline/Lit、…/Unlit、…/2D/Sprite-Lit-Defaultまたは…/2D/Sprite-Unlit-Defaultを使ってください。URP でStandardとUnlit/Colorを使うと、ピンク色になったり色あせて表示されたりします。Shader.FindよりもGraphicsSettings.currentRenderPipeline.defaultMaterial/.default2DMaterialを優先し、Shader.Findがnullを返した場合はエラーとして扱ってください。defaultRenderPipelineではなくcurrentRenderPipelineを使ってください。品質ティアに独自のパイプラインアセットが設定されている場合があり、上記の項目 3 でティアを設定したためです。 - ピクセルアートのみ。 スプライトの Filter Mode を Point にし、Pixel Perfect Camera を使ってください —
2d-pixel-perfectを参照してください。見つからない場合は、両方を自分で設定し、報告でスキルセットアップのインストール経路に言及してください。
シーンを保存し、次の両方を確認してください — unity logs は使わないでください。これは CLI 独自のログを読み取るため、シーンの実際の見た目にかかわらず、問題なしと報告します。
- エディター側にレンダーパイプラインまたはシェーダーのエラーがないこと。
unity-cliからエディターコンソールを読み取るか、Editor.logを直接読んでください。プラットフォームごとのパスは、そのスキルの「Recovering from Safe Mode」セクションに記載されています。 unity command capture screenshot --output baseline.pngで、平坦な灰色ではなく、ライティングとトーンマッピングが反映された見た目になっていること。
ステップ 8 — 保存して最初のコミットを作成する
プロジェクトはステップ 7 ですでに開いているため、.meta ファイルは存在します(存在しない場合に限り unity open "<project-path>"
を実行してください。ヘッドレス環境/CI では、unity-package-management の「ヘッドレスでインポートして保存」方式を使用します)。ステップ 4 で設定した VCS を使ってコミットします。
- Git(GitHub/GitLab/ローカル):
すべてのcd "<project-path>" git add -A git status # Library/ Temp/ obj/ Build/ must NOT be staged git commit -m "Initial Unity project: <Name>".csファイル/アセットを、それぞれの.metaファイルと一緒にコミットします。 - Unity Version Control(UVCS): ステップ 4 のワークスペースからチェックインします。
gitの手順は不要です。 生成されたフォルダーは ignore ルールによって除外されたままになります。
ステップ 7 でスキルをプロジェクトにコピーした場合は、それらを含めるかどうか確認してください。ステップ 4 で --no-initial-commit を付けずにリンクした場合、CLI はすでに空のプロジェクトをコミットしています。コミットを二重に作成せず、追加のコミットを作成してください。
ステップ 9 — 引き継ぐ
ステップ 2 で確認した収益化方法に応じて、実際の統合に適したスキルを呼び出します。
- IAP → implement-in-app-purchases
- 広告 → levelplay-unity-integration
- アカウント/クラウドセーブ/エコノミー/リモート設定/リーダーボード → build-live-game
該当するスキルが読み込まれていない場合は、記憶に頼って統合せず、次の手順として skill-setup のインストール方法を案内してください。
引き継ぎメモを記述します(マニフェストで指定)。プロジェクトの CLAUDE.md または AGENTS.md に、冪等な一行を追記します。「ゲームプレイ、ゲームの手触り、オーディオ、シェル、またはライブ機能を構築するときは、craft-game-floors スキルを読み込んでください。インストールされていない場合は、unity skill install <client> を実行するかユーザーに確認してください(確認すること。はいという返答なしに実行しないでください)。」このメモをコミットします。ステップ 8 の後に追記した場合、メモはクローンに反映されません。このスキルが再度起動されなくても、以降のセッションではこのメモを通じてフロア構築に進めます。
プロジェクトのパス、Editor のバージョン、パイプラインとテンプレート、パッケージ、照合結果を含むマニフェスト、ID の状態、適用したベースライン、未導入のスキル、ビルドの完了基準となる craft-game-floors の完了条件、および次の手順を報告してください。
対象範囲 — このスキルで行わないこと
- ゲームプレイの足場は作成しません。 見た目のフロアを備え、実行可能な状態で各要素が接続されたプロジェクトを作成します。ゲーム自体は次の会話で扱います(
craft-game-floorsを使用)。例外はステップ 6 の単一のブートストラップスクリプトです。 - コマンドリファレンスは提供しません。 構文は
unity-cli/unity-package-managementに記載されています。 - create のデフォルト設定を再検討しません — 結果をもとに説明してください。Defaults テーブルはこのファイルにおける唯一の見解であり、ガイド付きインタビューは変更せずそのまま残します。
チェックリスト
- ステップ 1 の前に委任先のスキルを確認済み(
craft-game-floorsを含む):不足しているスキルの導入を提案したか、報告で明示した - モードを一度決定済み。paved モードでは、create の開始前にマニフェストを表示した
- 概要を確認済み。プラットフォームと収益化方法を記録した
-
--install-editorとモジュールを指定してバックグラウンドで作成し、Built-in が要求された場合を除き URP テンプレート(--template 3d/2d)を使用した。--bareはユーザーから求められた場合のみ使用した。結果を照合した - ソース管理を接続した(ステップ 4)、またはローカルの git と Unity
.gitignoreを設定した -
package add経由でパッケージを追加した(またはプロジェクトを開く前に C# スクリプトを使用した)。manifest.jsonを確認した。テンプレートにレンダーパイプラインのパッケージを追加していない - 結果から ID を確認したか、ステップ 6 で設定した(リンクに失敗した場合は費用を明示した)
-
craft-game-floorsを読み込んだ(または未導入であることを明示した)。Editor の準備ができた後にunity-pipelineを一度読んだ - ベースラインを適用した:Volume とカメラのポストプロセスを有効化し、品質ティアを設定し、UI スタックを用意した(
OnGUIは使用しない)。URP シェーダーを使用し、キャプチャを確認した -
.metaファイルが存在する。最初のコミットを作成した。Library/を除外した - 引き継ぎメモを追記した。該当する場合は引き継ぎを完了した
よくある間違い
--install-editorを指定すると Editor のインストール全体が完了するまで待機するため、バックグラウンドで実行せず、作成処理の完了を待ってしまう。- マニフェストが出力される前に作業を始める(paved)、または前提をマニフェストの外に隠すこと。マニフェストに記載されていないことは、前提と見なされません。
- 認証の設定を二重に行うこと。作成結果に ID が表示されている場合、ステップ 6 の設定は不要です。
- パッケージコマンドやスキルのスクリプトを使わず、
manifest.jsonを手動で編集すること。 - 必須のサブスキルが読み込まれていないのに、その作業を記憶だけで行い、ユーザーに知らせたり、インストールを提案したりしないこと。
Library//Temp//obj//Build/をコミットすること、または.metaファイルを伴わないスクリプトをコミットすること。- Editor モジュールを見落とすこと。モバイル向けターゲットには
android/iosが、WebGL にはwebglが必要です。 - 名前だけを見て
com.unity.template.2d/.3dを選ぶこと。これらは組み込みテンプレートです。--template 3d/2dを使用してください。 - ビジュアルのベースラインを設定しないこと。テンプレートのままの簡素な外観、
OnGUIの HUD、URP でのShader.Find("Standard")は避けてください。