AI 코딩 도구로 Unity에서 게임 개발하기
서론
쉬는 동안 심심해서 팀 프로젝트에 참여했다. 프로그래머가 나 한명이라 코드 베이스부터 직접 작성해야 하는데, 스토리 분기가 어쩌구… 다회차 플레이인데 세이브 파일은 어쩌구… 뭔가 복잡하고 스펙도 자주 바뀔 것 같은 기획 설명을 듣다보니 구조 설계에서 신경을 써야겠다는 생각에 머리를 싸매다 보니 팀원들에게 작업물을 전달하는 시간이 길어졌고, 일단 프로토타입을 보고 싶어하는 팀의 요구와 다르다는 걸 알았다.
나는 유지보수나 확장성이 보장된 코드로 게임을 만들고 싶은데 기획자분들은 기획이 자주 바뀔 수 있으니 퀄리티를 신경쓰지않은 프로토타입을 원했기 때문에, 내가 틀을 만든 상태에서 빠르게 프로토타입만 만들어줄 AI 기반 코딩 도구를 사용해보기로 했다.
이 글에서는 AI tool을 Unity 개발에 적용하기 위해 Unity API에 잘 적응하면서, AI 사용의 비중을 늘리더라도 코드의 퀄리티를 어느정도 보장할 수 있는 방법에 대해 고민한 이야기와 환경 설정 과정, 그리고 실제로 AI 에이전트에게 프로토타입 개발을 맡기는 과정을 정리했다. (프로젝트에 대한 자세한 과정에 대해서는 다음 글에서 작성할 예정)
AI 코딩 환경 선택하기
최근 AI 기반 코딩 도구들이 폭발적으로 발전하면서 개발 환경도 빠르게 변하고 있다. Cursor, Windsurf 같은 통합 IDE부터 Claude Code, Codex CLI 같은 CLI 기반 도구까지 선택지가 너무 많아졌다.
하지만 나는 기존에 사용하던 Rider를 버리고 싶지 않다. Cursor를 몇 번 사용해봤고 좋은 기능에 놀란 적이 있지만, Unity와 C#에 특화된 Rider라는 IDE가 너무 매력적이고 이미 익숙해진 단축키, 플러그인, 워크플로우를 모두 버리고 새로운 IDE로 갈아타는 것은 부담스러웠다. 그래서 처음엔 ChatGPT나 Claude를 사용했는데, 아무리 컨텍스트를 입력해준다고 하더라도 작성해준 코드를 내가 수정해서 다른 모습으로 적용하는 일이 많고 컨텍스트를 따라가긴 너무 힘들었다.
이전까지 알던 AI 도구에 대해선 그런 수고를 할 정도로 좋은 성능으로 활용하지도 못한다고 생각했기 떄문에(고생에 비해 코드 퀄리티가 너무 낮다) 원래 사용하던 대로 Rider+Copilot 조합을 고수하던 중, 이번 프로젝트에서 새로운 툴을 조사하며 CLI 환경의 AI 도구와 MCP를 알게 되었다.
CLI 환경의 AI Coding Tool
터미널에서 AI와 대화하며 코드 작성, 수정, 리뷰, 디버깅 등 개발 전 과정을 자동화하는 도구. 직관적인 명령어 또는 자연어로 요청하면, 최신 AI 모델이 직접 코드를 제안하거나 프로젝트 전체 구조를 파악해 실행한다. IDE에 구애받지 않아 스크립트 자동화, CI/CD 파이프라인 통합 등 다양한 개발 환경에서 생산성을 크게 높일 수 있다.
MCP(Model Context Protocol)란?
AI 모델이 외부 데이터 소스나 도구와 쉽게 연결될 수 있도록 만든 개방형 표준 프로토콜이다. USB-C처럼 다양한 환경에서 동일한 방식으로 데이터를 연동해 실시간 정보 접근 및 자동화가 가능하며, 개발자는 API나 커넥터를 따로 만들 필요 없이 확장성과 호환성을 확보할 수 있다. MCP 덕분에 AI가 실제 업무나 워크플로우에 더 유용하고 정확하게 활용될 수 있다. 예시로 날씨 정보, 캘린더 예약, 노션 문서 작성 등 자동화 업무에 주로 사용된다.
환경 설정
Claude Code 설치
터미널에 다음 명령어를 입력한다.
curl -fsSL https://claude.ai/install.sh | bash
claude doctor
(MacOS 기준)
npm install -g @anthropic-ai/claude-code
(Node.js가 설치되어있을 경우 이것도 가능)
Rider일 경우, Plugin에서 Claude code(beta)를 사용해볼 수 있다.(pc에 claude code가 설치된 상태여야 사용할 수 있음)
그리고 프로젝트를 진행할 폴더에서 claude를 실행하면 해당 프로젝트에서 claude가 코드를 바로 작성하게 할 수 있다.
Unity MCP 설치
설치하려는 Unity MCP의 저장소 가이드를 그대로 따라했다.
추가로, Unity에는 아직 공식 MCP가 없기 때문에 따로 알아보거나 Smithery 같은 mcp 탐색 사이트에서 다른 MCP를 사용해도 상관없다.
MCP서버를 로컬에서 돌리기 때문에 Python 3.12이상의 버전이 필요하다.
Unity Editor를 열고 메뉴 중 Window > Package Management > Package Manager 열고 Install Package from Git URL 로 추가
https://github.com/CoplayDev/unity-mcp.git
이러면 유니티에 MCP에서 사용할 bridge와 server가 설치된다. 설치되면 뜨는 설정창에서 보이는거 슥슥 넘기다 보면… 어랏, Claude Code를 찾을 수 없댄다. 어쩐지 repo 가이드에도 claude에 대한 트러블 슈팅 문서가 유난히 길다…
트러블슈팅
다행히 유니티 에디터에 ‘Unity for MCP’ 윈도우에서 확인했을땐 로컬에서 mcp 서버가 잘 돌아가고 있다.
Node.js로 Claude Code를 설치했는데, MCP client 설정에서 claud의 경로를 직접 지정해도 “env: node: No such file or directory” 오류가 발생했다. 아마 경로 중 끼어있던 시스템 PATH를 유니티가 제대로 인식하지 못해서 발생한 것으로 예상한다.
터미널로 가서 claude code쪽에서 직접 mcp 서버를 등록해준다.
claude mcp add UnityMCP -- uv --directory /Users/USERNAME/Library/AppSupport/UnityMCP/UnityMcpServer/src run server.py
연결확인도 해본다.
# MCP 서버 목록 확인
claude mcp list
# 정상적으로 연결되면 다음과 같은 출력이 나온다:
UnityMCP: /Users/USERNAME/.local/bin/uv run --directory /Users/USERNAME/Library/Application Support/UnityMCP/UnityMcpServer/src server.py - ✓ Connected
이러고 claude에게 유니티 씬에 특정 이름으로 오브젝트 하나 추가해보라고 하고, 잘되면 정상 연결된것으로 봐도 된다.
코드 작성
프로토 타입이 빠르게 필요한 팀 프로젝트가 대개 그렇듯이 프롬프트로 줄만한 상세한 기획서 같은 건 없다. 대신에 이전에 코드 조각좀 짜보라고 ChatGPT에게 억장 다 터지면서 설명했던 스펙이 claude에게 줄만한게 있을 것 같아서 ChatGPT를 찾아가 아래와 같이 설명했다.
프로토타입 개발을 AI coding agent에게 맡길 생각이야.
인게임에서 핵심이 되는 스토리 파일에 따라 화면에 UI를 출력만 해주는 기능만 구현할 예정인데,
이 프로젝트에서 나눴던 대화를 참고하되, 대화 중 gpt가 추천한 코드가 아닌
내가 요구했던 기능에 대한 내용만 참고해서 ai agent에게 프롬프트로 넣을 수 있는
기획서를 작성해줘. 또, 이 UI를 동작시키기 위한 최소한의 데이터 구조 명세도 추가해줘.
이걸 받아서 Claude code를 찾아가서, 이런 방식으로 시작했다.
- ‘이게 기존에 의도하던 기획서고, 이걸 참고해서 지금 코드베이스를 기준으로 보강할게 있는 부분이나 미구현된 코드를 찾아서 마저 구현해줘’
- ‘Unity Editor에서 InGameTest라는 이름의 Scene을 생성해, 작성할 코드를 직접 실행해볼만한 UI와 실행 환경을 만들어줘’
- ‘기존 기획을 바탕으로 앞으로 개발해야할 피쳐들과 그 우선순위를 정해줘’
이렇게 시작해서 중간 과정에서 프로토타입 단위로 먼저 만들게 시킨 후, 직접 테스트 플레이를 해서 제대로 돌아가지 않는 부분 확인 후 기록하고 수정하고, claude가 추천하는 다음 작업을 계속 수행시키는 것을 반복했다.
[스크린샷]
결과
장점
- 기획서만 작성하면 기본 구조를 몇 분 안에 생성할 수 있음.
- 번거로운 유니티 에디터 내 object나 prefab값을 빠르게 수정할 수 있는 점이 예상 외의 편리함
- 자동 문서화가 됨. 코드와 함께 설정 가이드, 사용법 문서도 함께 생성
- 개발환경을 유지하면서 성능 좋은 AI 도구 활용 가능
부족한점
- MCP가 Unity의 모든 API를 지원하지는 않거나 완성도에서 미흡함(테스트용 scene 만들어달라고 했더니 Main Camera가 빠져있음)
- 큰 프로젝트에서는 관련 파일만 선별해서 추가해야 하는 등 컨텍스트 윈도우 제한이 있을 것으로 예상
- 생성된 코드에 버그가 있을 때 직접 수정은 필요한데, 전적으로 코드 생성을 ai에게 맡기기 때문에 디버깅 난이도는 높아짐
- 효과적인 프롬프트 작성에는 많은 시행착오가 필요해보임
의견
CLI 기반의 AI Tool과 Unity MCP를 활용해서 기존의 개발 환경을 유지하면서도 특정 기술적으로 특화된 성능을 받을 수 있었고, 이런 부분을 agents와 지침 문서 등 Claude Code의 기능을 활용해 더 효과적으로 활용할 수 있었다. 완벽하지는 않지만, 프로토타이핑이나 반복적인 작업을 AI에게 맡기고 개발자는 핵심 로직과 설계에 집중할 수 있다는 점에서 큰 장점이 있는 것 같다.
다만 AI 도구들이 빠르게 발전하고 있어 “이게 제일 좋다”고 단정하기는 어려운 것 같다. 당장에도 리서치 시작할 땐 Claude Code가 제일 쓸만 하다고 했던 여론이, 최근 글들을 다시 보니까 gpt5가 포함된 Codex CLI가 더 좋다고 하고… 피로감이 느껴지긴 한다. 각자의 워크플로우와 프로젝트 특성에 맞는 도구를 선택하고, 지속적으로 새로운 도구를 실험해보는 것이 중요할 것 같다.
다음으론 프로토타입을 시연하면서 직접 코드 구조를 파악하는 과정이 필요할 것 같다. 코드 규모를 키우면서도 퀄리티를 떨어뜨리지 않는 방법에 제일 관심이 있다. 앞으로는 Claude Code 내에서 프로젝트 특화 기능을 추가하고, 서브 에이전트를 더 세분화해서 활용해볼 계획이다.
지금은 Claude Code를 포함해 AI 코딩 툴에서 지원하는 기능을 적극적으로 활용하는 것이 시행착오를 줄이는데에 효과적이라고 생각한다. 아래에 내가 추천하는 Claude Code의 기능을 추가했다.
추가) AI 코딩 툴 사용 팁
지침 문서 만들기
기존에 코드베이스가 작성되어있는 상태에서, AI에게 프로젝트를 이해하기 쉽도록 지침을 만들어줄 수 있다. claude에서는 Claude.md라는 이름으로 만들어두면 클러드가 작업 전에 늘 참고하기 때문에 프로젝트의 구조나 컨벤션, 자주 쓰는 패턴, 컨텍스트 등을 넣어주면 좋다. 파일 계층마다 넣어둬도 계층별로 적용이 되니까 프로젝트가 커질수록 계층형 문서 구조로 활용하는 방법이 효과적이다.
또, 정기적으로 코드 변경 시 관련 문서도 함께 업데이트 하는 것이 지침 문서의 효과를 높이는데 필수적일 것으로 보인다.
claude는 시작 시 이 명령어를 쓰면 프로젝트를 쭉 읽고 자기가 확인한대로 분석을 해서 현재 위치에 Claude.md 파일을 만들어준다. 프로젝트 시작 전에 사용해두면 좋다.
/init
켄트 벡의 증강형 코딩 글을 참고해 지침 문서에 해당 내용을 추가했다. 문서 보강 전후로 코드 안정성에 차이가 느껴졌다. 한번 꼭 읽어보시길 추천!!
커스텀 명령어 설정
Claude Code는 커스텀 명령어를 지원한다. .claude/ 디렉토리에 명령어를 정의할 수 있다.
서브 에이전트 활용
특정 작업을 전문적으로 처리하는 서브 에이전트를 만들 수 있다.
커스텀 MCP 서버
도메인이 큰 기업 단위의 경우 프로젝트 특화 기능을 MCP로 개발해 제공하는것이 나을 수 있다.
부족한 글이지만 계속해서 수정을 해 나갈 예정입니다. 개선할 부분이 있다면 말씀해주세요. 읽어주셔서 감사합니다.
댓글남기기