Communitygithub.com

gamedev-skills/awesome-gamedev-agent-skills

게임 개발을 위한 AI 코딩 에이전트 스킬: 한 번 설치하면 마스터 라우터가 엔진과 작업에 맞는 적절한 스킬을 로드합니다. Claude Code, Cursor, Codex, Copilot, Gemini CLI 등에서 실행되는 이식 가능한 SKILL.md 형식의 66개의 원본, 버전 고정 스킬(마스터 라우터 포함)이며, Godot, Unity, Unreal, 웹 및 그 이상을 지원합니다.

awesome-gamedev-agent-skills란 무엇인가요?

이 스킬은 게임 개발 작업을 위한 AI 코딩 에이전트용 마스터 라우터 디스패처입니다. 프로젝트의 파일 구조를 분석하여 Godot, Unity, Unreal, Bevy, Phaser 등 사용 중인 게임 엔진을 자동으로 감지하고, 사용자의 요청에서 작업 유형(예: 적 AI, 절차적 생성, 대화 시스템 등)을 분류하여 최소한의 전문화된 스킬 집합을 로드합니다. Claude Code, Cursor, Codex, Copilot, Gemini CLI 등 다양한 AI 코딩 에이전트 플랫폼에서 실행되도록 설계된 이식 가능한 SKILL.md 형식을 사용합니다. 66개의 버전 고정 스킬을 제공하며, 각 스킬은 엔진 기본기, 분야 개념, 장르 템플릿, 작업 흐름을 다룹니다. 라우터는 엔진이 감지되지 않거나 적절한 스킬이 없을 때를 위한 폴백 전략을 포함하며, 프로그레시브 공개 원칙에 따라 필요한 스킬만 로드하여 컨텍스트를 효율적으로 관리합니다.

지원 대상✓Claude Code✓Codex CLI✓Cursor✓Gemini CLI
npx skills add gamedev-skills/awesome-gamedev-agent-skills

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

마스터 라우터 — 게임 개발 스킬 디스패처

게임 개발 작업의 진입점입니다. 프로젝트를 식별하여 하나의 엔진을 선택하고, 요청에서 작업을 분류하며, 최소 전문 스킬 집합을 지정하고, 실행 전에 이를 읽도록 안내합니다. 디스패치 및 구성을 수행하며, 엔진 API를 다시 가르치지 않습니다.

사용 시기

  • 게임 개발 요청의 시작 — 게임, 레벨, 플레이어, 적, 셰이더, UI, 저장 시스템, 멀티플레이어, 입력, 오디오, AI, 대화 또는 절차적 콘텐츠를 만들거나 디버깅할 때 — 로드할 스킬을 결정하기 위해 사용합니다.
  • 사용자가 엔진이나 장르를 언급하거나, "게임을 만들어"라고 말하거나, "어떤 스킬을 사용해야 하나요?"라고 물을 때 사용합니다.

사용하지 말아야 할 때: 올바른 스킬이 로드되고 작업이 해당 스킬 내에 완전히 포함되면, 해당 스킬에서 작업을 진행하세요. 매 턴마다 라우터를 다시 실행하지 마십시오. 작업이 새로운 엔진이나 관심사로 전환될 때만 다시 라우팅합니다(라우터 6단계).

라우팅 알고리즘

  1. 엔진 감지 — 프로젝트 지문 → 최대 하나의 엔진 스킬 세트(또는 "알 수 없음"). §1.
  2. 작업 분류 — 표현 → 분야 + 최대 하나의 장르 + 작업 흐름. §2.
  3. 해결 — 최소 집합: 엔진 스킬 + 분야 + 장르 + 작업 흐름. §3.
  4. 읽기(공개) — 선택된 SKILL.md 본문만 열고, references/는 요청 시에만 엽니다. §4.
  5. 구성 — 순서: 엔진 기본 → 분야 개념 → 장르 접착제 → 작업 흐름. §5.
  6. 폴백 — 엔진을 알 수 없거나 적합한 스킬이 없는 경우 → 묻거나 Godot으로 기본 설정하고, 모든 격차를 명시합니다. §6.

1. 엔진 감지 (프로젝트 지문)

가장 신뢰도가 높은 신호를 스캔하고, 정확히 하나의 엔진을 선택합니다. 첫 번째 일치에서 중단합니다.

