Communityコーディング&開発github.com

huayuehua15-netizen/unity-gameplay-dev

AIがMCP(またはコマンドライン)を通じてUnity 3Dシングルプレイヤーゲームのプレイロジック開発を自律的に行えるようにします。GDD仕様からプレイ可能、テスト可能、ビルド可能なコードまでをカバー。Unity 6(6000.x、一人称視点、URP、UGUI、新しいInput System)におけるプロジェクトスキャフォールドとコード規約、入力システム、一人称コントローラー、クロスヘアインタラクション、Animatorステートマシン、UIパネルスタック/HUD、インベントリ/会話/セーブ/オブジェクトプール/オーディオ、NavMeshエネミーAI、Profilerパフォーマンス分析、ビルドとテストを提供します。

unity-gameplay-dev とは?

このスキルは、AIエージェント(Claude Code、Cursor、Codexなど)がUnity 6(6000.x LTS)向けのシングルプレイヤーゲームプレイ開発を効率的に行うための包括的なフレームワークです。MCPツールとPythonスクリプトを使用して、GDD(ゲームデザインドキュメント)の仕様からプレイ可能なコード、テスト、ビルドまでを自動化します。主要な機能として、プロジェクトスキャフォールド生成、新しいInput Systemを用いた一人称コントローラー、クロスヘアを使ったインタラクションシステム、UGUIベースのUIパネルスタックとHUD、インベントリ、会話、セーブシステム、オブジェクトプール、オーディオマネージャー、NavMeshを使用したエネミーAI、Profilerによるパフォーマンス分析、そしてテストとビルドの自動化が含まれます。このスキルは特に一人称視点の3Dゲーム向けに設計されていますが、2Dプロジェクト向けにアーキテクチャの一部を再利用するためのガイドラインも提供しています。SKILL.mdには詳細なワークフロー、MCP編集サイクル、機能開発の順序、テンプレート一覧、そして参照ドキュメントへのリンクが含まれており、AIが自律的にUnityプロジェクトを操作するための明確な手順が定義されています。

対応✓Claude Code✓Codex CLI✓Cursor
npx skills add https://github.com/huayuehua15-netizen/gamedev-agent-skills/tree/HEAD/plugins/unity-gameplay-dev/skills/unity-gameplay-dev

Installed? Explore more コーディング&開発 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Unity プレイロジック開発スキル(一人称視点 / Unity 6 / URP)

パスの約束(最初に読む):このファイル内の scripts/、references/、assets/ はすべて、この SKILL.md が置かれているディレクトリからの相対パスです。 スクリプトを実行する前に、そのディレクトリをカレントディレクトリにしてください。ホストによってインストール場所が異なります:Claude Code プラグインの場合はプラグインディレクトリ、Cursor/Codex の場合は install.ps1 によって <プロジェクト>/skills/game-dev/<スキル名>/ にインストールされます。 不明な場合は、glob でこの SKILL.md の絶対パスを特定し、絶対パスでスクリプトを呼び出してください。 プロジェクトルートで python scripts/xxx.py と叩くとファイルが見つからずエラーになります。

概要

このスキルは、GDD の仕様と 3D アセットをプレイ可能なゲーム機能に変換します。MCP を使用して Unity 内でスクリプトを作成・変更し、コンポーネントをアタッチし、アニメーションと UI を設定し、Play モードで検証し、テストを実行し、ビルドを出力します。デフォルトの技術スタック:Unity 6(6000.x LTS、6000.3 互換)、URP、UGUI、新しい Input System、Cinemachine 3(オプション)、シングルプレイヤー、オフライン。

