
바야흐로 ‘대 AI의 시대’입니다.
인벤이 신년을 맞아 진행한 설문조사에서 다수의 국내외 개발자들이 게임 산업을 관통할 핵심 키워드로 ‘AI’를 꼽았습니다. 그들은 AI가 개발 환경을 송두리째 바꿀 것이며, 창작의 방식 자체가 변화할 것이라 예견했습니다. 테슬라의 일론 머스크가 “우리는 특이점을 지나고 있다”라고 단언했을 만큼, 우리는 AI가 모든 것을 가능케 할 것만 같은 격변의 시기를 살고 있습니다.
AI가 화두인 시대, 카이스트 김대식 교수가 유튜브에서 이런 이야기를 한 적이 있습니다.
“지금 실리콘밸리 유치원생들은 AI로 앱을 만듭니다. 고양이 사진 한 장을 던져주며 ‘이걸로 테트리스 만들어 줘’라고 하면 AI가 알아서 만들어주죠. 우리는 이걸 ‘바이브 코딩(Vibe Coding)’이라고 부릅니다.”
문득 궁금해졌습니다. 정말 그게 가능한 일일까?
태어나서 ‘코드’라고는 기타 코드밖에 모르는 내가, 학창 시절 ‘수학 냄새’가 날까 봐 이과 근처에는 얼씬도 하지 않았던, 뼛속까지 문과생인 내가 AI라는 도구 하나만으로 게임이란 걸 만들 수 있을까?
이 프로젝트는 그 단순하고도 무모한 호기심에서 시작되었습니다. 이것은 개발 지식이 전무한 기자가, 오직 AI와 ‘바이브코딩’만으로 게임 개발에 도전하는 기록입니다.
지피지기면 백전백승... 나의 무기는 ‘러버블’

프로젝트에 돌입하기 전, 먼저 확인할 게 있습니다. ‘지피지기면 백전백승’이라 했습니다. 내가 무엇을 어디까지 할 수 있는지를 알아야 게임도 만들 수 있을 테니까요. 제가 선택한 도구는 앞서 김대식 교수가 언급했던 ‘러버블(Lovable)’입니다.
러버블은 개발 지식 없이 자연어(말)만으로 웹사이트나 앱을 만들 수 있게 해주는 AI 기반의 ‘노코드(No-code)’ 개발 도구입니다. 복잡한 코딩 언어 대신 “이런 기능 넣어줘”라고 말하면 AI가 알아서 코드를 짜고 배포까지 도와줍니다. 디자이너 수준의 UI/UX는 기본이고, 데이터베이스 연동이나 로그인 기능 같은 전문적인 영역까지 커버한다고 하니, 저 같은 ‘컴맹’ 기자에게 눈과 귀와 손과 발이 되어줄 녀석입니다.
백문이 불여일타. 접속하자마자 채팅창에 한 마디를 던졌습니다.
“고양이가 떨어지는 테트리스를 만들어줘.”
열심히 무언가를 연산하던 러버블이 1분 뒤, 놀라운 결과물을 내놓았습니다.

기가 막혔습니다. 화면 속에서 고양이 블록들이 차곡차곡 쌓이고 사라졌습니다. 코딩의 ‘C’자도 모르는 제가, 말 한마디로 멀쩡한 게임 하나를 ‘연성’해낸 것입니다. “어? 이게 되네?” 가슴 속 깊은 곳에서 근거 없는 자신감이 솟구칩니다.
하지만 테트리스는 시작일 뿐, 제가 만들고 싶은 건 더 복잡한 게임이었습니다. 그러려면 러버블을 더 정교하게 다룰 줄 알아야 했습니다. 사용 설명서를 정독해야 했지만, 솔직히 말해 그마저도 귀찮았습니다. 그래서 꾀를 냈습니다.
‘프롬프트(명령어)를 잘 짜야 한다면, 나보다 글을 잘 쓰는 AI한테 시키면 되잖아?’
저는 러버블의 방대한 기술 문서와 사용법을 몽땅 긁어서 또 다른 AI인 ‘제미나이(Gemini)’에게 학습시켰습니다. 전략은 간단합니다. 제가 개떡같이 말하면, 제미나이가 찰떡같은 프롬프트로 번역해 주고, 그걸 러버블에게 전달하는 식입니다. 바야흐로 ‘AI로 AI를 부리는’ 하청의 하청 시스템을 구축한 셈입니다.
‘젤다’를 꿈꾸던 나, 현실을 깨닫고 ‘카피바라’를 택하다

