为什么相机不像玩家那样改变位置?

时间:2017-05-16 20:49:06

标签: c# unity3d unity5

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Teleport : MonoBehaviour {

    public GameObject player;
    public Camera mainCamera;
    public Camera firstCam;
    public Camera camera;
    private List<GameObject> TeleportBooths;

    private void Start()
    {
        InstantiateObjects gos = GetComponent<InstantiateObjects>();

        TeleportBooths = new List<GameObject>();
        TeleportBooths = gos.PrefabsList();
        firstCam.enabled = false;
        mainCamera.enabled = false;
        camera.enabled = true;
        player.transform.position = TeleportBooths[0].transform.position;
        camera.transform.position = TeleportBooths[0].transform.position;
        for (int i = 0; i < TeleportBooths.Count; i++)
        {
            TeleportBooths[i].AddComponent<TeleportationsCore>();
        }
    }
}

我在层次结构中有3个摄像头。 其他地方的每一个位置。 我现在添加的最新相机是相机。 在脚本中我希望它位于玩家所在的同一个位置。 所以首先我尝试在脚本中只使用一个Camera变量。然后在开始时做了:

Camera.main.enabled = false;
camera.Enabled = true;
camera.transform.position = TeleportBooths[0].transform.position;

但它在运行游戏时不断显示主摄像机视图,而不是摄像机视图。在场景视图中,我可以看到摄像机现在位于玩家所在的位置,但它会一直显示主摄像机视图。

所以我为主摄像头和firstCamera添加了变量,并将它们设置为启用false,但它显示主摄像头而不是摄像头。

0 个答案:

没有答案