Exit-or-die — 다음 계단·캐릭터 에셋 스냅샷
1. 주요 변경사항
DungeonGenerator에 다음 층 계단용nextStairsPrefab,allowNextStairsSpawn, 3x2 후보 탐색 로직이 추가됐다.Game.unity에서 보스방은 다음 계단 후보로, 일부 일반 방은 시작 계단·탈출구 후보로 바뀌었다.Sample.unity가Test.unity로 변경됐고, 게임 씬의 던전 생성 설정도 함께 갱신됐다.- 캐릭터 4종 프리팹, Idle 애니메이션, Animator Controller가 추가됐다. 기능 진전은 맞다.
Models/Deungeon아래 에셋이Assets/asset/Deungeon으로 이동했지만 핵심 오탈자는 그대로 남았다.
2. 코드 품질 리뷰
다음 계단을 시작 계단과 별도 플래그로 분리한 판단은 좋다. 보스방에 다음 계단을 두려는 의도가 allowNextStairsSpawn으로 드러나고, 커스텀 에디터까지 갱신한 점도 실무적으로 맞다. 문제는 배치 로직이 아직 “동작해 보이는 좌표 보정” 수준이라는 점이다. 3x2 후보를 찾으면서 두 번째 줄이 +Z인지 -Z인지, +X인지 -X인지 정보를 버리고 같은 회전만 저장한다.
placements.Add((c, Quaternion.identity));
placements.Add((c, Quaternion.identity));
spawnPos += choice.rot * (Vector3.right + Vector3.forward);
이 패턴은 왜 위험한가. 타일 크기가 tileType: 6인 씬에서 마지막 보정은 1유닛 고정이다. 즉 후보 검사는 6유닛 격자로 하고 실제 배치는 1유닛만 밀어 버린다. 계단이 바닥 중앙과 어긋나거나 벽·장식과 겹칠 가능성이 높다. 개선하려면 후보 모델을 (originTile, widthDir, depthDir)처럼 방향 벡터까지 보존하고, 프리팹 피벗 기준을 문서화한 뒤 테스트 씬에서 모든 방 크기별 배치 좌표를 검증해야 한다.
Unity 에셋 쪽도 경고가 필요하다. 새 캐릭터 프리팹의 루트 Transform이 x: 15~21 같은 씬 배치 좌표를 가진다. 프리팹 루트는 원점 기준이어야 Instantiate, 네트워크 스폰, 선택창 미리보기에서 예측 가능하다. 또한 Ainmetion, Animetor, Deungeon 같은 오탈자가 새 에셋에도 확산됐다. 지금 고치지 않으면 참조 검색, Addressables, 협업 머지에서 계속 비용을 낸다.
네트워킹 관점에서는 이번 변경이 직접 RPC를 늘리진 않았지만 DungeonGenerator가 NetworkBehaviour라는 점이 중요하다. 던전 생성과 계단 스폰이 서버 전용인지, 클라이언트도 로컬 생성하는지 코드와 문서에서 명확하지 않다. 절차적 생성은 한 번 어긋나면 클라이언트마다 다른 맵을 보게 되는 영역이므로 권한 모델을 먼저 고정해야 한다.
3. 진행도 평가
이번 스냅샷은 “방 생성 이후 목표 지점 배치”로 전진했다. 시작 계단, 다음 계단, 보스방 연결이라는 게임 진행 구조가 조금 더 구체화됐고, 캐릭터 시각 요소도 들어왔다. 다만 기능 완성보다 에셋 투입과 좌표 타협이 앞서고 있어 안정성은 아직 낮다.
진행도는 34%로 본다. 핵심 루프 일부는 만들어지는 중이지만, 네트워크 권한·씬 진입·입력 정책·문서 사양이 동시에 미정이다. 지금 상태로는 플레이 가능한 빌드보다 “에디터에서 특정 씬을 열면 일부가 보이는 단계”에 가깝다.
4. 다음 권장사항
- 다음 계단 3x2 배치 좌표와 회전 규약을 테스트로 고정해야 한다.
- NetworkBehaviour 던전 생성의 서버 권한·스폰 순서를 문서화해야 한다.
- 캐릭터 프리팹 루트 좌표를 원점으로 정리하고 컨트롤러 중복을 제거해야 한다.
- 에셋 폴더 오탈자 정정은 Unity 리네임 절차로 한 번에 처리해야 한다.
- 던전 생성 문서를 입력·상태·검증 표가 있는 사양서로 확장해야 한다.
- Sample에서 Test로 바뀐 씬의 Build Settings와 진입 플로우를 검증해야 한다.
5. 문서화 상태
design은 3점이다. 게임 컨셉과 방향성은 일부 존재하는 것으로 보이나, 이번 변경의 보스방·다음 계단·탈출 구조가 플레이 경험 목표와 어떻게 연결되는지 설명이 부족하다.
technical은 3점이다. 던전생성.md가 추가된 점은 긍정적이지만, DungeonGenerator의 데이터 흐름, 서버 권한, 프리팹 피벗 규약, 씬 로딩 순서가 신규 개발자가 그대로 따를 만큼 정리됐다고 보기 어렵다.
spec은 2점이다. 3x1 시작 계단과 3x2 다음 계단이라는 단서는 생겼지만, 좌표 기준, 허용 방 크기, 실패 시 처리, 테스트 체크리스트가 없다. 현재 문서는 사양서라기보다 구현 메모에 가깝다.
6. Backlog
- 시작계단 방향 규약과 바닥 교체 기준이 코드 안에서 어긋남.
- NetworkObject 중첩 프리팹 구조가 NGO 스폰 안정성을 위협함.
- 네트워크 이동 권한과 클라이언트 예측·보정 정책이 문서화되지 않음.
- 문서가 컨셉 중심이며 테스트 가능한 수치·상태 사양이 부족함.
- Unity Recovery 씬이 저장소에 포함되어 변경 노이즈를 크게 만듦.
- Input System 과 구 InputManager 가 동시에 남아 입력 정책이 애매함.
- 대량 에셋과 예제 파일이 제품 코드와 섞여 리뷰·빌드 비용을 증가시킴.
- 던전 에셋 폴더명 오탈자와 대소문자 불일치가 유지보수 비용을 만듦.