境界

  • 対応:プレイロジック、コントローラー、インタラクション、UI、インベントリ/会話/セーブ、AI、オーディオ、テスト、ビルドとパフォーマンス分析。
  • 非対応:3D アセットの作成/インポート/マテリアル(unity-blender-mcp スキルに任せる);マルチプレイヤー(Netcode);シェーダーの手書き(エフェクトの選定アドバイスのみ)。
  • 対象プロジェクトは一人称視点。三人称/俯瞰視点でも同じアーキテクチャ(ステートマシン、入力、インタラクション、UI)を流用し、コントローラーとカメラブランチのみが異なります。詳細は references/02 を参照。
  • 2D プロジェクト:アーキテクチャ層(ステートマシン/イベントバス/セーブ/インベントリ/UI スタック)はそのまま使用できますが、キャラクター制御、物理、ナビゲーション、パフォーマンス予算は変更する必要があります。 詳細は references/11-2d-gameplay.md を参照。3D の CharacterController + NavMesh を 2D で使用しないでください。

事前環境

  • Unity 6000.x(6000.0 LTS は 2026 年 10 月までサポート、その後は 6000.3 LTS にアップグレードしてください。コードは両バージョンで互換性があります)。
  • 必須パッケージ:com.unity.inputsystem(新しい入力システム)、com.unity.ugui(UGUI)、com.unity.ai.navigation(NavMesh のベイク処理)、com.unity.test-framework(テスト、スキャフォールドが --tests で自動生成);オプション:com.unity.cinemachine、URP com.unity.render-pipelines.universal。
  • パッケージのインストールは MCP manage_packages を使用するか、スキャフォールドが manifest を自動で書き込みます(Input System / UGUI / テストフレームワーク。バージョンはエディタに組み込まれたものとメインラインのバージョンフォールバックテーブルに従って解析)。インストール後、Project Settings → Active Input Handling を Both に設定してください(スキャフォールドが activeInputHandler: 2 を書き込みます)。
  • バージョン確認:ProjectSettings/ProjectVersion.txt を確認。API が不明な場合は unity_docs / unity_reflect を使用し、不慣れな API を記憶だけで記述しないでください。

標準ワークフロー(GDD からプレイ可能な機能へ)

フロー A:新規プロジェクトのゼロからの構築

  1. バージョンとレンダーパイプラインの確認:manage_editor でエディタバージョンを読み取る。プロジェクトが URP か Built-in か(マテリアルとポストエフェクトが異なる)。
  2. スキャフォールドの実行:python scripts/new_gameplay.py --out "<プロジェクト>/Assets/Game" --namespace <ゲーム名> を実行し、フレームワークコード、asmdef、テストアセンブリを生成します。これにより Input System の依存関係も自動で補完されます。一度 Unity を開いてパッケージをダウンロードしてから、もう一度スキャフォールドを実行して asmdef GUID を埋め戻してください。
    • ⚠️ 初回コンパイル時に CS0234/CS0246(UnityEngine.InputSystem が見つからない)が発生するのは想定内であり、スキャフォールドのバグではありません。新しいプロジェクトではパッケージがまだダウンロードされていないため、InputSystem の asmdef GUID が読み込めません。一度 Unity を開いてパッケージをダウンロード → スキャフォールドを再実行 → GUID が埋め戻される → 再コンパイルでエラーゼロになります。
    • Unity 6000.0.84f1 で実際にテスト済み:再実行後、コンパイルエラーはゼロ、InventoryTests は 3/3 パスしました。
  3. シーンのガイドオブジェクトをセットアップ:references/01 に従って起動シーン(GameManager、AudioManager、UIManager、EventSystem、Canvas)を作成し、manage_gameobject / manage_components を使用します。
  4. 機能の順序に従って実装:入力 → 一人称コントローラー → インタラクション → HUD → 具体的なプレイシステム → AI → オーディオ/VFX(順序は以下の「機能開発の順序」を参照)。
  5. 機能ごとに検証:各機能を完了するごとに、Play モードで手動テスト + EditMode/PlayMode テストを作成します。詳細は references/00 の検証サイクルを参照。
  6. ナビゲーション/ベイク/ビルド:NavMesh のベイク、シーンのビルド設定への追加、ビルド前のチェックリスト。詳細は references/08、references/09 を参照。

フロー B:個別機能の開発(最も一般的)