도구는 준비되었습니다. 이제 무엇을 만들 것인가를 정할 차례입니다. 호기롭게 러버블에게 물었습니다.
“너, 어디까지 만들 수 있어?”
돌아온 대답은 아쉬웠습니다. 러버블은 유니티(Unity)나 언리얼 엔진 같은 전문 게임 엔진이 아닙니다. 웹사이트나 웹 애플리케이션을 만드는 데 특화된 도구였죠. 퍼즐, 퀴즈, 2D 플랫포머(슈퍼 마리오 스타일), 간단한 슈팅 게임이나 타이쿤류 시뮬레이션은 훌륭하게 만들어낼 수 있지만, 고사양 그래픽이 필요한 3D RPG나 실시간 물리 엔진이 난무하는 복잡한 게임은 무리였습니다.
솔직히 실망했습니다. 전지전능할 것 같았던 러버블이 ‘저 사실 요런 거 밖에 못해요’라며 순박하게 웃는 것 같습니다. ‘젤다의 전설’에 버금가는 오픈월드 대작을 만들어 ‘더 게임 어워드(TGA)’ 시상식 무대에 우뚝 서보겠다는 저의 야망이 산산조각 났습니다. ‘제2의 아오누마 에이지’가 되어 게임 역사에 이름을 남기려던 원대한 계획은, 시작하기도 전에 기술적 한계라는 벽에 부딪쳤습니다.
현실을 인정하고 눈높이를 낮췄습니다. ‘내가 만들 수 있는 것’ 중에서 가장 매력적인 것을 찾아야 했습니다. 고민 끝에 제 눈에 들어온 것은 ‘봉고 캣(Bongo Cat)’입니다.

