Photon is a on-premises real-time socket server and cross platform multiplayer game development framework that is extremely fast and very simple to use.
Use the multiplayer API from Photon Server to join many players together in a shared game session and transfer data and messages synchronously, in real-time, between connected players across platforms.
Your own Multiplayer Game Backend!
Photon Cloud allows for a broad range of game types using the client SDKs, including and not limited to:
- First Person Shooters
- Racing Games
- Minecraft type of games
- Casual real-time games
- Asynchronous and synchronous games
With Photon Server applications you get the frameworks to build and run your own multiplayer game backend.
All applications are provided in C# source code. The apps are tuned for performance and can be used out of the box or customized as needs be. Deploy is very convenient using xcopy deploy with either automatic or manual restarting.
Applications available with the Photon Server SDK are
- LoadBalancing: Load balanced scaling across servers - this is powering our Photon Cloud!
- MMO: A good solution for large world games with plenty of players.
- Lite: This should be used as introduction only to many of Photon basic concepts (operations, events).
Get the FREE SDK now. After signup you can download a FREE 100 CCU license!
Under the Hood
Photon Server Architecture
The Photon Core is written in native C++ for performance reasons
- The core uses IO Completions Ports (IOCP) for high performance socket handling
- Implements the heavy "lifting" of the protocols
- Support reliable UDP, TCP, HTTP and Web Sockets
The business logic executes in a .NET CLR hosted by the core.
- Contains the applications running on Photon
- Written in C# or any other .NET language
The Photon Server core supports the following protocols
- reliable UDP (based on eNET) and specially tuned for Client-2-Server architectures
- Binary TCP
- Web Sockets
The transfer protocol is very lean and slim. Photon wraps up the networking layer of each client platform for you. Have your game clients communicate cross-platform and across protocols. Put your data in hashtables and just send it. Photon does the de-/serialization, you dont!
Server Dev Framework (C#)
All applications sit on top of a development framework that solves common tasks for you.
- RPC calls are simply and flexible mapped to operation instances.
- Threading problems are solved using message passing through fibers.
- Photon is designed to saturate bandwidth before the CPU becomes the bottleneck.
Server Development Tools
Fully running in Visual Studio >> F5 >> Debug right from your code! Use all the first class tools from .NET Development.
- Microsoft: Visual Studio
- Redgate: Memory Profiler, Performance Profiler, Reflector (see here ...)
- Jetbrains: ReSharper, dotTrace, dotCover, dotPeek (see here ...)
Data Persistence (DBs)
Photon Server does not provide a persistence layer.
.NET/Windows supports all major products.