GDD の該当ページ(キャラクター/インタラクション/システム/会話/アニメーションの仕様)を読む → 変更するスクリプトとコンポーネントをリストアップ → テンプレートを選ぶか新規作成 → MCP 編集サイクルに従って実装 → Play で検証 → テストを追加 → 機能完了定義を更新。

フロー C:トラブルシューティングと最適化

コンパイル/実行時エラーは references/10 を参照。フレーム落ち/スタッターは references/08 の Profiler フローを参照。MCP 操作の失敗は references/00 のフォールバック計画を参照。

MCP 編集サイクル(コードを変更するたびに遵守)

  1. refresh_unity でまずディスクと同期。read_console で開始時にエラーがないことを確認。
  2. スクリプト作成:create_script。スクリプト変更:**優先的に script_apply_edits(構造化されたメソッドレベルの編集)**を使用し、小さな変更のみ apply_text_edits を使用。変更後 validate_script を実行。
  3. refresh_unity でコンパイルをトリガー → read_console でコンパイル結果を確認(CS エラーがあればすぐに修正し、エラーを残して先に進まない)。
  4. コンポーネントのアタッチ/参照の設定:manage_components / manage_gameobject。アニメーションは manage_animation を使用。UI は manage_gameobject を使用(UI Toolkit の場合のみ manage_ui を使用)。
  5. Play モードで検証:manage_editor で playmode を切り替え、read_console で実行時例外を確認。視点/操作感は find_gameobjects で Transform の状態を読み取って確認し、必要に応じて execute_code で Game View のスクリーンショットを取得。
  6. 競合しない複数の操作は batch_execute にまとめる。各機能の終了前に manage_scene で保存。

機能開発の順序(スキャフォールド後)

1. 入力 InputReader(スキャフォールドで生成済み)→ シーンに Player をアタッチし、WASD/マウスで動かす
2. 一人称 PlayerLook + FirstPersonController(歩く、走る、ジャンプ、しゃがむ、着地)
   - 2D プロジェクトの場合は `PlatformerController2D` を使用(`--dimension 2d` 指定時に自動生成、3D 専用ファイルは生成されない)
3. インタラクション Interactor + ドア/拾い物(クロスヘア UI との連携)
4. HUD + メニューパネルスタック(UIManager、ESC で一時停止)
5. プレイシステム:Health/インベントリ/会話(GDD に応じて取捨選択)
6. セーブ SaveSystem(実装済みシステムを ISaveable に接続)
7. エネミーAI:NavMesh ベイク + EnemyAI + 知覚
8. オーディオ AudioManager + ミキサー;VFX(パーティクル/マズルフラッシュ/ヒット)
9. パフォーマンス Profiler でフレーム分析;ビルド出力(references/08、09)

スキャフォールドとテンプレート

python scripts/new_gameplay.py --out "D:/MyProject/Assets/Game" --namespace MyGame
#   --no-tests:テストアセンブリを生成しない
#   --editor-data "Editor/Data へのパス":Input System のバージョンを解析(指定しない場合はバージョンフォールバックテーブルに従う)

テンプレート一覧(assets/templates/)。テンプレートには {{NS}} 名前空間プレースホルダーが含まれています。手動でコピーする場合は事前に置換するか、new_gameplay.py を実行して自動生成してください。そうしないとコンパイルできません。

モジュールファイル用途
CorePersistentSingleton / StateMachine / EventBus / GameManager / GameEventsシングルトン、ステートマシン、イベントバス、ゲームフロー(メニュー/ゲーム/一時停止/ロード)
InputInputReader新しい Input System のコード化ラッパー、キーボードマウス+ゲームパッド
PlayerFirstPersonController / PlayerLook / PlatformerController2D3D:CharacterController 移動、マウス視点、走る/ジャンプ/しゃがむ。2D:Rigidbody2D プラットフォーマージャンプ(coyote time / jump buffer / 可変ジャンプ高含む)
InteractionInteractableBase / Interactor / PickupItemクロスヘアインタラクション、拾い物サンプル
SystemsHealth / Inventory / SaveSystem / DialogueRunner / ObjectPool / AudioManagerHP、インベントリ、JSON セーブ、リニアな会話、オブジェクトプール、オーディオ
AIEnemyAI / EnemyPerceptionNavMesh 巡回/追跡/攻撃ステートマシン + 視錐台による知覚
UIUIPanel / UIManager / HUDControllerパネルスタック、HUD HPバー/インジケータ/字幕
TestsInventoryTests(+ asmdef)インベントリロジックのテストサンプル、run_tests で実行可能

