// Use this for initialization
    void Start()
    {
        // Se obtienen las referencias a los componentes del objeto y la cámara.
        objUserMotionController = objUser.GetComponent<MotionController>();
        objUserTransform = objUser.GetComponent<Transform>();
        thisTransform = transform;
        thisCamera = camera;

        // Se inicializa la perspectiva de la cámara
        cameraPersp = CameraPersp.cenital;
    }
    // Use this for initialization
    void Start()
    {
        // Se obtienen las referencias a los componentes del objeto y la cámara.
        thisTransform = transform;
        thisCamera = camera;
        userTransform = objUser.transform;
        floorTransform = objFloor.transform;

        // Se inicializa la perspectiva anterior de la cámara
        oldCameraPersp = CameraPersp.none;

        // Se obtienen los límites tanto del jugador como del suelo.
        boundsUser = userTransform.renderer.bounds;
        boundsFloor = floorTransform.renderer.bounds;
    }
    // Update is called once per frame
    void Update()
    {
        switch (_cameraPersp)
        {
        case CameraPersp.cenital:
            if (oldCameraPersp != CameraPersp.cenital)  // Si el frame anterior la cámara era cenital
            {
                thisCamera.orthographic = true;
                thisTransform.position = floorTransform.position + floorTransform.up * fHeight;
                thisTransform.LookAt( floorTransform);
                oldCameraPersp = CameraPersp.cenital;
            }
            break;

        case CameraPersp.first:
            thisCamera.orthographic = false;
            // Se situa la cámara en primera persona. Se posiciona en el lugar del extremo de la pistola.
            thisTransform.position = userTransform.position + userTransform.forward * boundsUser.extents.z;
            thisTransform.rotation = userTransform.rotation;
            oldCameraPersp = CameraPersp.first;
            break;

        case CameraPersp.iso:
            if (oldCameraPersp != CameraPersp.iso)  // Si el frame anterior la cámara era isométrica
            {
                thisCamera.orthographic = true;
                thisTransform.position = floorTransform.position + floorTransform.forward * boundsFloor.extents.z +
                                         floorTransform.right * boundsFloor.extents.x + floorTransform.up * fHeight;
                thisTransform.LookAt( floorTransform);
                oldCameraPersp = CameraPersp.iso;
            }
            break;

        default:
            break;
        }
    }