Камера единства следит за катящимся мячом. Нет вращения и нет перемещения по оси Z на камере

Итак, я создаю 3D-бегун, и у меня много проблем с тем, чтобы камера следовала за мячом. Я был в Google несколько часов и не могу найти ничего, что не устарело или не заполняет то, что мне нужно. Я хочу камеру, которая следует за моим мячом, но идет прямо по оси X. Когда есть лестница, камера должна следовать по оси Y.

Я просто не хочу, чтобы моя камера вращалась (так как мой объект - катящийся шар) и двигалась по оси Z.

var myPos : Vector3;
var myPlay : Transform;

function Update()
{
transform.position = myPlay.position + myPos;
}

Это то, что у меня уже есть. Он не вращается, но следует по оси Z. Я не хочу этого

http://prntscr.com/9pmypz Вот как это выглядит в Инспекторе.

2 ответа

Я не могу комментировать ответ @HDL_CinC_Dragon из-за своей низкой репутации, но я хотел добавить, что использование модификатора публичного доступа - очень плохая привычка. Вместо этого вы должны использовать модификатор частного доступа с атрибутом SerializeField в поле, например:

public class CameraController : MonoBehaviour
    {
        [SerializeField]
        private GameObject player;

        private Vector3 offset;

Согласно учебному пособию по Unity3D Roll-A-Ball:

using UnityEngine;
using System.Collections;

public class CameraController : MonoBehaviour
    {
        public GameObject player;

        private Vector3 offset;

    void Start ()
        {
            offset = transform.position - player.transform.position;
        }

    void LateUpdate ()
        {
            transform.position = player.transform.position + offset;
        }
    }
Другие вопросы по тегам