如何创建与Mario类似但垂直的摄影机?

时间:2019-04-13 01:16:33

标签: c# unity3d camera 2d

我正在尝试为我的垂直平台游戏编写相机跟踪脚本,我查看了许多教程,发现一些可以达到一定程度的工作,但并不是我真正需要的。

我本质上想创建与Mario游戏相同的逻辑,以决定相机必须跟随玩家而何时不跟随玩家,但在Y轴上,下面是Mario游戏的示例:

下面是我尝试过的操作,我没有收到任何错误,但相机仍然保持静止(它什么也没做),并且cameraLeadingUp和CameraLeadingDown在检查器中从未变为真。

void Start()
    {
        camHeight = Camera.main.orthographicSize;

        camWidth = camHeight * Camera.main.aspect;

        cameraLeadingUp = true;

        cameraLeadingDown = false;
    }

    void FixedUpdate ()
    {

        Vector3 temp = transform.position;

        if (cameraLeadingUp)
        {
            if (playerLocation.position.y < camHeight / 0.25f)
            {
                cameraLeadingDown = true;
                cameraLeadingUp = false;
            }
        }
        else if (cameraLeadingDown)
        {
            if (playerLocation.position.y > camHeight / 0.25f)
            {
                cameraLeadingUp = true;
                cameraLeadingDown = false;
            }
        }

        if (cameraLeadingDown)
        {
            temp.y = Mathf.Min(camHeight / 0.90f, playerLocation.position.y);
        }

        if (cameraLeadingUp)
        {
            temp.y = Mathf.Max(camHeight / 0.90f, playerLocation.position.y);
        }

        transform.position = temp;
    }

0 个答案:

没有答案