기사

Meta Quest용 UG 배포 및 최적화

ADAM AXLER / UNITYSenior Content Marketing Manager
Jul 28, 2026
UG | 컨티뉴엄 XR
이 웹페이지는 이해를 돕기 위해 기계 번역으로 제공됩니다. 기계 번역으로 제공되는 콘텐츠에 대한 정확도나 신뢰도는 보장되지 않습니다. 번역된 콘텐츠의 정확도에 관해 의문이 있는 경우 웹페이지의 공식 영어 원문을 참고해 주시기 바랍니다.

Continuum XR 에게 있어 Meta Quest용 UG를 구축한다는 것은 생물 수집, 사회적 상호 작용, 물리 기반 VR 게임 플레이를 결합하여 독립형 헤드셋에서 사용 가능한 확장 가능한 멀티플레이어 경험을 구현하는 것을 의미했습니다. UG는 생물 수집 게임과 메카닉 조종 게임에서 영감을 받아, 플레이어가 퀘스트, 거래, 구매를 통해 공룡을 수집하고 고릴라처럼 움직이는 방식으로 공룡을 타고 다닐 수 있도록 합니다.

그러한 경험을 제공하기 위해서는 Meta Quest 하드웨어 전반에 걸쳐 멀티플레이어 네트워킹, 배포 워크플로 및 성능 최적화의 균형을 맞춰야 했습니다. 또한, 개발팀은 모바일 하드웨어에서 안정적인 성능을 유지하면서 실시간 업데이트, 네트워킹 시스템 및 VR 게임플레이 상호 작용을 지원해야 했습니다.

저희는 VR 개발자인 마크 마인한과 콘래드 더거, 그리고 공동 프로듀서인 할라 루비에르와 함께 Unity 이용한 UG 구축 및 배포, 독립형 VR 위한 네트워킹 및 성능 최적화, 그리고 메타퀘스트 기기 전반에 걸쳐 실시간 멀티플레이어 VR 게임을 확장하는 방법에 대해 이야기를 나눴습니다.

주요 기술적 목표는 무엇이었습니까?

마크 마인한: Meta Quest의 경우, UG 의 방대한 규모에도 불구하고 게임이 원활하게 실행되어야 했습니다. 다른 엔진들도 테스트해봤지만, Unity 최고의 지원과 성능을 제공했습니다. Photon Fusion 2 공유 모드는 네트워킹의 대부분이 클라이언트 측에서 실행되므로 확장성이 뛰어나 개발 비용과 확장성을 보장합니다.

Unity 필요한 통합 및 지원을 제공했기 때문에 네트워킹 스택이나 게임 엔진을 처음부터 개발하는 대신 기존 도구를 활용했습니다.

효율적인 VR 배포를 지원하기 위해 Unity 에서 빌드 파이프라인을 어떻게 구성하셨나요?

MM: 이 팀은 Unity Version Control 사용하여 팀원들이 동시에 여러 브랜치에서 작업하고 자신의 변경 사항을 관리할 수 있도록 합니다. 저희는 메인, 라이브, 개발, 베타, 기능 브랜치를 사용합니다. Unity Version Control 팀의 동기화를 유지하고 변경 사항을 쉽게 푸시하고 풀할 수 있도록 해줍니다.

빌드 및 배포를 위해 Unity Hub 사용하여 Android 패키지 키트(APK)를 빌드하고 Meta Quest 개발자 Hub를 사용하여 몇 분 만에 배포합니다. 그 후, 빌드를 승격 또는 강등하고 플레이어나 알파 테스터에게 배포합니다.

콘래드 더거: 출시 초기, 특히 UG가 인기를 얻으면서 대규모로 어떤 일이 일어나고 있는지 파악하는 것이 중요했습니다. 에디터가 모든 시나리오를 시뮬레이션할 수 없었기 때문에 디버그 심볼을 업로드하고 Mixpanel 대시보드를 사용하여 오류를 지속적으로 모니터링했습니다. 저희는 문제가 재발하지 않도록 매일 그리고 패치가 적용될 때마다 점검을 계속하고 있습니다. 이를 통해 문제가 플레이어에게 영향을 미치기 전에 해결할 수 있습니다.

MM: Meta를 통해 크래시 심볼에 직접 접근할 수 있으므로 별도의 솔루션이 필요하지 않았습니다. Unity 사용하면 빌드와 Meta 업로드를 같은 단계 또는 별도의 단계에서 수행할 수 있습니다. 크래시 심볼이 포착하지 못하는 오류 및 예외의 경우, 플레이어별 업로드 속도를 제한하고 전체 스택 추적을 포함하는 맞춤형 도구를 개발했습니다.

우리는 해당 보고서를 사용자 기록과 함께 검토하여 이벤트 발생 직전에 사용자들이 무엇을 하고 있었는지 정확히 파악합니다. Mixpanel은 이벤트를 집계하여 팀이 쿼리, 흐름 및 시각화를 구축할 수 있도록 지원하므로 문제를 신속하게 발견하고 해결할 수 있습니다.

