Ray Over Mouse

Why does unity put my ray over the mouse position instead of it being exactly on it?

var mouseWorldPosition : Vector3 = Camera.main.ScreenToWorldPoint(Vector3(Input.mousePosition.x,Input.mousePosition.y, 15));
Debug.DrawRay(transform.position, mouseWorldPosition, Color.red);

The ray is always a couple of pixels above where the actual mouse is. I don’t understand why it’s this way can someone help me out?

Thanks.

Use Debug.DrawLine if you want a line from one point to another.