Shared Spaces sample overview
Updated: May 11, 2026
The Shared Spaces sample demonstrates three-layer networking: Oculus Platform (social), EOS (transport), and UE listen-server (gameplay). The project requires the Oculus fork of Unreal Engine 5.5. It features a lobby with colored rooms (Red/Green/Blue private, Purple public), portals with Network Launch, host migration, group presence with destinations and deeplink JSON, support for up to 8 players, and an EOS Net Driver for P2P NAT traversal.
- Three-layer networking architecture (Platform, Transport, Gameplay)
- EOS Net Driver for P2P NAT traversal
- Oculus Platform group presence and destinations
- Host migration in listen-server topology
- Deeplink JSON handling for session joining
- Network Launch via portals
- Meta Quest 2, Quest 3, or Quest 3S
- Oculus fork of Unreal Engine 5.5
- Oculus Developer Dashboard
- EOS account
- Clone the repository.
- Open the project using the Oculus fork of Unreal Engine 5.5.
- Configure your Oculus Developer Dashboard with app credentials.
- Set up your EOS account and configure the EOS Net Driver.
- Deploy to Quest devices for multiplayer testing.
| File / Scene | What it demonstrates | Key concepts |
|---|
Lobby | Player gathering and matchmaking | Group presence, destinations |
Red/Green/Blue rooms | Private multiplayer spaces | Access control, room isolation |
Purple room | Public multiplayer space | Open access, player discovery |
Portals | Room transitions | Network Launch, session migration |
EOS Net Driver | Transport layer | P2P NAT traversal, connection management |
Host migration | Server failover | Listen-server handoff |
Players spawn in the lobby and can enter colored rooms through portals. Red, Green, and Blue rooms are private (invite-only), while the Purple room is public. Entering a portal triggers Network Launch to transition between sessions. If the host disconnects, host migration transfers authority to another player. Group presence updates allow friends to join via deeplink JSON payloads. The EOS Net Driver handles P2P connections with NAT traversal for up to 8 players.
The sample separates networking into three distinct layers:
- Oculus Platform — Social features, group presence, destinations
- EOS (Epic Online Services) — Transport layer, P2P NAT traversal
- UE Listen-Server — Gameplay replication, state synchronization
Group presence and destinations
Group presence enables friends to see what others are doing and join their sessions. Destinations define named locations that map to deeplink JSON payloads for session joining.
When the listen-server host disconnects, authority transfers to another connected player, preserving the session for remaining participants.
The EOS Net Driver replaces the default UE net driver to provide P2P connectivity with NAT traversal, eliminating the need for dedicated servers.
- Add additional room types with custom game modes
- Implement voice chat across rooms
- Create custom group presence activities
- Add spectator mode for public rooms