#엔진기본 신호스킬 세트 루트
1Godotproject.godotskills/godot/
2Unreal*.uprojectskills/unreal/
3UnityAssets/ 및 ProjectSettings/ProjectVersion.txtskills/unity/
4Bevybevy 종속성이 있는 Cargo.tomlskills/other-engines/bevy-ecs/
5Phaserpackage.json dep phaserskills/web-engines/phaser-*
6PixiJSpackage.json dep pixi.jsskills/web-engines/pixijs-rendering/
7three.jspackage.json dep threeskills/web-engines/threejs-*
8LÖVEconf.lua / main.lua에서 love.* 호출skills/other-engines/love2d-core/
9pygameimport pygame가 있는 *.pyskills/other-engines/pygame-core/
10Roblox*.rbxl(x) / *.project.json (Rojo)skills/other-engines/roblox-*

보조 신호, Godot-C#/Unity/Bevy 및 멀티 웹 명확화 규칙, 모노레포 및 일반 텍스트 엔진 언급에 대해서는 references/engine-detection.md를 읽으십시오.

2. 작업 분류 (표현 → 범주)

엔진 다음에, 요청에서 작업 신호(세 가지 가산 범주)를 읽습니다.

  • 분야(엔진 간 개념): game-ai, procedural-gen, dialogue-systems, save-systems, audio-design, shader-programming, physics-tuning, level-design, input-systems, game-feel, camera-systems, game-ui-ux, performance-optimization. 개념 단어("경로 찾기", "저장 슬롯", "프래그먼트 셰이더", "화면 흔들림", "카메라 따라가기", "HUD/메뉴", "최적화/낮은 FPS")에 의해 트리거됩니다.
  • 장르(전체 게임 템플릿): platformer, roguelike, rpg, fps-shooter, tower-defense, card-game, visual-novel, survival-crafting, puzzle. 장르 단어("로그라이크를 만들어", "덱빌더")에 의해 트리거됩니다.
  • 작업 흐름(프로세스/출시): game-jam, prototype-fast, steam-publish, itch-publish. 프로세스 단어("Steam에 출시", "수직 슬라이스")에 의해 트리거됩니다.