봉고 캣은 최근 기사를 쓰며 알게 된 방치형 클리커 게임입니다. 귀여운 고양이가 화면을 두드리는 귀여운 모습 덕분에 스팀에서 동시 접속자 수 10만 명을 유지하고 있습니다.
이 게임을 즐기다 문득 아이디어가 스쳤습니다.
‘이건 PC 게임이지만, 모바일로 옮겨오면 어떨까? 스마트폰 화면 구석에 항상 귀여운 캐릭터가 떠 있어서, 내가 카톡을 하거나 유튜브를 볼 때마다 같이 화면을 두드려준다면?’
그리고 봉고 캣은 친구와 할 때 훨씬 재미있습니다. 그 재미가 핸드폰에서도 이어진다면, 만약 내 스마트폰에 친구나 연인의 캐릭터가 함께 떠 있고, 그들이 핸드폰을 터치할 때 내 화면 속 캐릭터도 반응한다면? 서로 떨어져 있어도 함께 있는 것 같은 몽글몽글한 기분이 들 것 같았습니다.
이 정도의 단순한 로직과 2D 그래픽이라면 러버블로도 충분히 승산이 있어 보였습니다. 단, 고양이를 그대로 쓸 수 없으니 제가 좋아하는 ‘카피바라’를 주인공으로 골랐습니다.
그렇게 저의 첫 번째 프로젝트 기획안이 정리되었습니다. ① 모바일 화면에 항상 떠 있는 ‘위젯’ 형태의 방치형 게임. ② 터치에 반응하는 귀여운 ‘카피바라’ 캐릭터. ③ 친구의 터치를 실시간으로 공유하는 ‘멀티플레이 연동’. 그리고 게임의 제목은 ‘탭탭 카피바라’.
목표는 정해졌습니다. 이제 남은 건, 이 아이디어를 AI가 알아듣도록 설명해야 합니다.
프롬프트는 완벽했다... 그러나 실패한 '하청의 하청'
기획은 완벽했습니다. 화면을 터치할 때마다 귀여운 캐릭터가 반응하는 힐링 게임. 여기에 ‘카피바라’를 주인공으로 내세우고, 연인끼리 터치를 공유하는 기능까지. 자신만만하게 러버블에게 첫 번째 명령을 내렸습니다.
[실제 프롬프트 to 제미나이]
“좋아 난 이제 방치형 게임 모바일 앱을 하나 만들거야. 봉고 캣(Bongo Cat)이라는 방치형 게임에서 아이디어를 따왔어. 봉고 캣은 마우스를 클릭하거나 키보드를 누를 때마다 화면에 있는 작은 고양이가 화면을 두드리는 모션을 해. 나는 이걸 카피바라로 바꿔서 만들고 싶어. 내가 생각했던 건, ‘이 앱이 컴퓨터 화면에 있는게 아니라 모바일에서도 같은 모습으로 있다면 어떨까?’ 였어. 그래서 내가 모바일 앱을 클릭하거나 사용할 때 화면에 카피바라가 같이 움직이거나 화면을 두드려주는 거지. 이 게임은 멀티플레이도 지원하는데 내가 만약에 내 애인의 모바일에도 이게 깔려있어서 서로 핸드폰을 쓸 때 알수 있다면 참 좋을 것 같았거든. 다만, 핸드폰으로 해야 하는 거니까 일종의 위젯 형태로 모바일에 떠있어야 하고, 다른 앱을 쓰더라도 항상 맨 위에 표시되어 나타나야해.”
첫 번째 게임을 만들고 설레는 마음으로 기다리던 저에게 제미나이가 심각한 표정으로 이런 말을 합니다.
여기서 기술적으로 짚고 넘어가야 할 아주 중요한 포인트가 하나 있습니다.
[핵심 기술 체크] 러버블(Lovable)은 '웹 앱(Web App)'을 만드는 도구입니다. 웹 앱은 브라우저(크롬, 사파리) 안에서만 작동하기 때문에, "다른 앱을 쓸 때도 화면 위에 둥둥 떠 있는 기능(Overlay/Widget)"은 웹 기술만으로는 구현이 불가능합니다. (이는 안드로이드/iOS의 시스템 권한이 필요하기 때문입니다.)
[해결 전략: 2단계 접근]
- 1단계 (Lovable): 우선 웹 브라우저 상에서 터치에 반응하는 애니메이션 카피바라와 멀티플레이 기능(커플 연동)을 완벽하게 구현합니다.
- 2단계 (확장): 러버블로 만든 코드를 나중에 'Capacitor'나 'React Native' 래퍼를 씌워 실제 앱으로 패키징하면 위젯 기능을 구현할 수 있는 기초가 됩니다.
우선 1단계(핵심 기능 구현)를 위한 완벽한 프롬프트를 만들어 드립니다. '봉고 캣'처럼 터치할 때마다 반응하고, 애인과 연결되는 감성적인 기능을 담았습니다.
음, 무슨 소리인지 모르겠는데 일단은 뭔가 해보겠다는 말인거 같습니다. 맹구의 표정을 짓고 프롬프트를 받아 러버블에 입력해봅니다.
[제미나이 프롬프트 to 러버블]
Role
당신은 '인터랙티브 웹 게임'과 '실시간 연동 앱' 전문 수석 개발자입니다.
'Bongo Cat'에서 영감을 받아, 터치 반응형 방치형 게임인 'Tap Capybara(탭 카피바라)'를 제작합니다.
Project Goal
모바일 환경(PWA)을 최우선으로 고려한 리액트 웹 앱을 만듭니다.
사용자가 화면을 터치하면 화면 속 '애니메이션 스타일의 카피바라'가 같이 화면을 두드리며 상호작용합니다. 특히 '커플 연동' 기능을 통해 상대방의 터치 신호를 실시간으로 시각화해야 합니다.
Tech Stack
Frontend: React, Vite, Tailwind CSS
Animation: Framer Motion (터치 시 타격감과 카피바라의 움직임 구현)
Backend: Supabase (실시간 커플 연동 및 데이터 저장)
State Management: React Context API or Zustand
Visual Concept (Anime Style)
Character:
'봉고 캣'처럼 단순하고 귀여운 선(Line art)으로 그려진 '애니메이션 스타일 카피바라'를 중앙에 배치하세요.
실제 카피바라 사진 대신, 일본 애니메이션 풍의 귀엽고 둥글둥글한 2D 벡터 그래픽 느낌이어야 합니다.
평소에는 졸린 표정으로 가만히 있다가, 터치 시 눈을 번쩍 뜨거나 손을 빠르게 움직이는 애니메이션을 추가하세요.
Layout:
배경은 투명하거나(나중에 위젯화를 고려) 아주 심플한 파스텔톤으로 설정하세요.
UI는 최소화하여 캐릭터에 집중할 수 있게 하세요.
Core Features (Brick by Brick)
1. Touch Interaction (Bongo Cat Mechanics)
사용자가 화면 어디든 터치하면 카피바라의 앞발이 테이블(또는 화면 하단)을 두드리는 모션을 취하게 하세요. (framer-motion 활용)
터치할 때마다 'Pop' 하는 귀여운 효과음과 함께 화면에 하트 파티클이 튀어나오게 하세요.
연타(콤보) 횟수에 따라 카피바라의 표정이 더 즐겁게 바뀌게(예: 선글라스 착용, 홍조 등) 구현하세요.
2. Multiplayer Sync (Lover Mode)
Supabase Realtime을 사용하여 두 명의 사용자를 '커플 코드'로 연결하는 기능을 만드세요.
Signal: 상대방이 자신의 폰을 터치하면, 내 화면의 카피바라 옆에 작은 '상대방 카피바라' 아이콘이 나타나 같이 두드리는 모션을 보여주세요. (상대방의 생존 신고/접속 여부 시각화)
Message: "지금 보고 싶어" 같은 간단한 감정 표현 버튼을 누르면 상대방 화면에 큰 이모지가 뜨게 하세요.
3. Idle Elements
터치 횟수(Tap count)를 재화로 사용하여 카피바라에게 '귤(Treat)'을 주거나 '모자(Item)'를 씌울 수 있는 간단한 상점을 만드세요.
Implementation Steps
먼저 Framer Motion을 사용하여 카피바라의 기본 대기 상태(Idle)와 터치 반응(Tap) 애니메이션을 구현한 UI를 보여주세요. (이미지는 placeholder나 CSS shape로 우선 대체)
터치 시 파티클 효과와 콤보 카운터를 구현하세요.
그 후 Supabase 연결 코드를 작성하여 실시간 연동 기능을 추가해 주세요.
지금 바로 모바일 뷰 기준으로 첫 화면을 코딩해 주세요.
완벽합니다. 제미나이는 제가 상상도 못할 완벽한 프롬프트를 써줬습니다. 이 프롬프트면 제가 원하는 게임이 나올 게 확실해 보입니다. 설레는 마음으로 제미나이에게 받은 프롬프트를 러버블에 입력했습니다. 완벽한 프롬프트 때문인지 러버블도 답변을 내기까지 오랜 시간이 걸렸습니다. 엄청나게 공을 들여 코딩을 하나봅니다.
약 십분 정도 기다린 끝에 러버블이 답을 내놓았습니다. 이렇게 성공적으로 저의 프로젝트가 완성되나 봅니다.

