Unity3D - 如何获取客户端加入时生成的对象?

时间:2017-04-12 21:15:23

标签: c# networking unity3d

我正在制作一个简单的网络游戏,但我遇到了问题。 Basilicaty,当任何客户端加入游戏时,会产生一个正方形(通过NetworkManager组件),客户端只能控制一个正方形。我的问题是:如何从服务器视图中获取带有方块的gameObject?我的意思是我想将方块的颜色更改为例如蓝色,因此每个连接的客户端都将该特定方块视为蓝色方块。有什么想法吗? ; //(带有正方形的游戏对象具有NetworkIdentity组件)

我试过了:

var a = NetworkServer.connections[NetworkServer.connections.Count() - 1].clientOwnedObjects; GameObject go = NetworkServer.FindLocalObject(a.ElementAt(previousPositions.Length));

但是我得到了一个异常,它说GameObject go是一个空的

1 个答案:

答案 0 :(得分:0)

对于像颜色这样的简单变体,你可以用脚本来做,只是服务器设置的对象上的属性。 如果您需要更复杂的东西,整个资产包,请尝试查看以下两个选项:

WWW.LoadFromCacheOrDownload

UnityWebRequest