学习啦>学习电脑>电脑硬件知识>键盘鼠标>

Unity3d鼠标拖拽物体

时间: 沈迪豪908 分享

  爱学习的小伙伴们,可能都有了解过Unity3d ,但是你知道Unity3d 怎么使用鼠标拖拽物体吗?

  Unity3d使用鼠标拖拽物体的具体代码

  //Drag object using mouse

  //editor by faye euler

  //add script components to the collider Object with need to be draging

  //將代碼附加到要被拖拽的collider物體上

  function Update () {

  }

  var screenSpace;

  var offset;

  function OnMouseDown(){

  //translate the cubes position from the world to Screen Point

  //轉換對象位置,從世界點到屏幕座標

  screenSpace = Camera.main.WorldToScreenPoint(transform.position);

  //calculate any difference between the cubes world position and the mouses Screen position converted to a worldpoint

  //在對象世界座標與鼠標屏幕座標計算任何不同,轉換到世界點上

  offset = transform.position - Camera.main.ScreenToWorldPoint(Vector3(Input.mousePosition.x,Input.mousePosition.y, screenSpace.z));

  }

  /*

  OnMouseDrag is called when the user has clicked on a GUIElement or Collider and is still holding down the mouse.

  OnMouseDrag is called every frame while the mouse is down.

  */

  function OnMouseDrag () {

  //keep track of the mouse position

  //保持鼠標位置追蹤

  var curScreenSpace = Vector3(Input.mousePosition.x, Input.mousePosition.y, screenSpace.z);

  //convert the screen mouse position to world point and adjust with offset

  //轉換屏幕鼠標位置到世界點,以及通過偏移調整

  var curPosition = Camera.main.ScreenToWorldPoint(curScreenSpace) + offset;

  //update the position of the object in the world

  //更新物體在世界的位置

  transform.position = curPosition;

  }

猜你喜欢:

1.2016程序员跳槽全攻略

2.2016有什么好玩的手机游戏

3.创业,我们的故事

4.如何从零开始创业

5.90后创业心得

1997108