1 #region MonoBehavior 事件响应 当鼠标位于这个collider之上时候,会在每一帧调用这个方法 2 3 /// <summary> 4 /// 当鼠标点击到GUIElement(GUI元素)或Collider(碰撞器)上面被调用(只调用一次) 5 /// </summary> 6 public void OnMouseEnter() 7 { 8 Debug.Log("OnMouseEnter"); 9 } 10 11 /// <summary> 12 /// 当鼠标悬浮在 GUI元素 或Collider碰撞器上,滞留在选定区域上时调用,反复调用 13 /// 当鼠标经过 14 /// </summary> 15 public void OnMouseOver() 16 { 17 Debug.Log("OnMouseOver"); 18 } 19 20 21 /// <summary> 22 /// 当鼠标按下 23 /// </summary> 24 public void OnMouseDown() 25 { 26 Debug.Log("OnMouseDown"); 27 } 28 29 30 /// <summary> 31 /// 当鼠标拖动 32 /// </summary> 33 public void OnMouseDrag() 34 { 35 Debug.Log("OnMouseDrag"); 36 this.transform.position = new Vector3( 37 Input.mousePosition.x, 38 Input.mousePosition.y, 39 this.transform.position.z); 40 } 41 42 43 /// <summary> 44 /// 当鼠标退出 45 /// </summary> 46 public void OnMouseExit() 47 { 48 Debug.Log("OnMouseExit"); 49 } 50 51 52 /// <summary> 53 /// 当鼠标抬起 54 /// </summary> 55 public void OnMouseUp() 56 { 57 Debug.Log("OnMouseUp"); 58 } 59 60 61 /// <summary> 62 /// 只有当鼠标在同一个GUIElement 或 Collider按下,再释放时调用 63 /// </summary> 64 public void OnMouseUpAsButton() 65 { 66 Debug.Log("OnMouseUpAsButton"); 67 } 68 /*** 69 OnMouseUpAsButton() 和 OnMouseUp区别: 70 * 如果在一个物体上点击并抬起,结果是一样的 71 * 如果在一个物体上点击,然后在其他地方抬起,OnMouseUpAsButton没有效果,而OnMouseUp依然会触发一次函数 72 */ 73 74 75 /// <summary> 76 /// 在UI环境中点击事件 77 /// </summary> 78 void OnClick() 79 { 80 Debug.Log("OnClick"); 81 } 82 83 84 85 86 87 #endregion