Unity功能记录(十五) ------ Input实现手势控制物体(后续再更新)

版权声明:个人原创,转载请注明出处 https://blog.csdn.net/dengshunhao/article/details/86584058

一.拖拽旋转

实现方式一 :

 Vector3 mousePos;
    IEnumerator OnMouseDown()
    {
        mousePos = Input.mousePosition;

        while (Input.GetMouseButton(0))
        {
            Vector3 offset = mousePos - Input.mousePosition;
            //左右旋转
            transform.Rotate(Vector3.up * offset.x/10, Space.Self);
            //上下旋转
            transform.Rotate(Vector3.right * offset.y/10, Space.Self);

            mousePos = Input.mousePosition;
            yield return null;
        }
    }

实现方式二:


    float axisX;
    float axisY; 
void OnMouseDrag()     //鼠标拖拽时的操作// 
    {
        axisX = -Input.GetAxis("Mouse X");
        //获得鼠标增量// 
        axisY = -Input.GetAxis("Mouse Y");
        //左右旋转
        transform.Rotate(Vector3.up * axisX * 10, Space.Self);
        //上下旋转
        transform.Rotate(Vector3.right * axisY * 10, Space.Self);
    }

unity 鼠标拖拽物体实现任意角度自旋转

Unity3D 鼠标拖动和旋转物体以及鼠标拖动图片

猜你喜欢

转载自blog.csdn.net/dengshunhao/article/details/86584058