UG | 컨티뉴엄 XR
UG | 컨티뉴엄 XR

VR 기기를 대상으로 배포할 때 가장 큰 제약 사항은 무엇이었습니까?

CD: 빌드 설정은 간단합니다. 저희는 Unity의 내장 빌드 시스템을 사용하고 프로젝트를 Android 타겟으로 유지합니다. 저희는 APK 파일을 빌드하고, Meta Quest 개발자 허브에 업로드한 후, Meta Quest 플랫폼을 통해 배포합니다. 간혹 APK 파일을 다시 빌드해야 하는 경우가 있는데, 이 과정에서 소수의 업로드 오류가 발생했습니다.

MM: 얼리 액세스 기간 동안 이 게임은 악의적인 사용자, 모더, 해커들을 끌어들였습니다. APK 배포로 인해 보안 위험이 발생했기 때문에 맞춤형 솔루션과 Unity Asset Store 애드온을 사용하여 VR 빌드 보안을 강화했습니다.

CD: 저희는 파일과 백엔드를 보호하기 위해 난독화 패키지를 사용합니다. 당사의 자체 배포 프로세스는 Meta 인증을 통해 검사를 수행하며, PlayFab은 계정 활동을 확인하고 무단 액세스를 방지하는 데 도움을 줍니다. 또한, 플레이어가 오래된 APK를 사용하여 로그인할 수 없도록 최소 버전 요구 사항을 적용합니다.

할라 루비에르: VR 하드웨어는 세대 간 빠른 속도로 발전하고 있으며, 여전히 많은 플레이어가 Meta Quest 2를 사용하고 있습니다. 새로운 기능을 추가할 때마다 성능에 대한 고려가 필요합니다. 우리는 아이디어가 성과에 미치는 영향을 기준으로 정기적으로 평가합니다. 그러한 절충은 VR 에서 분명한 과제인데, 하드웨어 차이가 플레이어 경험에 상당한 영향을 미칠 수 있기 때문입니다.

UG | 컨티뉴엄 XR
UG | 컨티뉴엄 XR

Unity 2021.1에서 Unity 6으로 업그레이드하면서 배포 워크플로에 어떤 영향을 미쳤습니까?

MM: 저희는 원래 팀 표준으로 Unity 2021.1 버전을 사용했지만, 해당 버전에는 VR 초점 및 트래킹 불일치를 포함한 빌드 및 워크플로 문제가 있었습니다.

Unity 6으로 업그레이드할 때, 저희는 워크플로우에 더 안정적인 버전을 선택했습니다. 업그레이드에는 더 이상 사용되지 않는 API에 대한 코드 업데이트가 필요했으며 완료하는 데 며칠이 걸렸습니다. 안정성 향상을 위해 업그레이드했습니다.

CD: Unity 6이 Fusion과 더 잘 호환되었기 때문에 전환하게 되었습니다. Unity 6는 개발 초기 단계에서 멀티플레이어 시나리오를 테스트하는 데 도움이 되는 플레이모드 툴 도 지원했습니다. 결국 보안을 강화한 후 사용을 중단했습니다. 우리는 대부분의 마이그레이션 문제를 약 일주일 안에 해결했습니다.

MM: 애니메이터 오버플로 동작이 주요 문제였지만, 해결책을 개발했습니다.

Unity 6에는 새로운 버그가 발생하지 않았습니다. Unity 6에서 애니메이션 카운터가 최대값에 도달하는 것과 관련된 기존 문제가 다시 나타났습니다. 이를 무시하는 대신, 영향을 받는 애니메이션을 식별하고 오버플로가 발생하기 전에 재설정하는 맞춤형 에디터 도구와 시스템을 구축했습니다.

UG | 컨티뉴엄 XR
UG | 컨티뉴엄 XR

VR 하드웨어 배포 과정에서 성능 목표를 어떻게 정의하고 검증했습니까?

MM: 저희는 여러 가지 성과 지표를 추적합니다. 핵심 지표 중 하나는 FPS이며, 저희 기기에서의 목표치는 72fps입니다. 우리는 해당 임계값 아래로 떨어지는 수치와 그러한 현상이 발생하는 빈도를 모니터링합니다. 저희는 Unity Profiler 와 Meta 대시보드를 사용하는데, 이를 통해 기기별 분석 정보를 얻을 수 있습니다.

저폴리곤 에셋과 재사용 가능한 셰이더 덕분에 메모리 문제는 크게 발생하지 않았으며, 따라서 메모리 관련 충돌은 거의 발생하지 않습니다. UG는 많은 객체와 네트워크 기반 상호 작용을 포함하고 있기 때문에 네트워킹은 주요 초점 사항입니다. 우리는 성능 문제와 충돌을 해결하고 확장성을 개선하기 위해 관심 영역과 같은 기술을 사용하기 위해 Photon 팀과 직접 협력했습니다.

또한, 저희는 충돌을 추적하고 새로운 변경 사항이나 성능 문제가 충돌의 원인인지 조사합니다.

배포 전에 플랫폼별 빌드를 최적화하기 위해 Unity Profiler를 어떻게 활용하셨나요?

