РЕДАКТИРОВАТЬ: В дополнение к ответу ниже, эти ссылки помогли решить проблему ...
https://forum.unity.com/threads/ui-buttons-to-spawn-units-buildings.356813/ https://forum.unity.com/threads/network-spawned-objects-not-showing-up-at-other-clients.501724/
Я создаю экземпляр объекта и являюсь его родителем,выстрел с космического корабля, который должен отображаться на всех экранах игроков.Это работает только тогда, когда хозяин делает выстрел.Когда клиент делает выстрел, только этот клиент может видеть выстрел.
Для идентификации сети для корабля (родителя) устанавливаются полномочия локального игрока.Для снимка не выбран ни локальный, ни сервер.
Это код, который создает снимок ...
public class fire : NetworkBehaviour{
public GameObject shockwave;
public GameObject ship;
private GameObject eb;
private GameObject go;
private int energy = 4;
private float targetTime = 10.0f;
public override void OnStartLocalPlayer()
{
base.OnStartLocalPlayer();
gameObject.name = "Local";
}
public void createshockwave()
{
ship = GameObject.Find("Local");
Debug.Log(ship);
if (!ship.GetComponent<NetworkIdentity>().isLocalPlayer)
{
return;
}
go = Instantiate(shockwave, ship.transform.position, ship.transform.rotation);
go.transform.parent = ship.transform;
NetworkServer.Spawn(go);
}
}
Любые подсказки относительно того, что может вызвать отображение объекта надругие экраны при съемке хостом, а не клиентом?