- Home /
How can I instantiate different prefabs for owner and proxy using photon?
I was using uLink and on uLink I have the ability to instantiate different prefabs for owner, proxy and server. Using photon it seems to have only the option to instantiate one prefab for all machines. How can I solve this problem? Is there one way to instantiate different prefabs for proxy and owner?
Answer by tobiass · Dec 11, 2014 at 11:36 AM
You have 2 options:
You can create a prefab which is basically just a place-holder for the actual object you instantiate. A script on the prefab checks isMine and creates whatever you want the owner or proxy to see.
Skip PhotonNetwork.Instantiate and do instantiation via buffered RPC. This means: The player who needs to instantiate something will call PhotonNetwork.AllocateViewID() to get a viewID, then it calls some RPC with that viewID. All clients execute the RPC method and execute GameObject.Instantiate a local object or a proxy. BOTH prefabs you instantiate need a PhotonView and in the RPC method you need to assign the viewID that the originating player sent.
There is a short section about manual instantiation in the manual that is in the PUN package. For detail questions, post in the Exit Games Forum.
Answer by karljj1 · Dec 06, 2014 at 11:47 AM
You can check if you are the owner with photonView.isMine or master client with photonNetwork.isMasterClient. With these you could customise the instantiate behaviours.
Yeah, that's what I'm doing. But what I really want is to instantiate different prefabs for owner and proxy. But if it is not possible...
Your answer
Follow this Question
Related Questions
Spawn point for specific player.Photon Pun2 0 Answers
Host unity game with photon 0 Answers
Instantiation of HTC Vives CameraRig using Photon, client is moving other client's CameraRig 0 Answers
Unity photon player position not synching when colliding 0 Answers
Multiplayer , account to log in with and saved inventory after a game 0 Answers