Я построил игру с использованием средства спасения Shvuer. Единственное, с чем я сталкиваюсь, заключается в том, что камера следует только за игроком хоста на хост-устройстве, в то время как ни один из игроков не соблюдается в другом клиенте устройства.Unity Multiplayer: Камера Только после одного игрока
камеры Follow
public class CameraFollow : MonoBehaviour
{
Transform target; // The position that that camera will be following.
public float smoothing = 5f; // The speed with which the camera will be following.
Vector3 offset; // The initial offset from the target.
void Start()
{
target = GameObject.FindGameObjectWithTag ("Player").transform;
offset = transform.position - target.position;
}
void FixedUpdate()
{
// Create a postion the camera is aiming for based on the offset from the target.
Vector3 targetCamPos = target.position + offset;
// Smoothly interpolate between the camera's current position and it's target position.
transform.position = Vector3.Lerp (transform.position, targetCamPos, smoothing * Time.deltaTime);
}
}
LocalPlayerSetup Script
public class LocalPlayerSetup : NetworkBehaviour
{
void Start()
{
GameObject.FindGameObjectWithTag ("EnemyManager").SetActiveRecursively (true);
if (isLocalPlayer) {
GameObject.FindGameObjectWithTag ("MainCamera").GetComponent<CameraFollow>().enabled = true;
GetComponent<PlayerMovement>().enabled = true;
GetComponentInChildren<PlayerShooting>().enabled = true;
}
}
'FindGameObjectWithTag' не может вести себя хорошо, когда есть несколько объектов, разделяющие этот тег. Я бы рекомендовал вам найти другой способ связать объекты камеры и игрока. – rutter