ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [AI] Gemini CLI 로 1인 게임 개발 시간 단축하기
    쾌락없는 책임 (공부)/짜잘쓰 2026. 4. 12. 22:14
    반응형

    개요

    AI 들의 성능이 폭발적으로 향상된 후 기술 블로그를 가꾸는데 관심이 적어졌습니다. AI에게 물어보기만 해도 원하는 답변을 꽤나 쉽게 찾을 수 있기 때문에 등한시하게 되는 경향이 생기게 되네요.

     

    이 글에서는 최근 AI 를 통해 여러 게임 개발을 하는 시도를 하고 있는데 관련해 제가 어떤 식으로 1인 개발에서 시간 단축을 하는지 요약해 보려고 합니다. 대부분 아시는 내용일 테지만 모르시는 분들을 위한 작은 노하우 공유라고 생각하시면 됩니다.

     

    기획 초안 짜기

    먼저 AI 와 함께 일 하기 위해서는 '자세한 요구 사한'이 필요로 합니다. 최근 AI들이 개떡같이 말해도 찰떡같이 알아듣기는 하는데 요청사항이 자세할수록 코드가 양질로 나오는 건 부정할 수 없습니다.

     

    저의 경우 기존 기획을 굿노트/노션 등 멀티플랫폼이 되는 수단으로 작성해 왔는데 최근 옵시디언을 통해 정리하고 있습니다. 옵시디언은 여러 장점이 있지만 로컬에 기획 문서가 저장되기에 Gemini CLI 를 사용할 수 있다는 장점이 있어 이쪽으로 옮기게 되었습니다.

     

    Obsidian - Sharpen your thinking

    The free and flexible app for your private thoughts.

    obsidian.md

    설치 후 커뮤니티 플러그인에서 Google Drive Sync 를 활성화하면 구글 드라이브를 통해 여러 곳에서 Sync를 맞출 수 있습니다. 해당 방법은 드라이브에서 권한을 일부 줘야 하는 거라 불안할 수 있으니 다른 방안으로 해도 괜찮지만 저는 IOS 환셩(아이패드)에서도 되었으면 해서 해당 플러그인을 활용했습니다.

     

    이후 해야 하는 일은 기획 문서가 있는 곳에서 CMD 를 켜 gemini를 호출한 뒤 아래와 같이 질문해 주면 됩니다.

     

    지금 우리 게임에 추가되어야 하는 어빌리티가 있어. NPC 에게 플레이어가 선물을 해 호감도를 올리는 어빌리티야.
    이 어빌리티에서는 다음과 같은 것들을 고려해야 해.
    - 유저는 기존 상호작용을 통해 NPC 에게 선물 능력을 활성화할 수 있음
    - 유저의 인벤토리 내 아이템만 선물 가능
    - 유저가 선물한 아이템에 따라 호감도의 증감이 있어야 함.
       - 이는 특정 분류의 아이템일수도, 특정 종류의 아이템일 수도 있음.
    위 요구사항 목록을 바탕으로 기획 문서를 작성하고 개발자들이 고려해야 할 체크리스트를 만들어줘.

     

    한 문장으로 해도 바로 나와주면 좋겠지만 저 정도 이상으로 자세히 해야 제가 원하는 기획 문서가 나오긴 했습니다. 

     

     

    그러면 이렇게 막 자세하게 문서를 작성해 줍니다. 대신 해당 기획용 CLI는 개발 내용에 대해서 모르는 기획용 AI기 때문에 1인 개발이라면 조금 수정해야 할 부분들이 있을 겁니다. 예를 들어 없는 클래스라던가 등... 그런 것들을 제거해 주어야 추후 개발용 AI에게 이를 넣었을 때 만족스러운 코드를 뽑아내게 됩니다.

     

     

    개발 AI 에게 기획 문서 먹이기

    위의 경우 사실 기획 자체가 간단합니다. 제 프로젝트에서는 

    • 선물하기 UI 제작 (MVVM 플러그인을 활용 중이라 Widget과 ViewModel 제작)
    • 선물하기 어빌리티 제작

    2개 정도의 일만 하면 되니깐요. 최종적으로 기획 문서를 먹이고 첫 개발 삽을 뜰 때는 이렇게 합니다.

     

    @"~~" 경로에 우리가 새로 제작해야 하는 기능에 대한 문서가 있어. 이를 참고해서 필요한 어빌리티 클래스들을 만들고 피로도 등의 부분들을 고려해서 기능을 제작해 줘.

     

    해당하는 경로는 이렇게 얻으면 편합니다

     

    실제로 나오는 클래스도 3개 정도였습니다. 다만 이 과정에서 1인 개발로 AI를 적극 활용하기 위해서는 해당 프로젝트 코드에 대한 이해가 높아야 합니다. 즉, AI 가 만들어낸 코드도 본인이 이해해야 합니다. 개발자라면 아시겠지만 추후 유지보수할 때 본인 숙련도를 올려두는 거죠. 협업 시 서로 코드리뷰를 하는 것과 유사하다고 보면 됩니다.

     

    저 같은 경우에도 위 기획 문서를 그대로 먹였을 때 80% 는 만족을 하지만 20% 정도의 수정사항이 있어 처리를 해줬습니다. 중간중간 수정 과정도 AI에게 맡길 수 있으니 코드 칠 시간에 AI에게 먹이기만 해도 좋습니다.

     

     

    Gemini CLI 를 조금 더 빠르게 쓸 수 있게 하기

    AI 발전으로 소스코드의 품질은 많이 좋아졌지만 처음 ~~ 해줘 를 했을 때 프로젝트의 소스코드를 읽는데 시간이 많이 걸렸습니다. UI 하나 수정하고 싶은데 처음 터미널 키고 10분을 기다렸나...

    정확한 경로값을 주지 않아 발생한 문제로 보고 이후 참고할만한 클래스 등을 언급하니 해당 클래스의 규칙, 규약을 참고해 빠르고 잘 작성해 줬습니다. 하지만 매번 파일을 지정하기에는 번거롭기도 하고 어떤 파일이 제일 괜찮았었는지 기억하기에는 제가 뇌 용량이 부족했습니다.

     

    우리 프로젝트에서는 큰 문제가 있어. 신입 개발자가 오거나 다른 AI 가 작업할 때 우리 프로젝트의 소스코드가 어떤 식으로 동작하는지 구조를 빠르게 파악하지 못해 신규 기능 개발이나 수정, 유지보수에 시간이 걸린다는 점이야.
    여기서 너에게 아래 요구사항에 맞춰 우리 소스코드를 분석해달라는 요청을 할게.
    - 각 디렉토리별 소스코드들이 어떤 역할을 하는지에 대해서 분석 (이에 대해서 문서화는 필요 없고 하위 요구사항을 처리하기 위함)
    - 분석이 완료된 후 기능별로 어떤 디렉터리와 이중 가장 참고할만한 masterpiece 소스코드/클래스는 무엇인지 기록하기
       - 예를 들어 UI 를 보기 위해서는 Widgets 하위 폴더들을 봐야 하며 ViewModel 등을 고려해 제작해야 한다...
    - 해당 프로젝트에서 어떤 구조를 택하고 있는지, 그래서 신규 기능 개발을 할 때 어떤 식으로 고려해야 하는지
       - MVVM 패턴 등에 대한 언급으로 신규 코드를 작성할 때 해당 패턴에서 벗어나지 않고 제작 가능하게
    - 대체적으로 나타나는 코딩 컨벤션은 어떤 것들이 있고 이를 잘 참고할 수 있는 소스코드는 무엇인지
       - 한 사람이 쓴 코드처럼 할 수 있는 규칙성을 파악해
    - 해당 문서는 평서문으로 작성해 (이모지 없음)
    - ~~자 이상의 문서로 아주 자세히 적어줘.

    문서화 분석이 완료된 내용들을~~ 경로에 마크다운 문서로 제작해서 내가 볼 수 있게 해 줘.

     

    그래서 소스코드의 분석을 맡겨 재미나이가 이를 활용할 수 있도록 지도를 만드는 과정을 거쳤습니다. 예를 들어 UI 코드를 추가한다 했을 때 소스코드를 다 보지 말고 특정 소스코드만 보게 해서 IO 시간을 줄이자는 생각이었죠.

     

    몇 번 해 보았을 때 3.1 pro 던 flash 던 ~~ 자 이상의 자세한 문서로 적어줘라는 요청이 있어야 좀 더 잘 적어주는 느낌이었습니다. 그 외에는 50-80자인데 모든 경우의 수를 고려하지 않고 요약한 느낌이 나 문서의 결과물이 좋지 못했습니다.

     

    아무튼 해당 문서 이후로 기존 프로젝트 코드의 기조대로 나오는 듯하고 시간은... 정확한 수치는 없지만 아직까지는 이전처럼 막 10분 기다리는 일은 발생하지 않아 만족하고 있습니다.

     

     

    Perforce mcp

    저는 집에서 버전관리로 퍼포스를 사용 중이기에 관련한 mcp 도 받아두었습니다. 공식은 아니고 엄연히 서드파티지만 버전관리를 위해 두면 좋습니다.

     

    GitHub - perforce/p4mcp-server: [Community Supported] Perforce P4 MCP Server is a Model Context Protocol (MCP) server that integ

    [Community Supported] Perforce P4 MCP Server is a Model Context Protocol (MCP) server that integrates with the Perforce P4 version control system. - perforce/p4mcp-server

    github.com

     

    단 해당 MCP를 넣지 않더라도

    - ✅ 만약 파일을 수정해야 하는데 **읽기 전용(Read-only)**이거나 **권한 오류**가 발생한다면, `p4 edit -c default <파일경로>` 명령어를 통해 퍼포스 체크아웃을 먼저 수행한 뒤 수정을 진행하세요.
    - 새 파일을 만들었다면 `p4 add -d -c default` 명령어를 통해 퍼포스에 추가해 주세요

     

    위와 같은 문구를 GEMINI.md 에 넣으면 버전관리를 해줍니다. 물론 간혹 빼먹는 경우가 있기에... 출력 로그나 권한 등을 잘 살펴봐야 합니다.

     

     

    기타

    게임 개발에 있어 AI 활용법들은 아직 많이 공유되지 않고 언리얼 MCP 도 아직은... 써볼 만한 급의 기능들은 많이 없어 추가 기재하지는 않았습니다. 다만 그 외 개발하면서 AI를 통해 할 만한 유용한 것들을 이야기해 봅니다.

    • 개발 후 AI에게 코드 리뷰 요청
      • 단 이 때는 성능이 어떻던 다른 AI에게 리뷰를 부탁하는게 좋습니다. 동일한 AI 에게 리뷰를 부탁하면 모델 버전에 관계없이 큰 수확이 없었습니다.
      • 개발은 Gemini에게 하고 리뷰는 Claude에게 하는 등의 방식이 좋습니다
    • 개발 후 테스트 해야 할 항목들을 AI에게 부탁
      • 이때 요청사항에서 경계선 데이터 같은 극단적인 값들을 요청하면 테스트 시 버그 탐지가 더 쉽습니다.
    반응형

    댓글

Designed by Tistory.