Ich baute ein Spiel mit Survival Shooter Asset der Einheit. Das Problem ich Gesicht ist, dass die Kamera nur den Host-Player im Host-Gerät folgt, während keiner der Spieler im anderen Client gefolgt wird Geräte.Unity Multiplayer: Kamera Nur nach einem Spieler
Kamera Folgen
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' kann nicht gut verhalten, wenn es mehrere Objekte sind mit diesem Tag zu teilen. Ich würde empfehlen, dass Sie eine andere Möglichkeit zum Verknüpfen der Kamera- und Player-Objekte finden. – rutter