PUN interop with other clients using native SDK

It is possible or feasible to use PUN in some clients with other clients in the same room using apps not built with Unity, but using one of the native SDKs? I am expecting of course that there would be some effort to duplicate and correctly interpret the PUN behaviour. Is there any documentation to help with this other than, say, looking at the PUN classes included with the Unity plugin?

Another question, is there a layer below PUN that would make using Photon between a Unity app and non-Unity app more straightforward?

FYI, I do realise that sticking to an all Unity solution is a much more sensible thing to do, but I want to look at what options I have.


  • For interaction with non Unity clients I would recommend to not use PUN, but the the standard Unity Client SDK, which is providing you with the C# version of the normal Photon Client API. PUN basically just wraps the Unity Client SDK to provide an API that is more similar to the one of Unity built-in networking.
    With the Unity Client SDK from our download area you will be able to use the same logic like with the native client SDKs (apart from language differences between C# and C++/objC (I assume that you intend to use a C++ or objC client SDK, as you say "native")). That will probably be the easier approach than to make the other Clients behave like PUN by adding your own PUN-port on top of them.
  • Does the Unity Client SDK work for Photon Cloud?
  • Yes. Use the LoadBalancing API (class LoadBalancingClient, etc).
    The demos in the packages linked below all work with the Cloud but you have to edit the appID in code first.
Sign In or Register to comment.