1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | using UnityEngine; public class MouseDragFollow : MonoBehaviour { private bool isDragging = false; private Camera mainCam; private Vector3 originalPosition; void Start() { mainCam = Camera.main; originalPosition = transform.position; } void Update() { if (Input.GetMouseButtonDown(0)) // 滑鼠左鍵按下 { isDragging = true; } if (Input.GetMouseButtonUp(0)) // 滑鼠左鍵放開 { isDragging = false; transform.position = originalPosition; // 回到原始位置 } if (isDragging) { Vector3 mousePos = Input.mousePosition; mousePos.z = 0f - mainCam.transform.position.z; Vector3 worldPos = mainCam.ScreenToWorldPoint(mousePos); transform.position = new Vector3(worldPos.x, worldPos.y, originalPosition.z); } } } |
Direct link: https://paste.plurk.com/show/HuizuFbdZZWQLCVTM4Uk