테트리스에서 팩맨까지
같은 "게임 만들기"라도 복잡도가 달라지면 접근법도 달라져야 한다. 바이브코딩으로 테트리스를 만들어보고, 단일 프롬프트로 팩맨에 실패한 뒤 기획·개발·QA 3단계 멀티 에이전트로 재시도하며 그 차이를 몸으로 체감한다.
플랫폼: claude.ai 또는 Claude Code · 소요 시간: 40분(테트리스 10분 + 팩맨 25분 + 시사점 5분) · 관련: 2장 §2 단일 에이전트 한계
- 테트리스(10분) — 바이브코딩 한 번의 프롬프트로 완성, 수정도 문제없이 반영
- 팩맨(25분) — 단일 프롬프트로 실패 체험 → 기획·개발·QA 3단계 멀티 에이전트로 성공
- 시사점(5분) — 복잡도가 높을수록 역할 분리의 가치는 기하급수적으로 증가
테트리스 — 바이브코딩으로 충분한 복잡도 (10분)
4장 실습에서는 참가자를 Claude / Antigravity 등 4개 그룹으로 나누지만, 이 워밍업에서는 전원이 동일한 플랫폼(claude.ai 또는 Claude Code)을 사용한다. 하네스 도구의 차이가 아닌 접근법의 차이에 집중하기 위함이다.
진행 방법
- 강사 시연(1분): claude.ai(또는 Claude Code)에 다음 프롬프트를 입력한다.
HTML Canvas로 테트리스 게임을 만들어줘
10~20초 안에 조작 가능한 테트리스가 나온다.
- 참가자 따라하기(5분): 각자 같은 프롬프트를 입력해 자신의 테트리스를 만든다.
- 수정 요청(4분): 완성된 테트리스에 자유롭게 수정을 요청해 본다.
배경색을 어두운 색으로 바꿔줘 점수판을 크게 만들어줘 다음 블록 미리보기를 추가해줘
팩맨 — 복잡도가 만든 한계 (25분)
이번에는 비슷해 보이지만 훨씬 복잡한 게임을 만들어 본다. 팩맨은 캐릭터 이동·유령 AI·충돌 감지·맵 설계·아이템 시스템 등 요소가 훨씬 많아, 완성하면 ~1,000~1,500줄에 달한다.
1단계: 실패 체험 (2~3분)
먼저 테트리스와 똑같은 방식으로 시도해 본다.
HTML Canvas로 팩맨 게임을 만들어줘
캐릭터 이동·유령 AI·충돌 감지·맵 설계가 동시에 하나의 프롬프트에 들어가면, 코드가 뒤엉켜 의도대로 작동하지 않는다. 이 "실패"가 이 워밍업의 핵심 체험이다.
2단계: 멀티 에이전트로 재시도 (각 step 약 7~8분)
이번에는 하나의 에이전트가 아닌 3개의 역할로 나누어 순차적으로 진행한다.
팩맨의 기능 목록과 맵 구조를 명세서로 작성한다. 어떤 캐릭터가 있고, 맵이 어떻게 생겼으며, 게임 규칙이 무엇인지를 정의하는 단계다.
팩맨 게임의 기능 목록과 맵 구조를 명세서로 작성해줘. 다음 항목을 포함해: - 캐릭터(팩맨, 유령 4종)의 동작 방식 - 맵 구조(벽, 점, 파워업 위치) - 게임 규칙(점수, 생명, 레벨)
Step 1에서 만든 명세서를 바탕으로 실제 HTML 팩맨 코드를 작성한다. 기획이 명확하니, 개발 에이전트는 "무엇을 만들지" 고민할 필요 없이 구현에만 집중한다.
아래 명세서를 기반으로 HTML Canvas로 팩맨 게임 코드를 작성해줘: [Step 1 결과를 여기에 붙여넣기]
완성된 코드에서 버그를 찾고 수정한다. 실제로 게임을 실행해 보며, 캐릭터가 벽을 통과하는지, 유령 AI가 정상 동작하는지, 점수가 올바르게 계산되는지 검증한다.
이 팩맨 게임 코드의 버그를 찾아 수정해줘: [Step 2 결과를 여기에 붙여넣기] 특히 다음을 확인해: - 벽 충돌 감지가 정확한지 - 유령 AI가 각각 다른 패턴으로 움직이는지 - 점수와 생명이 올바르게 계산되는지
시사점 — 복잡도가 높을수록 역할 분리의 가치는 기하급수적으로 증가 (5분)
| 테트리스 | 팩맨 | |
|---|---|---|
| 코드량 | ~200줄 | ~1,000~1,500줄 |
| 핵심 요소 | 블록 낙하, 회전, 줄 삭제 | 캐릭터 이동, 유령 AI, 충돌 감지, 맵 설계, 아이템 |
| 단일 프롬프트 | ✅ 성공 | ❌ 실패 |
| 멀티 에이전트 3단계 | 불필요 | ✅ 성공 |
테트리스처럼 단순한 작업은 바이브코딩(단일 프롬프트)만으로도 충분하다. 하지만 팩맨처럼 복잡도가 높아지면, 하나의 에이전트에게 모든 역할을 맡기는 것은 한계가 있다.
이것이 2장 §2에서 배운 단일 에이전트의 한계를 직접 체험한 것이다. 컨텍스트 과부하, 역할 충돌, 누락 — 이 모든 문제가 역할을 나누었을 때 해결된다.
핵심 메시지:
이 워밍업에서 수동으로 체험한 핸드오프(기획→개발→QA)를, 이어지는 4장에서는 Claude Code·Claude Desktop App·Antigravity의 서브에이전트 기능과 Codex의 순차 역할 전환으로 자동화된 방식으로 더 깊이 체험하게 된다.
확인 질문
- 테트리스는 바이브코딩으로 잘 만들어졌지만, 팩맨은 왜 단일 프롬프트로 만들기 어려웠나요?
- 팩맨을 기획→개발→QA로 나눈 것과 하나의 에이전트에게 전부 맡긴 것의 차이는 무엇인가요? (→ 2장 §2 역할 충돌)