이 프로젝트 끝까지 해낼 수 있을까?
머릿속에 물음표 백만 개가 찍혔습니다. 쓰리스타 셰프의 오마카세를 기대했는데, 부부싸움 다음 날 아내가 말아준 김밥이 나온 기분입니다. 제가 원했던 건 방치형 힐링 게임 ‘탭탭 카피바라’였는데, 웬 곰돌이 한 마리가 나와서 발바닥을 구르고 있습니다.
당장 제미나이에게 달려가 따졌습니다. “야, 이건 카피바라가 아니잖아!” 제미나이도 당황했는지 곧바로 “죄송합니다”를 연발하며 ‘긴급 수정 프롬프트’를 내놓았습니다. “귀가 옆에 있어야 한다”, “얼굴이 더 넙데데해야 한다”, “책상 위로 빼꼼 나온 느낌이어야 한다”... 온갖 미사여구를 동원해 수정을 거듭했습니다. 하지만 원하는 결과물은 나오지 않았습니다. 오히려 수정할수록 결과물은 점점 더 기괴해집니다.
도저히 마음에 들지 않아서 머리를 써봤습니다.
이번에는 나노바나나에 의뢰해 내가 원하는 카피바라 이미지를 만들었습니다. 그리고 이대로 캐릭터를 만들어달라는 명령을 제미나이에게 내렸습니다. 제미나이는 러버블에게 픽셀 단위로 그림을 복사하라는 매우 획기적인 명령을 내렸습니다.

그리고 난 결론이…

그제야 깨달았습니다. 러버블은 코딩은 잘하는 ‘프로그래머’인지 모르겠지만, 미적 감각이라곤 1도 없는 ‘똥손 일러스트레이터’라는 사실을요.
심각하게 프로젝트를 포기할까 고민을 하다가 꾀를 냈습니다. AI가 잘 그리지 못하니까 그림을 그려서 그걸 쓰도록 해야겠습니다. 나노바나나가 만든 그림을 포토샵을 이용해 수정했습니다. 그렇게 왼발을 든 사진, 오른발을 든 사진, 양 발을 든 사진, 양 발을 내린 사진, 총 네 장을 만들어 이 걸 이용해서 그림을 만들라고 시켜봤습니다.

우여곡절 끝에 대략적으로 원하는 움직임이 나왔습니다. 힘들게 카피바라의 외형은 완성됐지만, 다음 스텝을 생각하니 아찔해집니다. 카피바라에게 씌울 아이템도 만들어야 하고, 이걸 모바일 앱으로 만들어야 합니다. 모바일끼리 ‘실시간 연동’도 시켜야 하죠. 겨우 겉모습 하나 만드는 것도 이렇게 진땀을 뺐는데, 남은 산들을 정말 넘을 수 있을까요?
처음 이 기사를 기획할 때, 2026년 한 해 동안 이어갈 장기 프로젝트로 구상했습니다. 하지만 막상 첫발을 내딛고 보니 그저 막막하기만 합니다. 코딩이라곤 모르는 제가, 과연 AI라는 도구 하나만 믿고 여러분의 스마트폰에 이 카피바라를 무사히 입주시킬 수 있을까요?
솔직히 말하면, 지금이라도 이 기사를 폐기하고 싶습니다. 하지만 이미 회사에 "AI로 게임 만든다"고 이야기를 해놨고, 결과는 내야만 했습니다. 이왕 이렇게 된 거, 끝까지 가보겠습니다. 코딩 0점 문과생 기자가 AI 멱살을 잡고 앱스토어 등록 버튼을 누르는 그날까지, 무모한 도전은 계속됩니다.
'좌충우돌 AI 게임 개발기' 2부에서 계속됩니다.