参考ドキュメント一覧(必要に応じてロード)

  • references/00-mcp-code-workflow.md:47 の MCP ツールとプレイタスクのマッピング、編集サイクル、Play 検証、テスト、MCP がない場合のフォールバック
  • references/01-architecture.md:ディレクトリ構成、asmdef、命名規則、データ駆動、参照/イベント/シングルトンの使用境界、ScriptableObject
  • references/02-input-and-fp-controller.md:Input System の実装、Player プレハブ階層、一人称移動/視点パラメータテーブル、三人称/俯瞰ブランチ
  • references/03-interaction-animation.md:インタラクション層、Animator ステートマシン/Blend Tree/ルートモーション、アニメーションイベント、Humanoid の連携
  • references/04-ui-ugui.md:Canvas/EventSystem のセットアップ、パネルスタック、HUD、一時停止、入力切り替え
  • references/05-gameplay-systems.md:HP/インベントリ/会話/セーブ/オブジェクトプールの使用方法と拡張ルール、データ定義
  • references/06-ai-navigation.md:NavMesh ベイク、敵設定、巡回ポイント、知覚パラメータ調整、状態拡張
  • references/07-audio-vfx.md:AudioMixer グループ、オーディオプール、音楽クロスフェード、パーティクル/VFX Graph の選定
  • references/08-performance.md:60fps 予算、Profiler/Frame Debugger フロー、一般的なボトルネック
  • references/09-build-release.md:ビルド設定、シーンリスト、Steam/Deck チェック、セーブ互換性
  • references/10-troubleshooting.md:コンパイル/ヌル参照/実行順序/入力/ナビゲーション/UI の一般的なエラー対応
  • references/11-2d-gameplay.md:2D プロジェクトを扱う前に読むこと。2D パッケージのインストール、Sprite インポート、Physics2D とレイヤーマトリックス、 2D プラットフォーマージャンプ(coyote time/jump buffer)、Tilemap と Composite コリジョン、ピクセルパーフェクトカメラ、 overdraw と Batch で数える 2D 予算(トライアングル数の予算表は 2D では無意味)。

2D プロジェクトの注意:このスキルの C# テンプレートはデフォルトで 3D 一人称(CharacterController、NavMesh)用です。 2D プロジェクトでは、次元に依存しない部分(EventBus、StateMachine、Inventory、SaveSystem、Health、 ObjectPool、UIManager、AudioManager)を流用し、コントローラー、ナビゲーション、物理、パフォーマンス予算は references/11 に従って書き直してください。

鉄則

  • 数値は GDD から:移動速度、ジャンプ力、ダメージ、判定フレーム、視野距離はすべて Inspector で公開し、GDD の該当ページと一致させること。GDD に記載がない場合は 【要確認】 とマークし、数値をでっち上げないこと。
  • 各ステップは検証可能であること:コード変更後はコンパイルエラーゼロ、Play モードで実機確認。操作感(移動/視点/攻撃)は Transform/状態の証拠を記録できること。「たぶん大丈夫」では認められない。
  • コンパイルの偽装禁止:validate_script または read_console でエラーが解消されていない場合、完了とはみなさない。この環境で検証できない場合は明示的に宣言し、結果をでっち上げないこと。
  • データとロジックの分離:調整可能な数値は SerializeField/ScriptableObject を使用。表現層はイベントを購読し、システムクラスに直接記述しない。
  • 命名ルール:クラスは PascalCase。ファイル名はメインクラス名と一致。シーン/プレハブは Level_01_、PF_Player。定数に日本語は含めない。Console に CS ワーニングが出た場合も修正すること。
  • 小さなコミット:一つの機能で一つのコミット。変更前はシーンを保存/バックアップ。危険な操作(削除、コンポーネントの一括変更)は事前に影響オブジェクトをリストアップ。

