Beispiel #1
0
        private void LateUpdate()
        {
            float deltaX = InputController._GetAxis("Mouse X");
            float deltaY = InputController._GetAxis("Mouse Y");

            deltaX = deltaX * XSpeed;
            deltaY = deltaY * YSpeed;

            m_x += deltaX;
            m_y -= deltaY;
            m_y  = Mathf.Clamp(m_y % 360, YMinLimit, YMaxLimit);

            Zoom();
        }
Beispiel #2
0
        public virtual void Zoom()
        {
            Quaternion rotation = Quaternion.Euler(m_y, m_x, 0);

            transform.rotation = rotation;

            float mwheel = InputController._GetAxis("Mouse ScrollWheel");

            if (m_camera.orthographic)
            {
                m_camera.orthographicSize -= mwheel * m_camera.orthographicSize;
                if (m_camera.orthographicSize < 0.01f)
                {
                    m_camera.orthographicSize = 0.01f;
                }
            }

            Distance = Mathf.Clamp(Distance - mwheel * Mathf.Max(1.0f, Distance), DistanceMin, DistanceMax);
            Vector3 negDistance = new Vector3(0.0f, 0.0f, -Distance);
            Vector3 position    = rotation * negDistance + Target.position;

            transform.position = position;
        }