WebGL
'WebGL'은 Unity 앱을 별도 설치 없이 웹 브라우저에서 실행하는 환경입니다. Hive Axyl에서는 Chrome, Safari, Firefox, Edge 같은 브라우저를 구분하지 않고, 콘솔에서 Web이라는 하나의 실행 환경으로 관리합니다.
WebGL 앱은 스토어가 아닌 웹 서버에 직접 배포합니다. 서버의 빌드를 업데이트하면 사용자는 URL에 접속해 최신 버전을 이용합니다.
Hive Axyl의 역할과 앱의 역할
-
Hive Axyl이 제공하는 기능
Hive Axyl은 WebGL 앱을 구현할 때 아래 기능을 제공합니다.
- 실행 환경이 Web인 전용 App ID
- WebGL 브라우저 런타임이 포함된 SDK 패키지
- 브라우저 팝업과
postMessage를 사용하는 웹 로그인 세션 - 로그인, 계정 및 인증, PG 결제, 서비스 접근 제어, 우편함, TCB Connector
-
앱이 직접 구현해야 하는 작업
Hive Axyl과 별개로 앱이 직접 구현해야 하는 대표적인 작업은 아래와 같습니다.
- WebGL App ID를 사용한 SDK 초기화
- 브라우저 팝업 정책을 고려한 로그인 UI와 콜백 처리
- 로그인 상태와 게스트 계정 복구 정보 관리
- WebGL 빌드, 웹 서버 배포, 지원 브라우저별 동작 검증
지원 환경
Hive Axyl SDK는 Unity 6000.0 이상의 WebGL 2.0 환경을 지원합니다. Chrome, Safari, Firefox, Edge의 최신 버전을 지원 대상으로 합니다.
브라우저 보안 정책과 팝업 허용 여부에 따라 로그인 동작이 달라질 수 있습니다. 실제 서비스와 같은 origin과 HTTPS 조건에서 로그인 콜백을 검증하세요.
지원 범위
제품별 WebGL 지원 범위는 아래와 같습니다.
| 제품 | 지원 여부 | WebGL 적용 시 참고 사항 |
|---|---|---|
| 로그인 | O | 웹 로그인 세션은 브라우저 팝업과 postMessage를 사용합니다. Secure Storage를 사용할 수 없으므로 로그인 상태 유지 방식은 앱이 직접 구현합니다. |
| 계정 및 인증 | O | 서버 API를 사용하는 기능은 다른 실행 환경과 같은 방식으로 연동합니다. |
| 결제 | O | PG 결제만 사용하며 주문 요청의 OS에는 OrderRequestOs.Webgl을 지정합니다. |
| 서비스 접근 제어 | O | 세 기능 모두 세션 Authorization 헤더 없이 호출하므로 로그인 전에도 사용할 수 있습니다. |
| 푸시 알림 | X | Android, iOS, macOS에서만 지원합니다. |
| 우편함 | O | 서버 API를 사용하는 기능은 다른 실행 환경과 같은 방식으로 연동합니다. |
| TCB Connector | O | 서버 API를 사용하는 기능은 다른 실행 환경과 같은 방식으로 연동합니다. |
적용 순서
- Hive 콘솔에서 실행 환경이 Web이고 스토어가 직접 배포인 App ID를 생성합니다.
- Hive Axyl SDK와 WebGL을 지원하는 모듈을 설치하고 SDK를 초기화합니다.
- 브라우저 팝업과 리다이렉트 콜백을 사용해 로그인을 구현합니다.
- 결제가 필요하면 스토어 결제 대신 PG 결제를 구현합니다.
- WebGL 빌드를 웹 서버에 배포하고 지원 브라우저에서 주요 기능을 검증합니다.
각 단계별 설정 상세 사항은 시작하기를 참조하세요.
고려 사항
WebGL 적용 시 고려해야 할 사항을 안내합니다.
인증 정보 저장
WebGL에서는 Hive Axyl SDK의 Secure Storage를 사용할 수 없습니다. SDK가 인증 정보를 영구 저장하는 방식의 자동 로그인도 지원하지 않습니다. 로그인 상태를 유지하려면 앱에서 저장 방식을 직접 구현해야 합니다.
게스트 계정의 GuestPlayerId, GuestToken, deviceKey를 별도로 보관하지 않으면 브라우저를 종료하거나 브라우저 데이터가 삭제된 뒤 기존 계정을 복구할 수 없습니다.
결제와 푸시 알림
WebGL 앱은 Apple App Store, Google Play, Steam 결제 Add-on을 사용할 수 없습니다. 결제는 PG 결제로 구현하세요.
WebGL에서는 푸시 알림을 지원하지 않습니다. WebGL 빌드에 APNs, FCM, Apple 로컬 알림 Add-on을 포함하지 마세요.
다음 단계
WebGL 적용을 시작합니다.