Esempio n. 1
0
    private Vector3 CalculateAndUpdateCameraPosition()
    {
        var dir = transform.forward * -CAMERA_DISTANCE;
        var pos = transform.position + dir;

        pos.y += cameraUpAndDown;

        if (characterController.IsCrouched())
        {
            pos.y -= CROUCH_CAMERA_DOWN;

            if (cameraOrbitPoint != null)
            {
                cameraOrbitPoint.localPosition = Vector3.Lerp(cameraOrbitPoint.localPosition, neckCrouchPosition, Time.deltaTime * 10f);
            }
        }
        else if (cameraOrbitPoint != null)
        {
            cameraOrbitPoint.localPosition = Vector3.Lerp(cameraOrbitPoint.localPosition, neckStandPosition, Time.deltaTime * 10f);
        }

        return(pos);
    }