피드로 돌아가기
How to host a Unity game in a Space
Hugging Face BlogHugging Face Blog
Backend

Hugging Face가 Static HTML 템플릿과 WebGL 빌드를 조합해 Unity 게임을 Space에서 직접 호스팅 가능하게 구현

How to host a Unity game in a Space

2023년 4월 21일7beginner

Context

Unity로 개발한 게임을 웹에서 플레이 가능하게 배포하려면 별도의 호스팅 인프라와 배포 파이프라인이 필요했다. Hugging Face Spaces는 Machine Learning 데모 공유에 최적화되어 있었으나, 게임 배포에도 활용 가능함을 보여주는 활용 사례가 부족했다.

Technical Solution

  • Unity 프로젝트 빌드 타겟을 WebGL로 전환: File > Build Settings에서 Build Target을 WebGL로 지정
  • 압축 포맷 비활성화: Player Settings의 Publishing Settings에서 Compression Format을 Disabled로 변경
  • Hugging Face WebGL 템플릿 적용: Player Settings의 Resolution and Presentation에서 Hugging Face 커스텀 템플릿으로 선택 (선택사항)
  • Git-LFS를 통한 대용량 파일 관리: git lfs installgit lfs track Build/* 커맨드로 WebGL 빌드 결과물 추적
  • Static HTML Space에 빌드 파일 배포: 클론한 Space 저장소에 빌드 폴더 내용을 복사하고 git push로 배포

Key Takeaway

Unity WebGL 빌드 결과물과 Git-LFS 기반 파일 관리를 조합하면, Hugging Face Spaces 같은 정적 호스팅 플랫폼에서도 인터랙티브한 게임을 운영할 수 있으며, 이는 프로토타입 공유와 데모 배포의 진입장벽을 낮춘다.


Unity 게임 개발자가 Hugging Face Spaces를 배포 대상으로 고려하는 경우, WebGL 빌드 타겟 전환 → 압축 비활성화 → Git-LFS 설정 → Space 리포지토리에 푸시하는 4단계 워크플로우를 따르면 별도 웹 서버 구축 없이 게임을 공개할 수 있다.

원문 읽기