Unity의 AI 기반 파티클 시스템: ParticleSystem 확장
AI 에이전트가 Unity의 24개 ParticleSystem 모듈을 모두 읽고 수정합니다. 자연어 프롬프트로 불, 연기, 마법 효과 등을 만들어 보세요.

Unity의 ParticleSystem은 엔진에서 가장 강력하면서도 가장 복잡한 컴포넌트 중 하나입니다. 24개의 개별 모듈, 수백 개의 파라미터, 깊게 중첩된 설정으로 인해 파티클 효과를 직접 구성하려면 끝없는 인스펙터 패널을 클릭해야 합니다. AI에게 "주황색에서 투명으로 사라지는 불 파티클을 만들어 줘"라고 말하면 몇 초 만에 완성된다면 어떨까요? 바로 그것이 Unity-AI-ParticleSystem 확장이 가능하게 하는 일입니다.
Unity-AI-ParticleSystem이란?
Unity-AI-ParticleSystem은 AI Game Developer용 확장으로, particle-system-get과 particle-system-modify라는 두 개의 MCP 도구를 추가하여 AI 에이전트에게 Unity 프로젝트의 모든 ParticleSystem 모듈에 대한 완전한 읽기 및 쓰기 권한을 부여합니다. Claude Code, VS Code Copilot, Cursor, Windsurf 등 MCP 호환 AI 클라이언트라면 무엇이든 함께 작동합니다.
두 개의 도구, 완벽한 커버리지
이 확장은 단 두 개의 MCP 도구만 노출하지만, 그것으로 모든 것을 커버합니다. get 도구는 모든 ParticleSystem의 현재 상태를 읽고, modify 도구는 부분 업데이트를 적용하여 지정한 속성만 변경하고 나머지는 그대로 둡니다.
particle-system-get
재생 상태(isPlaying, isPaused, particleCount)와 24개 모듈의 임의 조합을 포함한 ParticleSystem의 전체 상태를 가져옵니다. 개별 모듈을 요청하거나 includeAll 플래그를 사용해 한 번에 모든 것을 가져올 수 있습니다. 딥 시리얼라이제이션 모드는 중첩된 객체를 재귀적으로 확장하여 완전한 검사를 가능하게 합니다.
{
"tool": "particle-system-get",
"input": {
"gameObjectRef": { "path": "/Effects/Fire" },
"includeMain": true,
"includeEmission": true,
"includeColorOverLifetime": true
}
}particle-system-modify
모든 모듈에 부분 업데이트를 적용합니다. 요청에 포함한 속성만 변경되고 나머지는 그대로 유지됩니다. 이 도구는 상세한 수정 로그를 반환하므로 AI가 무엇이 업데이트되었는지 정확히 알 수 있습니다.
{
"tool": "particle-system-modify",
"input": {
"gameObjectRef": { "path": "/Effects/Fire" },
"main": [
{ "memberPath": "duration", "value": 5.0 },
{ "memberPath": "startLifetime.constant", "value": 2.0 },
{ "memberPath": "loop", "value": true }
],
"emission": [
{ "memberPath": "rateOverTime.constant", "value": 50 }
]
}
}24개 모듈 전부 지원
이 확장은 Unity에서 사용 가능한 모든 ParticleSystem 모듈을 커버합니다. AI는 그중 무엇이든 읽고 수정할 수 있습니다:
- Main — 지속 시간, 시작 수명, 시작 속도, 시작 크기, 시작 색상, 중력, 시뮬레이션 공간, 루프
- Emission — 시간당 방출량, 거리당 방출량, 버스트
- Shape — 모양 유형, 반지름, 각도, 아크, 위치, 회전, 스케일
- Velocity Over Lifetime — 선형 및 궤도 속도 커브
- Limit Velocity Over Lifetime — 속도 제한 및 감쇠
- Color Over Lifetime — 그레이디언트 기반 색상 애니메이션
- Color By Speed — 파티클 속도에 매핑된 색상
- Size Over Lifetime — 파티클 수명에 따른 크기 커브
- Size By Speed — 파티클 속도에 매핑된 크기
- Rotation Over Lifetime — 각속도 커브
- Noise — 난류 및 펄린 노이즈 필드
- Collision — 월드 및 평면 충돌 설정
- Trails — 파티클 트레일 렌더링
- Renderer — 머티리얼, 메시, 렌더 모드, 정렬
- 추가로: Force Over Lifetime, External Forces, Inherit Velocity, Lifetime By Emitter Speed, Rotation By Speed, Trigger, Sub Emitters, Texture Sheet Animation, Lights, Custom Data
실전 활용: AI에게 무엇을 요청할 수 있나
AI가 모든 ParticleSystem 파라미터에 완전히 접근할 수 있으므로, 평범한 한국어로 요청하면 AI가 어떤 모듈과 속성을 변경해야 하는지 알아냅니다:
- "주황색에서 빨간색으로 변하며 떠오르다 사라지는 파티클로 모닥불 효과를 만들어 줘"
- "연기 파티클을 더 크고 느리게, 난류를 더 많이 넣어 줘"
- "불꽃이 바닥에 튕기도록 충돌을 추가해 줘"
- "마법 발사체 파티클에 트레일을 켜 줘"
- "방출 속도를 두 배로 늘리고 파티클이 계속 반복되게 해 줘"
- "모양을 원뿔에서 구로 바꾸고 반지름을 늘려 줘"
설치
이 확장을 사용하려면 AI Game Developer(Unity-MCP)가 먼저 설치되어 있어야 합니다. 설정이 끝나면 OpenUPM 또는 .unitypackage 설치 프로그램으로 ParticleSystem 확장을 추가하세요.
옵션 A: OpenUPM (권장)
openupm add com.ivanmurzak.unity.mcp.particlesystem옵션 B: Unity 패키지 설치 프로그램
github.com/IvanMurzak/Unity-MCP/blob/main/extensions/ParticleSystem/README.md 에 있는 확장 README의 설치 프로그램 다운로드를 따라 하고, Assets > Import Package > Custom Package를 통해 .unitypackage를 Unity 프로젝트로 임포트하세요.
내부 동작 방식
Unity ParticleSystem 모듈은 클래스가 아닌 C# 구조체이므로 단순한 리플렉션으로는 수정할 수 없습니다. 이 확장은 ReflectorNet을 사용해 각 모듈을 박싱하고, 시리얼라이즈된 멤버 diff를 통해 수정을 적용한 뒤, 수정된 값을 다시 기록합니다. 모든 Unity API 호출은 메인 스레드로 디스패치되며, 수정이 있을 때마다 에디터 창이 다시 그려져 변경 사항을 즉시 확인할 수 있습니다.
// The extension registers tools via attributes — Unity-MCP discovers them automatically
[AiToolType]
public partial class Tool_ParticleSystem
{
[AiTool("particle-system-get", Description = "Get ParticleSystem data")]
public async Task<string> GetParticleSystem(
GameObjectRef gameObjectRef,
bool includeMain = false,
bool includeEmission = false,
bool includeShape = false,
// ... flags for all 24 modules
bool includeAll = false,
bool deepSerialization = true)
{
// Serializes requested modules and returns structured JSON
}
}호환성
- Unity 2022.3 이상
- AI Game Developer(Unity-MCP) v0.60.0+ 필요
- 모든 MCP 클라이언트와 호환: Claude Code, VS Code Copilot, Cursor, Windsurf, Continue
- Unity 2022.3, 2023.2, Unity 6 (6000.3)에서 테스트됨
시작하기
AI Game Developer를 설치하고 ParticleSystem 확장을 추가한 뒤, 원하는 효과를 설명하기만 하면 됩니다. 나머지는 AI가 처리합니다. 전체 설정 과정은 ai-game.dev/docs/quickstart 의 퀵스타트 가이드를 확인하거나, ai-game.dev/download 의 다운로드 페이지에서 플러그인을 받으세요.
- Unity-AI-ParticleSystem: github.com/IvanMurzak/Unity-MCP/blob/main/extensions/ParticleSystem/README.md
- AI Game Developer(Unity-MCP): github.com/IvanMurzak/Unity-MCP
- AI 애니메이션 확장: github.com/IvanMurzak/Unity-MCP/blob/main/extensions/Animation/README.md
- AI ProBuilder 확장: github.com/IvanMurzak/Unity-MCP/blob/main/extensions/ProBuilder/README.md
- 다운로드: ai-game.dev/download
- 퀵스타트 가이드: ai-game.dev/docs/quickstart
- 설정 튜토리얼: ai-game.dev/blog/claude-code-unity-tutorial

