Unity3D各种获取鼠标各种位置的小方法

  1. Vector3 screenPosition; //将物体从世界坐标转换为屏幕坐标
  2.  
    Vector3 mousePositionOnScreen; //获取到点击屏幕的屏幕坐标
  3.  
    Vector3 mousePositionInWorld; //将点击屏幕的屏幕坐标转换为世界坐标
  4.  
    void Update()
  5.  
    {
  6.  
    MouseFollow();
  7.  
    }
  8.  
    void MouseFollow()
  9.  
    {
  10.  
    //获取鼠标在相机中(世界中)的位置,转换为屏幕坐标;
  11.  
    screenPosition = Camera.main.WorldToScreenPoint(transform.position);
  12.  
    //获取鼠标在场景中坐标
  13.  
    mousePositionOnScreen = Input.mousePosition;
  14.  
    //让场景中的Z=鼠标坐标的Z
  15.  
    mousePositionOnScreen.z = screenPosition.z;
  16.  
    //将相机中的坐标转化为世界坐标
  17.  
    mousePositionInWorld = Camera.main.ScreenToWorldPoint(mousePositionOnScreen);
  18.  
    //物体跟随鼠标移动
  19.  
    //transform.position = mousePositionInWorld;
  20.  
    //物体跟随鼠标X轴移动
  21.  
    transform.position = new Vector3(mousePositionInWorld.x,transform.position.y,transform.position.z);
  22.  
    }

猜你喜欢

转载自www.cnblogs.com/wayne1984/p/11644207.html