MM: Unity Profiler는 랙 현상을 추적하고 프레임 드롭을 모니터링하는 데 도움이 됩니다. 렌더링 과정, 메모리 사용량 및 프레임 활동을 검토하여 원인을 찾을 수 있습니다. 우리는 이를 이용하여 다이노덱스 관련 문제를 조사했습니다. 각 플레이어는 자신만의 공룡도감을 가지고 있으므로, 런타임에 관련 구성 요소를 찾기 위해 장면 검색 API 사용했습니다.

에디터에서는 정상적으로 작동했지만, 실제 테스트에서는 공룡도감을 열 때 심각한 끊김 현상이 발생했습니다. 프로파일러는 API 호출이 객체가 많은 장면에서 성능 저하를 유발한다는 것을 보여주었습니다. 문제의 스크립트와 함수를 정확히 파악하고 동일한 패턴이 사용된 다른 사례들을 찾아내어 프로젝트 전반에 걸쳐 렉 현상을 줄였습니다.

CD: 이는 성능 문제 디버깅에 매우 중요했습니다. 다이노덱스 관련 문제로 인해 로비를 열 때 몇 초간 화면이 멈출 수 있습니다.

또 다른 예로는 공룡 모형이 줄지어 진열된 플레이어용 선반이 있습니다. 기존 구현 방식은 단일 프레임에 여러 개의 네트워크 객체를 생성하여 성능 저하를 초래했습니다.

프로파일러 분석 결과 이러한 급증 현상은 Fusion 스폰 호출과 NetworkObject 및 NetworkTransform 구성 요소를 포함하는 대규모 객체 계층 구조에서 비롯된 것으로 나타났습니다. 이를 통해 정확한 프레임과 원인을 파악하고, 반복적인 리스폰 및 충돌을 포함한 게임 플레이를 방해하는 문제를 해결할 수 있었습니다.

UG | 컨티뉴엄 XR
UG | 컨티뉴엄 XR

안정적이고 성능이 뛰어난 VR 환경을 제공하는 데 가장 큰 영향을 미친 배포 결정 또는 최적화 사항은 무엇이었습니까?

MM: QA는 우리 회사의 강점 중 하나입니다. Unity 사용하면 베타 모드 및 기타 테스트 환경에 맞게 설정을 구성할 수 있는 특정 대상 빌드를 만들 수 있습니다. 저희는 소규모 플레이어 그룹에 빌드를 배포하고, 문제를 수정하고, 알파 버전에 업데이트를 푸시하는 작업을 몇 분, 보통 10분 이내에 완료할 수 있습니다.

이 워크플로우를 통해 변경 사항이 실제 플레이어에게 적용되기 전에 신속하게 테스트할 수 있습니다. 잦은 업데이트를 제공하고 이러한 피드백 루프를 유지하는 능력은 안정성의 핵심입니다.

CD: 최적화 작업은 2025년 1월 개발 시작 이후 지속적으로 진행되어 왔습니다. 우리는 신속하게 움직여 9월에 테스터들에게 배포하고 정식 출시했으며, 출시 후에는 매주 업데이트를 제공했습니다.

우리는 처음부터 네트워킹, 성능 및 코드 품질에 집중했습니다. QA 프로세스는 그러한 속도를 뒷받침하여 새로운 시스템을 신속하게 테스트할 수 있도록 했습니다. 또한 성능이나 개발 측면에서 얻을 수 있는 이점을 정당화하지 못하는 기능은 제외합니다.

UG | 컨티뉴엄 XR
UG | 컨티뉴엄 XR

VR 개발자를 꿈꾸는 사람들에게 가장 중요한 팁은 무엇인가요?

MM: 작은 시제품이라도 좋으니 무엇이든 만들어 보세요. 다듬을 필요가 없습니다. 게임잼, itch.io, SideQuest 또는 Meta Horizon 스토어를 통해 작품을 공유하고 직접적인 피드백을 받아보세요. 비판을 개인적으로 받아들이지 말고, 피드백을 개선의 발판으로 삼으세요. 많은 VR 개발자들이 학습 과정에서 공유를 꺼리지만, 고립된 환경에서 작업하면 성장이 더뎌집니다.

HL: 베타 테스트는 매우 중요합니다. UG는 출시 전에 4~6주간의 비공개 알파 및 베타 테스트를 거쳤으며, 이를 통해 최종 사용자 경험을 다듬을 수 있었습니다. 플레이어들이 개발자들이 예상하는 대로 행동하지 않는 경우가 많기 때문에 외부 테스터들이 게임의 실제 플레이 방식을 밝혀냅니다. 이러한 피드백은 개발자가 의도한 플레이어 경험과 실제 플레이어 경험 사이의 격차를 줄이는 데 도움이 되므로, 게임이 준비되었다고 느껴지더라도 개발팀은 이 과정을 건너뛰어서는 안 됩니다.

Unity 로 제작된 프로젝트에 대한 자세한 내용을 보려면 리소스 페이지를 방문하세요.