최신 웹용 게임 빌드
우수한 게임 개발자는 특정 플랫폼의 기회를 활용하려면 해당 플랫폼의 고유한 특성을 수용하는 것이 중요하다는 것을 알고 있습니다. 그렇다면 웹의 고유한 특징은 무엇일까요? 웹 게임은 무엇으로 정의되나요?
Google I/O 2019에서 웹 게임 생태계의 현황, 최신 웹 게임 개발을 위한 현재 권장사항, 업계의 미래에 대한 제 생각을 발표했습니다. 이 블로그 게시물에서는 YouTube에서 전체를 시청할 수 있는 강연의 주요 사항을 요약하여 소개합니다.
웹 게임의 과제
Google에 합류하기 전에 Duet이라는 모바일 게임을 만들었는데, 이 게임은 거의 2,000만 번 다운로드되었습니다. 이 경험을 통해 게임으로 성공적인 비즈니스를 구축하는 데 필요한 세 가지 필수 요소를 알게 되었습니다.
- 기능 게임
- 사용자
- 사용자에게서 수익을 창출하는 방법
이 세 가지 요소가 없으면 게임 개발자는 성공할 수 없습니다. 요즘에는 마지막 두 가지가 가장 중요합니다. WeChat, Facebook 인스턴트 게임 등 폐쇄된 HTML5 생태계는 HTML5를 사용하여 게임을 빌드할 수 있음을 보여줍니다.
최신 권장사항
'기능적 게임'이란 게임을 작동시키는 가장 핵심적인 세 가지 요소를 의미합니다.
- 성능
- 영상
- 오디오
이러한 각 영역에서 웹 플랫폼은 지난 몇 년 동안 상당한 진전을 이루었습니다. CPU 성능의 경우 WebAssembly라는 성능이 우수한 새로운 표준을 사용할 수 있습니다. 그래픽 측면에서 WebGL 1.0은 우수한 교차 브라우저 지원을 제공하며 WebGPU와 같은 향후 표준은 Vulkan 및 Metal과 유사한 확장 가능한 그래픽 프로그래밍의 미래를 위해 웹 플랫폼을 설정하고 있습니다. 마지막으로 웹 오디오에는 공통 Web Audio API와 최근의 Audio Worklet API가 있습니다.
최근 Unity는 HTML5 기반 플랫폼용 2D 게임 빌드에 중점을 둔 Project Tiny라는 새로운 런타임을 미리 공개했습니다. Project Tiny는 Unity의 엔진 구조에 새로운 모듈식 설계를 적용하여 핵심 Unity 엔진의 크기를 1MB 미만으로 줄입니다.
기술적인 측면에서 웹 게임 개발을 수용하기에 지금보다 좋은 시기는 없습니다.
루프 진입
물론 좋은 게임은 우수한 성능, 그래픽, 사운드만으로 구성되는 것이 아닙니다. 재미가 있어야 좋은 게임이라고 할 수 있습니다.
재미는 제품에서 측정하기가 어려운 요소입니다. 게임이 충분히 재미있거나 흥미롭거나 혁신적이면 사용자는 친구에게 알리고 싶어 합니다. 즉, 경험을 공유하고 싶어 합니다. 이 기회를 활용하고 웹과 결합하면 바이럴 성장의 잠재력을 최대한 발휘할 수 있습니다. 특히 웹에서는 중앙 검색 플랫폼이 없으므로 사용자를 획득하는 가장 좋은 방법은 게임이 최대한 바이럴되도록 하는 것입니다.
우수한 게임 개발자는 소프트웨어 또는 하드웨어 수준에서 특정 플랫폼을 활용하려면 해당 플랫폼의 고유한 특성을 수용하는 것이 중요하다는 것을 알고 있습니다. 예를 들어 모션 컨트롤이 있는 콘솔용 게임을 빌드하는 경우 이러한 모션 컨트롤을 수용하는 가장 좋은 방법을 생각해 보아야 합니다.
즉, 빌드하려는 플랫폼 사용자의 기대치를 존중해야 합니다. 웹 사용자는 무엇을 기대하나요? 웹 콘텐츠가 빠르게 로드되고 빠르게 상호작용할 수 있기를 기대합니다. 저는 강연에서 게임이 빠르게 로드되고, 사용자를 게임 세계로 끌어들이고, 사용자의 참여를 유도하며, 사용자에게 경험을 공유하도록 추가 인센티브를 제공하도록 설계된 방법의 몇 가지 예시를 웹과 웹 외부에서 모두 다루었습니다.
저는 성공적인 웹 게임을 만드는 열쇠는 웹의 이러한 고유한 특성을 활용하는 것이라고 생각합니다. 특히 웹의 URL 구조와 사용자가 참여할 수 있는 공유 루프의 강점이 중요합니다.
다음은 Construct 3을 사용하여 빌드한 웹 게임의 예로, 재미있고 매력적인 방식으로 URL을 활용합니다.
Space Board는 터치 컨트롤을 사용하여 모바일에서 플레이하거나 키보드 입력을 사용하여 데스크톱에서 플레이할 수 있는 매우 간단한 게임입니다. 목표는 장애물 미로를 탐색하여 끝에 있는 목표에 도달하는 것입니다.
Space Board는 URL을 어떤 방식으로 활용하나요? 수준 구조를 URL 자체에 인코딩합니다. 모든 수준은 벽, 적 포탑, 열쇠, 잠긴 문 등의 객체로 구성된 10x10 그리드로 정의됩니다. 그러면 URL에 모든 개별 그리드 위치와 콘텐츠가 나열됩니다. 벽은 W
문자로 표시됩니다. 빈 공간은 밑줄 문자입니다.
예를 들면 다음과 같습니다.
https://io-space-board.firebaseapp.com/?gameWorld=_wwwwwwwwww___ww__eww_k__d___ww___ww___ww_wwwww_www_wwwww_www___ww___ww_s_ww_f_ww___ww___wwwwwwwwwwww
보기에는 좋지 않지만 작동합니다.
플레이어는 Space Board에서 레벨을 완료하면 위에 표시된 간단한 레벨 편집기를 사용하여 자신만의 레벨을 디자인할 수 있습니다. 플레이어가 직접 레벨을 설계할 수 있도록 하여 맞춤설정할 수 있는 기회를 제공합니다. 사용자가 제작 및 맞춤설정을 통해 게임과 연결되고 소유권을 느끼면 그 '물건'을 세상과 공유하고 싶어질 가능성이 높습니다.
게임을 공유하고자 하는 욕구는 웹 게임으로 달성하고자 하는 바이럴 루프의 시작입니다. 이 게임 디자인 및 공유 메커니즘은 가능한 한 가지 예일 뿐이지만 다른 많은 가능성도 있습니다. 자세한 예는 강연을 시청해 보세요.
투자수익
현재 게임 개발자가 웹 게임을 통해 수익을 창출하는 방법에는 두 가지 관점이 있습니다.
- 게임에서 직접 수익 창출
- 획득 채널로 취급
웹 게임을 획득 채널로 취급한다는 것은 iOS/Android/데스크톱 게임의 웹 버전을 플레이어의 관심을 끌고 더 큰 iOS/Android/데스크톱 바이너리를 다운로드하도록 유도하는 메커니즘으로 활용하는 것을 의미합니다. 그런 다음 iOS/Android/데스크톱 플랫폼의 내장 결제 및 결제 백엔드를 사용하여 수익을 창출합니다.
수익 창출은 일반적으로 광고와 마이크로결제의 조합입니다. 웹이 게임 광고에서 모바일 플랫폼과 경쟁하려면 아직 해야 할 일이 많습니다. 예를 들어 보상형 동영상 광고와 같은 형식은 수년 동안 모바일 게임에서 매우 인기가 있었지만 이제야 광고 네트워크에서 웹에 이러한 형식을 배포하기 시작했습니다.
하지만 기존 배너 광고 및 전면 광고를 통한 광고를 통해 오픈 웹에서 계속 성공을 거두고 있는 게임 개발자도 있습니다. 이러한 형식에 대한 자세한 내용은 게임용 애드센스를 참고하세요.
소액 거래의 경우 구현할 수 있는 결제 수단이 무제한이므로 웹은 완전한 유연성을 제공합니다. 하지만 이 특성은 양날의 검입니다. 단점은 플레이어가 플랫폼별 모바일 스토어 결제 수단에 익숙한 것에 비해 새로 발견한 웹사이트에 대한 암묵적인 신뢰가 낮다는 점입니다.
웹에 더 일관된 결제 UI를 제공하는 솔루션 중 하나는 Payment Request API입니다. 이 API는 브라우저에 표시되는 UI를 호출하고 신용카드 및 청구서 수신 주소와 같은 결제 세부정보의 획득을 간소화합니다. 하지만 결제 세부정보를 획득하는 것은 거래를 진행하는 첫 번째 단계에 불과합니다. 백엔드 결제 플랫폼도 필요합니다.
앞으로
지난 몇 년 동안 놀라울 정도로 성공적인 웹 게임이 여러 개 있었습니다. Slither.io는 웹이 제공하는 엄청난 도달범위와 바이럴 성장 기회를 보여주는 혼합 웹 및 플랫폼별 비즈니스를 구축했습니다. Poki.com과 같은 포털은 사용자 환경을 혁신하고 있으며 Subway Surfers 또는 Crossy Road와 같이 모바일 버전과 품질이 동일한 게임을 비롯해 매일 새로운 게임을 출시하고 있습니다.
또한 개방형 웹 외부로 눈을 돌리면 웹 게임이 이미 인기를 얻고 있음을 알 수 있습니다. WeChat 및 LINE과 같은 폐쇄형 생태계는 개방형 웹에서는 플레이할 수 없지만 HTML5 및 WebView와 같은 웹 기술을 기반으로 하여 만족스러운 게임을 제공합니다. 이는 웹이 플랫폼별 모바일 게임에 필적할 만한 수준의 화질에 도달했다는 분명한 신호입니다. 화질의 교과서적 정의가 아니라 더 중요한 측정항목인 플레이어의 주의 집중도에서 그렇습니다.