사운드 리소스 전달을 위한 WebApp 만들기
·2023.07.04 09:00
핵심 내용
비개발자의 Git 진입장벽을 낮추기 위해 S3와 Git을 결합한 사운드 리소스 전달 WebApp 'Sonic'을 개발했다.
1 / 2
자세히 보기
게임 개발 시 웹 드라이브를 통한 리소스 전달은 버전 관리가 어렵고, Git은 비개발자에게 심리적·물질적 부담이 크다는 단점이 있다. 이를 해결하기 위해 쿠키런: 킹덤 개발팀은 Sonic이라는 사운드 리소스 전달 WebApp을 개발했다.
설계의 핵심 원칙은 복잡성 최소화다. UI는 사운드팀의 push와 클라이언트팀의 checkout 기능만 노출하여 사용성을 극대화했으며, 아키텍처 역시 불필요한 컴포넌트를 배제했다.
주요 구현 특징은 다음과 같다:
- 빠른 파일 비교: **xxHash32(WASM)**를 사용하여 변경된 파일만 빠르게 추려낸다.
- 효율적인 저장: 사운드 파일은 AWS S3의 Versioning Bucket에 저장하고, 메타데이터는 Local Git을 DBMS처럼 활용해 관리한다.
- 기술 스택: Next.js와 tRPC를 활용한 풀스택 구조로 개발 공수를 줄였다.
Sonic은 S3 업로드와 Git 커밋을 결합하여, 비개발자도 복잡한 Git 명령어나 충돌 걱정 없이 리소스의 버전을 관리하고 동기화할 수 있는 환경을 제공한다.
이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.