UnityMol  0.9.6-875
UnityMol viewer / In developement
DraggableBillboard.cs
Go to the documentation of this file.
1 using UnityEngine;
2 using System.Collections;
3 
4 //
5 // http://answers.unity3d.com/questions/12322/drag-gameobject-with-mouse.html
6 //
7 
8 public class DraggableBillboard : MonoBehaviour
9 {
10  private Vector3 screenPoint;
11  private Vector3 offset;
12 
13  void OnMouseDown()
14  {
15  maxCamera.cameraStop = true;
16  screenPoint = Camera.main.WorldToScreenPoint(gameObject.transform.position);
17 
18  offset = gameObject.transform.position - Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenPoint.z));
19  }
20 
21  void OnMouseDrag()
22  {
23  maxCamera.cameraStop = true;
24  Vector3 curScreenPoint = new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenPoint.z);
25 
26  Vector3 curPosition = Camera.main.ScreenToWorldPoint(curScreenPoint) + offset;
27  transform.position = curPosition;
28  }
29 
30  void OnMouseUp()
31  {
32  maxCamera.cameraStop = false;
33  }
34 
35 }
static bool cameraStop
Definition: maxCamera.cs:88