그동안 배운 것들
모든 깨달음이 글 한 편이 되는 건 아니에요. 지난 몇 달 동안의 작은 교훈들을 모아 봤어요. 하나하나가 최소한 저녁 한 번씩은 걸렸어요.
출입구는 높이가 블록 세 개여야 해요. 이상하게 들리겠지만 물리 때문이에요. 우리 플레이어 캐릭터는 높이가 1.9블록이 안 되는 캡슐인데, 계단을 오르는 로직(스텝 오프셋)이 걷는 동안 위쪽으로 0.6블록을 더 확인해요. 두 블록 높이의 문은 수학적으로는 충분히 높지만 실제로는 너무 낮아서 끼여 버려요. 그 뒤로 우주선과 스테이션을 지을 때의 규칙은 이거예요. 통로는 세 블록 높이. 언제나요.
유리는 뿌옇게 보여야 해요. 처음 만든 투명 유리는 기술적으로는 맞았지만 벽에 난 구멍처럼 보였어요. 뿌연 젖빛 유리가 블록 세계에서는 재질로 훨씬 잘 읽혀요. 거기에 뭔가 있다는 게 보이니까요. 때로는 사실적인 해법이 더 나쁜 해법이에요.
기능 브랜치를 만들기 전에 git pull. 서버에는 큰 PR 두 개가 이미 오래전에 머지됐는데, 우리는 몇 주 동안 예전 상태에서 작업한 적이 있어요. 마지막의 머지 충돌은 당연한 결과였어요. 로컬 메인 브랜치는 사실이 아니라 기억이에요.
Windows, 긴 경로, 그리고 git 워크트리. Unity 프로젝트는 깊게 중첩된 패키지 캐시를 만들어요. 너무 깊어서 Windows의 경로 길이 제한이 git 워크트리 정리를 방해할 정도예요. 우리를 구해 준 방법은 못생겼지만 효과적이었어요. robocopy로 빈 디렉터리를 말썽인 디렉터리 위에 미러링한 다음 지우는 거예요.
에디터는 거짓말을 해요. (기술 카테고리의 셰이더 글을 보세요.) Unity 에디터에서 잘 돌아간다고 해서 빌드에서도 된다는 게 증명된 건 아니에요.
작은 교훈이 큰 영향을 줘요. 하나하나가 체크리스트의 한 줄이 됐어요. 어쩌면 그게 진짜 교훈일지도 몰라요.
댓글