Realtime Core Intro

Overview

Realtime Core is a modern C++20 client-side SDK and the base layer for higher level Photon network solutions. It focuses on matchmaking and message transport: connect to the Photon Cloud, match players into rooms and exchange messages via events.

Start With a Higher Level SDK

Realtime Core is the low-level foundation of all Photon's higher level SDKs, supporting them with its battle proven matchmaking and data transport capabilities backed by the Photon Cloud.

For most cases, the recommendation instead is to use the feature-rich SDKs: Fusion for Unity, Quantum for Unity, Fusion for Unreal, Fusion for Godot and Fusion Core for custom C++ engine integrations.

Use Realtime Core directly only in the rare case in which just matchmaking and message transport are needed or when the goal is building a customer synchronization layer on top of it.

Realtime Core is cross platform and runs on desktop, mobile, web and console targets. It also ships with a flat C API and a C# wrapper, so the same client core can be used outside of C++.

The single user-facing entry point is RealtimeClient. You construct one instance, drive it with Service() from your game loop and co_await (or poll) its asynchronous operations.

The API rests on four design pillars: coroutine-based asynchronous operations built on Task and Result, callback delivery through Broadcaster subscriptions, UTF-8 strings throughout and error handling that does not require exceptions.

Where to Go Next

Feature Overview

Feature Area Description Manual Page
Connection and regions Connect to the Photon Cloud and choose the region to play in. Connection and Regions
Authentication Identify users and integrate platform or custom authentication providers. Authentication
Lobbies and matchmaking List rooms and match players randomly or by filter, including the SQL lobby. Lobbies and Matchmaking, SQL Lobby Matchmaking
Rooms and players Create, join and manage rooms and the players inside them. Rooms and Players
Properties Share key-value data on rooms and players. Custom Properties
Custom events Send game messages to other players, with targeting and caching. Custom Events
Structured payloads Send self-describing event payloads with RealtimeValue, including your own custom types. Structured Payloads
Direct messaging Exchange peer-to-peer messages with optional server relay fallback. Direct Messaging
Friends Look up where friends are playing. Friends
Statistics Inspect connection quality and traffic counters. Statistics
Logging Route SDK logs into your own logging system. Logging

Language Wrappers

Realtime Core ships with a language wrapper for C# and a pure C API. Wrappers for other languages are planned.

Requirements

Building against the C++ libraries requires a C++20 toolchain. The SDK Download page lists the supported platforms and compilers.

You also need a Photon account and an App Id created in the Photon Dashboard.

Back to top