// Drag the selected object in screenspace private void Drag(Vector3 cursorPosition) { Vector3 projectedCursorPosition = new Vector3(cursorPosition.x, cursorPosition.y, _dragDepth); Vector3 cursorWorldPosition = _camera.GetComponent <Camera>().ScreenToWorldPoint(projectedCursorPosition); cursorWorldPosition += _dragOffset; _ikTarget.position = cursorWorldPosition; IKSolver.Evaluate(_ikHierarchy, _ikTarget); }