Unity3d 统一光子播放器实例化

Unity3d 统一光子播放器实例化,unity3d,networking,multiplayer,virtual-reality,photon,Unity3d,Networking,Multiplayer,Virtual Reality,Photon,我有一个SteamVR Unity项目,我正在转换成多人游戏。 当另一个客户端加入游戏时,不是两个不同的玩家看到对方,而是每个玩家都有自己的游戏版本,他控制所有的玩家实例。 例如,当一个玩家连接时,一切都正常,但当第二个玩家加入时,游戏只会添加另一个玩家预置,第一个玩家也会控制该预置。 我试着用一个简单的立方体替换播放器,一切都很好。 播放器和立方体都有光子变换视图和光子视图脚本。 如果能得到任何帮助,我将不胜感激。这是一个常见的问题,从双关语开始。您可能会使用网络同步设置一个播放器预置,并为每

我有一个SteamVR Unity项目,我正在转换成多人游戏。 当另一个客户端加入游戏时,不是两个不同的玩家看到对方,而是每个玩家都有自己的游戏版本,他控制所有的玩家实例。 例如,当一个玩家连接时,一切都正常,但当第二个玩家加入时,游戏只会添加另一个玩家预置,第一个玩家也会控制该预置。 我试着用一个简单的立方体替换播放器,一切都很好。 播放器和立方体都有光子变换视图和光子视图脚本。
如果能得到任何帮助,我将不胜感激。

这是一个常见的问题,从双关语开始。您可能会使用网络同步设置一个播放器预置,并为每个播放器实例化它。实例上的所有脚本都将作用于本地输入,这就是您现在看到的。 您需要预置的两个变体,用于本地和远程表示。因为总是配置两个预置是不切实际的,所以您可以构建一个将自身初始化(在唤醒或启动时)为本地或远程的预置。脚本应该检查对象的PhotonView是否为.isMine。 这可以按组件(在每个不同的脚本中)完成,也可以添加一个组件来启用/禁用游戏对象上的脚本,具体取决于isMine

例如