Unity:多人游戏中的个人相机

时间:2013-06-17 14:56:46

标签: unity3d multiplayer

我现在已经在团结中工作了一段时间,并且从this教程开始,已经有了基本的多人游戏设置。但是,我想添加更多的东西,其中一个是跟随每个玩家的相机。我已经看了这个,甚至发现了该教程的创建者的评论。所以我按照他的解释,并有这个代码:

function spawnPlayer(){
    var player:GameObject=Network.Instantiate(playerPrefab,spawnObject.position,Quaternion.identity,0);
    Destroy(Camera.main);
    if(player.networkView.isMine){
       var playercam:Transform=player.transform.find("Camera");
       playercam.tag="MainCamera";
    }
}

我忘了提一下,玩家对象有一个相机,它被选为'playerPrefab'游戏对象。

这种作品,但不是真的。当我启动服务器时,相机跟着你很好。但是,当我打开另一个文件并加入该主机时,它开始变得奇怪了我。奇怪的是,我的意思是当我移动服务器游戏时,相机跟随客户端游戏上的服务器播放器,并且当移动客户端游戏时,相机跟随服务器游戏上的客户端。对我来说这毫无意义。

我很感激任何人对这个问题的看法,或者如何修复它。感谢

1 个答案:

答案 0 :(得分:2)

您的代码不完整:由于您在预制件中安装了相机,因此必须继续if(player.networkView.isMine)添加else子句以销毁相机,以防您刚刚生成遥控器的图像播放器。