Online Subsystem (온라인 서브시스템) 및 그 인터페이스는 Steam, Xbox Live, Facebook 등의 온라인 서비스 기능을 공통된 방식으로 액세스할 수 있는 방법을 제공합니다.
여러 플랫폼에 출시하거나 여러 온라인 서비스를 지원하는 게임을 만들 때, 온라인 서브시스템을 사용하면 개발자는 각 지원 서비스에 맞게 구성만 조정해 주면 됩니다.
언리얼 엔진의 Online Subsystem (OSS) 은 멀티플레이어나 온라인 기능을 제공하기 위한 추상화 계층(플러그인 프레임워크) 입니다.
쉽게 말해, 게임에서 "플랫폼별 온라인 서비스(Steam, Epic Online Services, PSN, Xbox Live 등)" 와 직접 맞붙지 않고, 공통된 인터페이스를 통해 온라인 기능을 다룰 수 있도록 해줍니다.
핵심 개념
- 추상화 계층
- 온라인 기능(로그인, 매치메이킹, 친구, 음성채팅 등)을 인터페이스로 정의하고,
- 실제 구현은 Steam, EOS, PSN 같은 플랫폼별 Subsystem이 담당합니다.
- 즉, 코드는 공통 API를 호출하지만, 어떤 Subsystem을 쓰느냐에 따라 백엔드는 달라집니다.
- 플러그인 구조
- OnlineSubsystem → 인터페이스 정의
- OnlineSubsystemSteam, OnlineSubsystemEOS → 실제 구현
- 게임 프로젝트에서 DefaultEngine.ini 같은 설정 파일에서 어떤 Subsystem을 쓸지 정할 수 있습니다.
- 대표 기능
- 세션 관리 : 서버 생성, 참가, 검색 (멀티플레이 매치메이킹)
- 아이디/로그인 : 플랫폼 계정 인증
- 친구 시스템 : 친구 초대, 상태 확인
- 리더보드 & 업적 : 플랫폼별 기록 관리
- 음성 채팅 : 인게임 보이스
- 클라우드 저장소 : 일부 플랫폼에서 지원
[참고]
https://dev.epicgames.com/documentation/ko-kr/unreal-engine/online-subsystem-in-unreal-engine
'Unreal Engine > Unreal Engine' 카테고리의 다른 글
| [Unreal Engine] Asset, Tsubclassof, CDO, staticclass (0) | 2025.06.09 |
|---|---|
| [Unreal Engine] 프로젝트, 모듈, 플러그인 개념 (0) | 2025.06.08 |
| [Unreal Engine] DataAsset vs DataTable (0) | 2024.08.20 |
| [Unreal Engine] TObjectPtr vs Raw Pointer (0) | 2024.06.10 |
| [Unreal Engine] 플레이어 로직을 Controller에? Pawn에? (0) | 2024.05.25 |