파일 신호가 이를 더욱 명확하게 합니다: *.yarn/*.ink → dialogue-systems/visual-novel; steam_appid.txt → steam-publish; *.inputactions → unity-input-system.

3. 라우팅 테이블 (작업 → 범주 → 스킬)

3a. 엔진 스킬 — 감지된 엔진 + 하위 작업과 일치하는 것을 읽습니다.

  • Godot (skills/godot/): 언어 godot-gdscript / godot-csharp; 구조 godot-nodes-scenes, godot-signals-groups; 2D godot-2d-movement, godot-tilemap; 3D godot-3d-essentials; 물리 godot-physics; UI godot-ui-control; 애니메이션 godot-animation; 셰이더 godot-shaders; 데이터 godot-resources; 오디오 godot-audio; 네트워크 코드 godot-multiplayer; 출시 godot-export.
  • Unity (skills/unity/): 스크립팅 unity-csharp-scripting; 입력 unity-input-system; 물리 unity-physics; 애니메이션 unity-animation; 데이터 unity-scriptableobjects; 2D unity-tilemap-2d; AI 내비게이션 unity-navmesh; 출시 unity-build-pipeline.
  • Unreal (skills/unreal/): 비주얼 스크립팅 unreal-blueprints; C++ 게임플레이 unreal-cpp-gameplay; 입력 unreal-enhanced-input; AI unreal-behavior-trees; VFX unreal-niagara; 출시 unreal-packaging.
  • 웹 (skills/web-engines/): phaser-core, phaser-arcade-physics; pixijs-rendering; threejs-scene-setup, threejs-gltf-loading, threejs-materials-lighting.
  • 기타 (skills/other-engines/): bevy-ecs, pygame-core, love2d-core, roblox-luau, roblox-datastores.

3b. 분야 — 엔진 스킬과 함께 로드 (개념 ↔ 엔진 API)

개념 (말함:)분야 스킬페어링 대상 (엔진 API)
적 AI, 행동 트리, 경로 찾기, 조향game-aiunity-navmesh / unreal-behavior-trees / Godot 내비게이션
절차적 생성, 노이즈, 시드, 던전 생성기procedural-gen엔진 타일맵/그리드 스킬
대화, Yarn, Ink, 대화 트리dialogue-systems엔진 UI 스킬
저장/로드, 슬롯, 지속성save-systemsroblox-datastores / 엔진 IO
적응형 음악, 믹서, 덕킹, SFXaudio-designgodot-audio / Unity AudioMixer
셰이더, 프래그먼트, 디졸브/아웃라인shader-programminggodot-shaders / 엔진 머티리얼
지터, 터널링, 고정 타임스텝physics-tuninggodot-physics / unity-physics
화이트박스, 블록아웃, 타일 레이아웃, 페이싱level-designgodot-tilemap / unity-tilemap-2d
키 재할당, 게임패드, 입력 버퍼링input-systemsunity-input-system / unreal-enhanced-input / Godot InputMap
화면 흔들림, 힛스탑, 쥬스, 스쿼시 & 스트레치, "펀치감 있게"game-feel엔진 애니메이션/트윈 + camera-systems (흔들림)
카메라 추적, 데드존, 예측, 궤도, 1인칭camera-systemsgodot-2d-movement / godot-3d-essentials / Cinemachine
HUD, 메뉴, UI 레이아웃, 스케일링, 안전 영역, 포커스 탐색game-ui-uxgodot-ui-control / Unity UI (UGUI/UI Toolkit)
낮은 FPS, 최적화, 드로우 콜, GC 스파이크, 풀링, 프로파일러performance-optimization엔진 프로파일러 + physics-tuning

3c. 장르 — 엔진 + 분야 구성 (*를 감지된 엔진에 바인딩)

장르 (말함:)구성
플랫포머, 점프, 이중 점프godot-2d-movement (또는 엔진 물리) + godot-tilemap/unity-tilemap-2d + level-design + camera-systems + game-feel
로그라이크, 절차적 던전, 영구 죽음procedural-gen + godot-tilemap/unity-tilemap-2d + game-ai + save-systems + game-feel
RPG, 스탯, 인벤토리, 퀘스트godot-resources/unity-scriptableobjects + dialogue-systems + save-systems + game-ui-ux
FPS, 1인칭, 힛스캔godot-3d-essentials/unreal-cpp-gameplay + input-systems + game-ai + camera-systems + game-feel
타워 디펜스, 웨이브, 레인game-ai + 엔진 이동 + level-design + game-ui-ux
카드 게임, 덱빌더, TCGgodot-resources/unity-scriptableobjects + game-ui-ux (+ 엔진 UI)
비주얼 노벨, 분기형 스토리dialogue-systems + save-systems + game-ui-ux
서바이벌, 제작, 채집save-systems + godot-resources/unity-scriptableobjects + procedural-gen + game-ui-ux
퍼즐, 매치-3, 그리드 로직godot-tilemap/unity-tilemap-2d + level-design + game-feel

3d. 작업 흐름 — 엔진 독립적 프로세스 및 출시

game-jam (잼, 48시간, Ludum Dare/GMTK) · prototype-fast (수직 슬라이스, MVP, 그레이박스) · steam-publish (Steam, Steamworks, depot; steam_appid.txt) · itch-publish (itch.io, butler; .itch.toml).

모든 스킬별 트리거 목록과 모든 엔진 바인딩에 대해서는 references/routing-table.md를 읽으십시오.

4. 읽기 프로토콜 (점진적 공개)

  1. 미리 로드됨: 각 스킬의 name + description만 컨텍스트에 있습니다. 이것들과 지문을 기반으로 결정하며, 본문을 미리 읽지 않습니다.
  2. 선택 시: 선택된 각 skills/<category>/<name>/SKILL.md의 본문을 읽습니다. 그리고 그것들만 읽습니다. 전체 범주를 일괄 로드하지 마십시오.
  3. 요청 시: 하위 작업에 해당 깊이가 필요할 때만 스킬에 번들된 references/ 파일을 읽습니다(스킬 본문이 시기를 알려줍니다).
  4. 전환 시 재라우팅: 작업이 변경되면(이동 → 저장), 모든 것을 로드된 상태로 유지하는 대신 새로 관련된 스킬을 선택하고 읽습니다.

무엇을 로드하고 그 이유를 알리십시오. 예: "Godot (project.godot) 감지됨. 컨트롤러를 위해 godot-2d-movement를, 점프 감각을 위해 platformer를 로드합니다. 카이요트 타임/버퍼링을 원하시면 플랫포머 스킬의 feel-tuning.md 참조를 열겠습니다."

5. 구성 규칙

  • 하나의 엔진 세트, 가산적 개념. 정확히 하나의 엔진 스킬 세트; 작업에 필요한 분야를 추가하고 일반적으로 최대 하나의 장르를 추가합니다. 작업 흐름은 독립적으로 첨부됩니다.
  • 순서: 엔진 기본 → 분야 개념 → 장르 오케스트레이션 → 작업 흐름.
  • 중복 시 소유권: 엔진 스킬은 API/구문을 소유합니다. 분야 스킬은 이식 가능한 개념/알고리즘을 소유하고 코드에 대해 엔진 스킬에 위임합니다. 장르 스킬은 구조/접착제를 소유하고 기본 요소를 다시 가르치는 대신 외부로 연결합니다.
  • 인계: 장르의 composes가 *-2d-movement와 같은 슬롯을 지정하면 감지된 엔진에 바인딩합니다. 해당 엔진에 정확한 스킬이 없으면 §6 및 references/routing-table.md("바인딩 격차")를 참조하십시오.

6. 알 수 없는 엔진 및 스킬 없음 폴백

엔진을 알 수 없음 (지문 없음, 엔진 이름 없음):

  1. 요청에서 일반 텍스트 엔진 이름("Unity에서", "Phaser 사용")을 확인합니다. 발견되면 채택합니다.
  2. 작업이 순수한 개념/장르/작업 흐름 질문인 경우 엔진에 구애받지 않는 분야/장르/작업 흐름 스킬로 직접 라우팅합니다. 엔진이 필요하지 않습니다("좋은 저장 형식은 무엇인가요?" → save-systems).
  3. 엔진 선택이 실제로 답변을 차단하는 경우에만, 하나의 목표 질문을 합니다("어떤 엔진을 사용하시겠습니까? Godot, Unity, Unreal, 웹/기타 엔진?"). 사용자가 선호하는 것이 없고 엔진이 필요한 경우 Godot으로 기본 설정하고(여기서 가장 완벽하게 다루는 엔진) 그렇게 말합니다.
  4. 추측으로 엔진을 만들거나 엔진 스킬을 로드하지 마십시오.

엔진은 알지만 하위 작업을 다루는 스킬이 없음: 가장 가까운 엔진 스킬과 관련 분야를 로드하고 격차를 명확하게 명시합니다(예: "전용 Unity 2D 이동 스킬 없음; unity-csharp-scripting + unity-physics 사용"). 스킬 이름을 절대 지어내지 마십시오.

충돌/다중 장르: 표현에서 지배적인 장르를 선택하고, 보조 장르를 언급하고 사용자가 확인하면 로드하겠다고 제안합니다.

작업 예시

요청감지된 엔진로드된 스킬 (순서대로)
"내 Godot 플레이어에 더블 점프 추가"Godot (project.godot)godot-2d-movement → platformer
"내 Unity RPG용 인벤토리 만들기"Unity (Assets/+ProjectSettings/)unity-scriptableobjects → rpg → save-systems
"Godot에서 절차적 던전 로그라이크"Godotgodot-tilemap → procedural-gen → roguelike
".yarn 파일의 분기 대화"(필요 없음)dialogue-systems (+ 엔진이 감지되면 엔진 UI 스킬)
"마이그레이션이 있는 저장 슬롯을 어떻게 설계하나요?"(없음)save-systems만
"내 게임을 butler로 itch에 출시"(모든/없음)itch-publish만
"게임을 만들고 싶지만 무엇을 사용해야 할지 모르겠습니다"알 수 없음 → 묻기, Godot 기본 설정라우터가 한 번 묻습니다. 그런 다음 예: godot-nodes-scenes
"내 Godot 게임에서 히트감 있게 만들기"Godot (project.godot)game-feel (+ 흔들림을 위한 camera-systems)
"카메라가 내 플레이어를 부드럽게 따라가야 합니다"(감지된 엔진)camera-systems (+ 엔진 이동 스킬)
"내 Unity 게임이 30 FPS로 떨어집니다. 최적화하세요"Unity (Assets/+ProjectSettings/)performance-optimization (먼저 프로파일링) → 엔진 스킬

참조

  • 전체 엔진 지문, 보조 신호 및 명확화: references/engine-detection.md.
  • 모든 스킬별 트리거 단어, 엔진 바인딩 및 바인딩 격차: references/routing-table.md.

관련 스킬