Simple and Trusted
Multiplayer for Unity.
PUN is the trusted state transfer multiplayer SDK made for Unity. It is boasting a stellar 5-star rating and is proudly being awarded „Most Downloaded Assets“ by Unity.
Fusion is the
Evolutionary Leap
of PUN
Now, with Fusion’s features and performance, a new benchmark for state transfer multiplayer engines is established. New projects are advised to use Fusion to take advantage of its significant technology leap.
We value and appreciate the investment our community has made in learning and building with Photon Unity Networking. PUN will continue to receive support, ensuring that ongoing or in-development projects remain secure and supported.
PUN Features
PUN and its community has been instrumental in shaping the landscape for multiplayer game development for over a decade. Its basic, but robust feature set helped developers from all over the world to build and scale their games to global success.
PUN2011 |
Fusion2021 |
||
---|---|---|---|
Target Player Count per Session | 16 | 200 | |
Realtime Transport Layer: Matchmaking, Low Latency Relay … |
|||
Prebuilt Functionality: Area of Interest (AOI), Network Animator, Networked KCC, Networked Physics Addon |
|||
RPCs, State Replication | |||
Performance & Bandwidth | |||
Tick based simulation | |||
Full World, Client Side prediction | |||
Lag compensation | |||
Snapshot interpolation | |||
Full or Eventual Consistency |
DOWNLOAD
Photon Unity Networking
Asset Store Packages
No-cost package with various demos, pre-made scripts and reference documentation. Exports to basically all platforms.
Same content as PUN FREE, plus a 100 concurrent user plan for the Photon Cloud (approx. 40k MAU, valid 12 months). Just $95
TOP ASSETS
Integrate With PUN Easily
Search the Asset Store for packages that integrate with PUN to boost your Unity multiplayer development speed. Find some hand-picked assets below.
Scale Your Games World-Wide
All applications you develop with our suite of Photon products will run in our Photon Cloud. Here we take care of service hosting, operations and scaling. You can fully concentrate on building your game or app!
Photon Shared Mode -
Unique & Cost-Effective
In a nutshell the Photon Enterprise Cloud is like our well established public Photon Cloud
and adds the following features: Runs on dedicated servers, provides guaranteed service
levels (SLAs) and high priority support. Another big plus: You can run your own authoritative
server logic via Plug-ins. Typical Photon Enterprise Cloud scenarios are apps with 10,000 concurrent
users or more, bigger game projects that need authoritative server logic or companies whose
compliance policies restrict them to dedicated resources.
Interested? Get in touch at [email protected].
Custom Plugins -
Server Authority in Our Cloud
All Photon Cloud products are based on a client to server architecture, the most stable solution
for multiplayer games! In peer-to-peer architectures clients often cannot connect due to NAT
punch-through issues. This problem is even worse in mobile networks. With the Photon Cloud your
games will always connect.
Our operations team monitors servers 24/7 and can scale up required resources at any time.
Whether your game needs capacity for hundreds or for hundreds of thousands of concurrent users:
we scale it to your demands.
PHOTON CLOUD REGIONS
Low-Latency Gaming for Your Players
Low latency is an essential requirement in realtime multiplayer games.
For this reason Photon Cloud is hosted in all major world regions to provide
your players with a minimum latency.
Games that depend on low latency, like FPS or RTS game types, connect the players
to the nearest region. Games that are able to handle higher latency, like turnbased
game types, can connect all players to the same region.
UNET
PUN
Code Examples
Photon Unity Networking (PUN) re-implements and enhances the features of Unity’s built-in networking. Under the hood, it uses Photon’s features to communicate and match players. The API is very similar to Unity’s. Developers with prior networking experience in Unity will feel at home immediately. An automatic converter assists you porting existing Unity multiplayer projects.
Connect
PhotonNetwork.ConnectUsingSettings("1.0");
Connecting our loadbalanced servers is as easy. You can use the passed in string to distinguish between versions or use it to group clients. Connecting our loadbalanced servers is as easy. You can use the passed in string to distinguish between versions or use it to group clients.
Join a Game
PhotonNetwork.JoinRandomRoom("1.0");
To join any existing game (often referred to as room as well) that is all it takes. Filters for max amount of players and game specific criteria are optionally passed in. To join any existing game (often referred to as room as well) that is all it takes. Filters for max amount of players and game specific criteria are optionally passed in.
Create a Game
public void OnConnectedToMaster()
{
PhotonNetwork.CreateRoom("Room42", true, true, 4);
}
Set up a new room using CreateRoom. Hand it over the room’s name, the room’s ability to be found by others, the option for others to join in and the max player count.
Start Multiplayer
PhotonNetwork.RaiseEvent( (byte) eventCode,
(object) eventContent,
(bool) sendReliable
);
Exchange in-game-data, set remote object properties e.a. sending them by RPC.
For further samples, a complete quickstart tutorial, demos and references see the Online Documentation for Photon PUN.