问题描述
我正在制作的游戏的主机可以通过服务器生成对象,游戏中的每个人都可以看到,包括主机。然而,当客户端尝试生成一个对象时,该对象仅在客户端屏幕上可见,即使两个玩家的生成功能完全相同。代码如下:
public GameObject Bullet;
public GameObject Cube;
public NetworkIdentity netid;
[Command]
public void Cmdspawn(Vector3 Pos,string name,Quaternion Rot)
{
Debug.Log(name + " " + "spawned");
GameObject go = (GameObject)Instantiate(Resources.Load<GameObject>("bullet"),Pos,Rot);
NetworkServer.SpawnWithClientAuthority(go,netid.connectionToClient);
}
[Command]
public void BulletSpawn(Vector3 Pos,Quaternion Rot)
{
Debug.Log("Bullet Spawned");
GameObject go = Instantiate(Bullet,netid.connectionToClient);
}
[Command]
public void CubeSpawn(Vector3 Pos,Quaternion Rot)
{
Debug.Log("Actual Cube Spawned");
GameObject go = Instantiate(Cube,netid.connectionToClient);
}
我尝试在每个对象的网络标识上选中和取消选中 localplayerauthority 和 serveronly 框,但都无济于事。我不知道为什么会这样……有人可以帮忙吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)