포스트

흩어진 기획 문서 통합과 아트 방향 결정

합치자 드러난 문서 간 충돌 3건

각 문서는 멀쩡한데 합쳐 놓으면 서로 다른 말을 한다. 흩어진 기획안을 하나로 통합하며 드러난 충돌을 덮지 않고 표면에 올려 결정받고, 시안용 이미지와 구현 룩을 분리한 판단.

흩어진 기획 문서 통합과 아트 방향 결정

기획 문서가 탭 여러 개로 흩어져 있으면, 각 문서는 멀쩡한데 합쳐 놓으면 서로 다른 말을 한다. 이 글에서는 그 문서들을 하나의 컨셉 문서로 합치며 드러난 충돌 3건을 정리하고 결정받은 과정을 이야기하려 한다 — 충돌을 덮지 않고 표면에 올리는 방식, 그리고 시안용 이미지와 실제 구현 룩을 분리해 아트 방향을 정한 판단이다.

1. 게임 컨셉 문서 통합

Reverb 기획안의 8개 탭(콘셉트 / 게임 소개·흐름도 / 시스템(가구 운반) / 점수(정산) / 캐릭터 / 캐릭터 선택 / 튜토리얼 / 타이틀 / 역할분담)을 컨셉 문서 한 곳으로 합쳤다.

  • 전체 게임 플로우 정리: 타이틀 → 캐릭터 선택 → (새 게임 시)튜토리얼 → 스테이지 선택 → 인게임 → 결과 정산
  • DT_FurnitureData운반 데이터 + 점수(Score) 컬럼을 통합하고, 역할별 네트워크 분담표를 반영

여러 문서를 합치는 작업은 단순 복붙이 아니었다. 흩어져 있을 때는 안 보이던 탭 간 불일치가 한 화면에 모으니 그대로 드러났다.

2. 문서 간 충돌 3건 — 드러내고 결정받기

기획안을 합치니 탭마다 말이 다른 부분이 나왔다. 가장 위험한 선택은 “조용히 한쪽으로 덮어버리는 것” — 그러면 나중에 팀원과 인식이 어긋난다. 그래서 [결정 필요]로 명시한 뒤, 결정을 받아 확정하고 양쪽 문서를 동기화했다.

충돌결정
스코어 모델: StopWatch(시간) vs 내구도→돈($)돈($) 채택, 시간은 결과창 표시 지표. 향후 리썰 컴퍼니식 아이템 상점으로 확장
조작 키: 상호작용 F·앉기 Ctrl vs 잡기 E·던지기 F·앉기 CE / F / C 채택 (캐릭터 기획.md 기준)
스태미나: 에너지 게이지 vs 무제한현재 무제한 (에너지 게이지는 보류, 추후 기획)

3. 시안용 이미지 생성 프롬프트 작성

아트 레퍼런스를 잡기 위해 이미지 생성 프롬프트 3종을 작성했다.

  • 톤앤매너 키아트 / 플레이 시안(인게임 목업) / 캐릭터 디자인 시트
  • 콩알(bean) 캐릭터(Human: Fall Flat 풍) + 코지 카툰 톤 레퍼런스를 결합
  • 실제 게임 UI(옮긴 가구 카운터 · StopWatch · 돈$)에 맞춰 레퍼런스 UI를 조정

① 톤앤매너 키아트 — 멜빵바지 콩알 캐릭터 + 이삿짐(가구·박스·핸드트럭) 배경으로 게임의 전체 톤을 잡았다.

톤앤매너 키아트 — 멜빵바지 콩알 캐릭터와 이삿짐 배경

② 캐릭터 디자인 시트 — 콩알 캐릭터의 기본 포즈와 박스 운반·이동 등 액션 베리에이션.

캐릭터 디자인 시트 — 콩알 캐릭터 포즈·액션 베리에이션

③ 인게임 플레이 시안 — 탑다운에 가까운 아이소메트릭 시점으로 코지한 집 안에서 소파를 옮기는 핵심 플레이를 목업했다. 들어 올린 가구와 놓을 위치를 발광 하이라이트로 표시.

인게임 플레이 시안 — 코지 카툰 룸에서 소파를 옮기는 콩알 캐릭터

4. 아트 스타일 방향 결정 — 시안과 구현 룩을 분리

핵심 판단은 “컨셉 시안용 그림”과 “실제 인게임에서 낼 룩”을 분리해서 정해야 한다는 것이었다.

  • 시안 뽑기 = 핸드페인티드 — 손그림 동화책 카툰 레퍼런스를 재현
  • 실제 인게임 목표 = 셀셰이드(+로우폴리 형태) — Unreal 실시간 3D로 코지 카툰을 현실적으로 재현하며, 8주 일정에도 맞음
  • 회피한 방향: 픽셀아트(톤 불일치), 스타일라이즈드 PBR·저채도 판타지(너무 사실적)

핸드페인티드 일러스트를 그대로 엔진에서 재현하려는 건 과하다. 셀셰이드로 같은 감성을 현실성 있게 가져가는 쪽이 일정에도 맞다.

정리 — 통합에서 남은 것

  1. 여러 출처 문서를 통합할 때, 충돌은 임의로 덮지 말고 드러내서 결정받자. 합치는 순간 가장 위험한 건 한쪽으로 조용히 덮어 나중에 팀원과 인식이 어긋나는 것. [결정 필요] 명시 → 결정 → 양쪽 문서 동기화 순서가 안전하다.
  2. 로그인 보호 콘텐츠는 자동 fetch가 불가능하다. 외부 기획 링크가 로그인 페이지만 반환해 가져오기에 실패 → .md export 파일을 직접 받아 처리하는 우회가 정답이었다.
  3. 이미지가 임베드된 대용량 .md(4MB)는 전체 읽기 대신 grep으로 텍스트만 추출. 헤더·표·리스트 패턴만 뽑으면 핵심 기획 텍스트를 빠르게 회수할 수 있다.
  4. Unexpected token '<', "<!DOCTYPE "... is not valid JSON 에러의 의미 = JSON이 와야 할 자리에 HTML(로그인·에러·점검 페이지)이 온 것. <는 JSON 문법상 올 수 없는 문자다. 십중팔구 세션 만료로 서버가 로그인 HTML을 돌려준 경우라, 재로그인이 1순위 해결책.
  5. 컨셉 시안(2D)과 실제 구현 룩(실시간 3D)을 분리해서 정해야 한다. 핸드페인티드 일러스트를 그대로 엔진에서 재현하는 건 과함 → 셀셰이드로 같은 감성을 현실성 있게.

다음 할 일 / 이월

  • 확정된 3건을 하위 문서(furniture-carry-system.md 등)·향후 분리 GDD에도 동기화
  • 점수 · 캐릭터 · 튜토리얼 · 캐릭터선택 · 타이틀을 개별 GDD로 분리
  • 스테이지 선택 방식 2안(탑다운 월드맵 vs 이삿짐 센터 허브) 택일
  • /setup-engine — Unreal 버전 핀 고정 + 에셋 접두사 네이밍 등록
  • 시안 이미지 실제 생성(핸드페인티드) → 아트 바이블 초안 착수

핵심 요약 — 흩어진 기획 문서를 한곳에 합치면 따로 볼 때는 안 보이던 탭 간 충돌이 드러난다. 충돌은 조용히 한쪽으로 덮지 말고 [결정 필요]로 명시해 결정받은 뒤 양쪽 문서를 동기화해야 팀원과 인식이 어긋나지 않는다.

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.