Ejemplo n.º 1
0
        // Update is called once per frame
        void Update()
        {
            Vector3 playerPosition = PlayerController.Instance.playerObject.transform.position;
            Vector3 centerPosition = VectorUtilities.GetFlatVector3AtHeight(EnvironmentController.Instance.levelCenter.position, playerPosition.y);

            SetCameraPosition(playerPosition, centerPosition);
            SetCameraRotation(playerPosition, centerPosition);
        }
Ejemplo n.º 2
0
        private void ConstrainDistanceFromLevelCenter()
        {
            Vector3 flatLevelCenterPosition = VectorUtilities.GetFlatVector3AtHeight(EnvironmentController.Instance.levelCenter.position, transform.position.y);
            Vector3 radiusVector            = transform.position - flatLevelCenterPosition;


            Vector3 translationVector = flatLevelCenterPosition + Vector3.Normalize(radiusVector) * EnvironmentController.Instance.distanceFromLevelCenter;

            transform.position = new Vector3(translationVector.x, transform.position.y, translationVector.z);
        }