機能完了定義(DoD)

  • 実装したロジックが GDD の該当ページと一致し、数値がトレース可能であること(業界デフォルト値は注釈済み)
  • コンパイルエラーゼロ、ワーニングゼロ(read_console のスクリーンショット/表示で証明)
  • Play モードの実機確認が通っていること:入力、状態切り替え、インタラクション、フィードバックがすべて再現可能
  • 単体テスト可能なロジックにはテストが存在すること(run_tests でグリーン)
  • 関連する参照、コンポーネント、階層設定が完全であること(プレハブを空シーンにドラッグするだけで使用可能であり、手動での一時的な接続に依存しない)
  • セーブに新しいフィールドを追加した場合はバージョン番号を処理。新しいシーンを追加した場合は Build Settings に含まれていること
  • パフォーマンスに新しいボトルネックがないこと(目標 60fps、モバイル/Deck の場合は 08 を参照)

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

huayuehua15-netizen/aaa-game-gdd

3A 级 3D 游戏开发文档(GDD)设计与审校技能:把模糊的游戏想法转化为可直接交付开发、达到 Steam 上架标准、对标 3A 大作的完整文档体系。覆盖游戏愿景与 Pitch、美术圣经、场景与关卡描述、主线玩法与系统数值、剧情叙事与台词脚本、交互与 UI/UX、角色设定、物品/道具建模规格、动画与帧动画规格、音频设计、技术架构与性能预算、QA 与 Steam 上架验收。当用户要写游戏策划案、GDD、游戏设计文档、场景/关卡/玩法/台词/交互/建模/动画规格、美术需求单,或需要审校游戏文档是否达到可开发、可上架、对标 3A 的质量时使用。支持 Unity/Unreal/Godot,附带一键脚手架脚本生成整套文档树。 English: AAA-grade game design document (GDD) authoring and review for Steam-ready games. Covers vision/pitch, art bible, level specs, gameplay systems and numbers, narrative and dialogue, UI/UX, character/prop/animation/audio specs, tech performance budgets, and QA plus Steam release checklists. Supports Unity, Unreal and Godot. Use when writing or reviewing a GDD, game design doc, level/scene spec, art brief, or release QA checklist.

huayuehua15-netizen/unity-blender-mcp

通过 MCP 自主操作 Unity 与 Blender,完成 3D 游戏资产的搜索复用、建模、清洗、导出、导入与验收全流程。核心原则是素材优先:优先从 MCP 内置素材源(Sketchfab、Poly Haven)与外部素材库(3d66 等国内站、TurboSquid、CGTrader、Kenney、Quaternius、Mixamo、AI 生成等)搜索复用现成资产,搜不到再在 Blender 自建。涵盖 MCP 工具发现与连接、bpy 自动化建模与批处理、素材审计清洗、Unity 正确 FBX 导出、Unity 导入设置(材质/LOD/碰撞/骨骼动画/Prefab)、批量导入后处理与故障排查。当用户要求用 MCP 操作 Blender 或 Unity、找 3D 模型/素材/动画、把下载素材导入 Unity、处理素材格式与授权、Blender 建模或改模、导出 FBX、搭建 Blender→Unity 管线、修复粉色材质/缩放/法线/轴/碰撞/动画异常时使用。 English: Asset-first 3D pipeline driving Unity and Blender through MCP: search and reuse existing assets, audit and clean them, export FBX, and import into Unity with correct materials, LODs, colliders, skinned animation and prefabs. Use when sourcing 3D assets, building a Blender-to-Unity pipeline, or fixing pink materials, scale, normals, axes, colliders or animation issues.

関連スキル